Системное программное обеспечение. Лекция 2

1.

СИСТЕМНОЕ
ПРОГРАММНОЕ
ОБЕСПЕЧЕНИЕ

2.

Назначение операционной системы
Операционная система – это комплекс взаимосвязанных
программ, который действует как интерфейс между приложениями
и пользователями с одной стороны, и аппаратурой компьютера с
другой стороны. В соответствии с этим определением,
операционная система выполняет две основные функции:
■ предоставление пользователю или программисту вместо
реальной
аппаратуры
расширенной
виртуальной
машины (которую иногда называют операционная среда), с
которой удобно работать и которую легче программировать;
■ повышение эффективности использования компьютера путём
рационального управления его ресурсами в соответствии с
некоторыми критериями.

3.

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

4.

Операционная система как менеджер ресурсов
Основные ресурсы компьютера:
■ процессорное время,
■ основная память,
■ всевозможные внешние устройства;
Также к ресурсам можно отнести таймеры и
некоторые процедуры операционной
системы. Ресурсы эти распределяются между
процессами.

5.

Архитектура операционной системы
Функции современной многозадачной многопользовательской операционной
системы:
■ управление процессами,
■ управление памятью,
■ управление файлами и внешними устройствами,
■ защита данных и администрирование,
■ интерфейс прикладного программирования,
■ пользовательский интерфейс.

6.

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

7.

Монолитная операционная система

8.

Микроядерная операционная система

9.

ОСОБЕННОСТИ
АРХИТЕКТУРЫ UNIX

10.

Два неотъемлемых характеристических понятия
Стандартизация
Несмотря на многообразие версий UNIX, основой всего семейства
являются принципиально одинаковая архитектура и ряд
стандартных интерфейсов (в UNIX стандартизовано почти всё – от
расположения системных папок и файлов, до интерфейса системных
вызовов и списка драйверов базовых устройств).
Пример пcевдопараллелизма

11.

Два неотъемлемых характеристических понятия
Многозадачность
В системе UNIX, причем их число может одновременно выполняться множество
процессов (задач), логически не ограничивается, и множество частей одной
программы может одновременно находиться в системе благодаря
специальному механизму управления памятью, каждый процесс развивается в
своем защищенном адресном пространстве, что гарантирует безопасность и
независимость от других процессов. Различные системные операции позволяют
процессам порождать новые процессы, завершают процессы, синхронизируют
выполнение этапов процесса и управляют реакцией на наступление различных
событий.
Пример пcевдопараллелизма

12.

Два кита UNIX: файлы и процессы
• Существует два основных объекта
операционной системы UNIX, с которыми
приходиться работать пользователю –
файлы и процессы.
• Эти объекты сильно связаны друг с
другом, и в целом организация работы с
ними как раз и определяет архитектуру
операционной системы.

13.

Два кита UNIX: файлы и процессы
• Все данные пользователя хранятся в
файлах;
• Доступ к периферийным устройствам
осуществляется посредством чтения и
записи специальных файлов;
• Во время выполнения программы,
операционная система считывает
исполняемый код из файла в память и
передает ему управление.

14.

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

15.

Беглый взгляд на архитектуру UNIX
• Самый общий взгляд на архитектуру UNIX позволяет увидеть
двухуровневую модель системы, состоящую из пользовательской и
системной части (ядра).
• Ядро непосредственно взаимодействует с аппаратной частью компьютера,
изолируя прикладные программы (процессы в пользовательской части
операционной системы) от особенностей ее архитектуры.
• Ядро имеет набор услуг, предоставляемых прикладным программам
посредством системных вызовов.

16.

Беглый взгляд на архитектуру UNIX
Таким образом, в системе можно выделить два уровня
привилегий:
• уровень системы (привилегии специального
пользователя root);
• уровень пользователя (привилегии всех остальных
пользователей).
Важной частью системных программ являются демоны.
Демон – это процесс, выполняющий определенную
функцию в системе, который запускается при старте
системы и не связан ни с одним пользовательским
терминалом. Демоны предоставляют пользователям
определенные сервисы, примерами которых могут
служить системный журнал, веб-сервер и т.п.. Аналогом
демонов в операционной системе Windows NT и более
поздних версиях являются системные службы.
English     Русский Правила