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

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

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

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

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

■ взаимодействие задач между собой (механизмы сигналов, семафорные при­
митивы, очереди, конвейеры, почтовые ящики);

 

■ вызов удаленных процедур (Remote Procedure Call, RPC).
- Управление памятью:

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

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

 

■ изменение параметров блока памяти (например, память может быть забло­
кирована процессом либо предоставлена в общий доступ);

■ отображение файлов на память (имеется не во всех системах).


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

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

■ запрос на управление виртуальными устройствами (напомним, что управ­
ление вводом-выводом является привилегированной функцией самой опе­
рационной системы, и никакая из пользовательских задач не должна иметь
возможности непосредственно управлять устройствами);

■ файловые операции (запросы к системе управления файлами на создание,
изменение и удаление данных, организованных в файлы).

Здесь мы перечислили основные наборы функций, которые выполняются опера­ционной системой по соответствующим запросам от задач. Что касается интерфейса пользователя с операционной системой, то он реализуется с помощью специальных программных модулей, которые принимают его команды на соответствующем язы­ке (возможно, с использованием графического интерфейса) и транслируют их в обычные вызовы в соответствии с основным интерфейсом системы. Обычно эти модули называют интерпретатором команд. Так, например, функции такого ин­терпретатора в MS DOS выполняет модуль COMMAND.COM. Получив от пользовате­ля команду, такой модуль после лексического и синтаксического анализа либо сам выполняет действие, либо, что случается чаще, обращается к другим модулям опе­рационной системы, используя механизм API. Надо заметить, что в последние годы большую популярность получили графические интерфейсы (Graphical User In­terface, GUI), в которых задействованы соответствующие манипуляторы типа мышь или трекбол (track-ball)'. Указание курсором на объект и щелчок или двойной щелчок на соответствующей кнопке мыши приводит к каким-либо действиям — запуску программы, ассоциированной с объектом, выбору и/или активизации меню и т. д. Можно сказать, что такая интерфейсная подсистема транслирует «коман­ды» пользователя в обращения к операционной системе.

Поясним также, что управление GUI является частным случаем задачи управле­ния вводом-выводом и не относится к функциям ядра операционной системы, хотя в ряде случаев разработчики операционной системы относят функции GUI к ос­новному системному интерфейсу API.

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

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

1 Трекбол — специальный шарик, который в переносных компьютерах (NoteBook) размещается ря­дом с клавиатурой, прокручивается пальцами и служит для перемещения указателя мыши. В насто­ящее время гораздо чаще используют устройство, чувствительное к касанию (touchpad). С помощью такого устройства пользователь управляет указателем мыши, перемещая палец по специальной по­верхности.


298______________________________ Глава 9. Архитектура операционных систем

Так, например, в операционной системе MS DOS, которая разрабатывалась для
однозадачного режима (поскольку процессор i80x86 не поддерживал мультипро­
граммирование), использовался механизм программных прерываний. При этом
основной набор функций API был доступен через точку входа обработчика int 21 h.

В более сложных системах имеется не одна точка входа, а множество — по количе­ству функций API. Так, в большинстве операционных систем используется метод вызова подпрограмм. В этом случае вызов сначала передается в модуль API, на­пример в библиотеку времени выполнения (Run Time Library, RTL)', который пе­ренаправляет его соответствующим обработчикам программных прерываний, вхо­дящим в состав операционной системы. Использование механизма прерываний вызвано, главным образом, тем, что при этом процессор переводится в режим су­первизора.








Дата добавления: 2016-09-20; просмотров: 3252;


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

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.