русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2014-11-28; просмотров: 1673; Нарушение авторских прав


Напомним, что операционная система всегда выступает как интерфейс между ап­паратурой компьютера и пользователем с его задачами. Под интерфейсами опера­ционных систем здесь и далее следует понимать специальные интерфейсы систем­ного и прикладного программирования (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)', который пе­ренаправляет его соответствующим обработчикам программных прерываний, вхо­дящим в состав операционной системы. Использование механизма прерываний вызвано, главным образом, тем, что при этом процессор переводится в режим су­первизора.



<== предыдущая лекция | следующая лекция ==>
Сихронизация процессов и задач | Реализация функций API на уровне модулей операционной системы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.074 сек.