Интерфейс прикладного программирования




Интерфейсы операционных систем

Пользовательский интерфейс

Интерфейс прикладного программирования

POSIX

Интерфейсы операционных систем

Операционная система всегда выступает как интерфейс между аппаратурой компьютера и пользователем с его задачами. Под интерфейсами операционных систем следует понимать специальные интерфейсы системного и прикладного программирования (API), предназначенные для выполнения перечисленных ниже задач.

Ø Управление процессами, которое включает в себя следующий набор основных функций:

· запуск, приостанов и снятие задачи с выполнения;

· задание или изменение приоритета задачи;

· взаимодействие задач между собой;

· вызов удаленных процедур.

Ø Управление памятью:

· запрос на выделение блока памяти;

· освобождение памяти;

· изменение параметров блока памяти;

· отображение файлов на память.

Ø Управление вводом – выводом:

· запрос на управление виртуальными устройствами;

· файловые операции.

Здесь перечислены основные наборы функций, которые выполняются операционной системой по соответствующим запросам от задач. Интерфейс пользователя с операционной системой реализуется с помощью специальных программных модулей, которые принимают его команды на соответствующем языке (возможно, с использованием графического интерфейса) и транслируют их в обычные вызовы в соответствии с основным интерфейсом системы. Например, функции такого интерпретатора в MS DOS выполняет модуль command.com. получив от пользователя команду, такой модуль после лексического и синтаксического анализа либо сам выполняет действие, либо, что случается чаще, обращается к другим модулям ОС, используя механизм API. В последние годы большую популярность получили графические интерфейсы (Graphical User Interface, GUI), в которых задействованы манипуляторы типа мышь.

Обращение к операционной системе в соответствии с имеющимся интерфейсом API могут осуществляться как посредством вызова подпрограммы с передачей ей необходимых параметров, так и через механизм программных прерываний. Выбор метода реализации вызовов функций API должен определяться архитектурой платформы.

Пользовательский интерфейс

Операционная система должна обеспечивать удобный интерфейс не только для прикладных программ, но и для человека, работающего за терминалом. Этот человек может быть конечным пользователем, администратором ОС или программистом.

В ранних операционных системах пакетного режима функции пользовательского интерфейса были сведены к минимуму и не требовали наличия терминала. Команды языка управления заданиями набивались на перфокарты, а результаты выводились на печатающее устройство.

Современные ОС поддерживают развитые функции пользовательского интерфейса для интерактивной работы за терминалами двух типов: алфавитно-цифровыми и графическими.

При работе за алфавитно-цифровым терминалом пользователь имеет в своем распоряжении систему команд. Обычно командный язык ОС позволяет запускать и останавливать приложения, выполнять различные операции с файлами и каталогами, получать информацию о состоянии ОС (количество работающих процессов, объем свободного пространства на дисках и т.п.), администрировать систему. Команды могут вводиться не только в интерактивном режиме с терминала, но и считываться из так называемого командного файла, содержащего некоторую последовательность команд. Программный модуль ОС, ответственный за чтение отдельных команд или же последовательности команд из командного файла, иногда называют командным интерпретатором.

Ввод команды может быть упрощен, если операционная система поддерживает графический пользовательский интерфейс. В этом случае пользователь для выполнения нужного действия с помощью мыши выбирает на экране нужный пункт меню или графический символ.

Интерфейс прикладного программирования

Прикладные программисты используют в своих приложениях обращения к ОС когда для выполнения тех или иных действий им требуется особый статус, которым обладает только операционная система. Например, в большинстве современных операционных системах все действия, связанные с управлением аппаратными средствами компьютера, может выполняться только ОС. Помимо этих функций прикладной программист может воспользоваться набором сервисных функций ОС, которые упрощают написание приложений.

Возможности операционной системы доступны прикладному программисту в виде набора функций, называющегося интерфейсом прикладного программирования. От конечного пользователя эти функции скрыты за оболочкой алфавитно-цифрового или графического пользовательского интерфейса.

API содержит несколько сотен функций, которые могут использовать ваши прикладные программы, чтобы выполнять все необходимые операции для успешного взаимодействия с операционной системой. Например, распределение памяти, вывод информации на экран, создание окна и тому подобное. Подмножество функций API под названием GDI (Graphics Device Interface — графический интерфейс устройств) является той частью Windows, которая обеспечивает поддержку графического представления независимо от типа устройства.

Интерфейс прикладного программирования предназначен для использования прикладными программами системных ресурсов компьютера и реализуемых операционной системой разнообразных системных функций. API описывает совокупность функций и процедур, принадлежащих ядру или настройкам операционной системы.

Итак, API – это набор функций, предоставляемых системой программирования разработчику прикладной программы и ориентированных на организацию взаимодействия результирующей прикладной программы с целевой вычислительной системой. Целевая вычислительная система представляет собой совокупность программных и аппаратных средств, в окружении которых выполняется результирующая программа. Сама результирующая программа порождается системой программирования на основании кода исходной программы, созданного разработчиком, а также объектных модулей и библиотек, входящих в состав системы программирования. В принципе, API используется не только прикладными, но и системными программами, как в составе операционной системы, так и в составе системы программирования.

Рассмотрим функции API с точки зрения разработчика прикладной программы.

Функции API позволяют разработчику строить результирующую прикладную программу так, чтобы использовать средства целевой вычислительной системы для выполнения типовых операций. При этом разработчик программы избавлен от необходимости создавать исходный код для выполнения этих операций.

Существуют несколько вариантов реализации API:

q реализация на уровне модулей операционной системы;

q реализация на уровне системы программирования;

q реализация на уровне процедур и функций.

Система программирования в каждом из этих вариантов предоставляет разработчику средства для подключения функций API к исходному коду программы и организации их вызовов. Объектный код функций API подключается к результирующей программе компоновщиком при необходимости.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2018-12-21 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: