Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tema_5_1.rtf
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
4 Мб
Скачать
☆

Системные службы

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

При загрузке операционная система Windows 2000 загружается в память как набор файлов. Основная часть операционной системы, состоящая из ядра и исполняющей системы, храниться в файле ntoskrnl.exe. Уровень HAL представляет собой библиотеку общего доступа, расположенную в отдельном hal.dll. Интерфейс Win32 и интерфейс графических устройств хранятся вместе в третьем файле, win32k.sys. Наконец, загружается множество драйверов устройств. У большинства из них расширение .sys.

Подсистемы окружения

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

Операционной системой Windows 2000 поддерживаются три различных документированных интерфейса прикладного программирования API: Win32, POSIX и OS/2. У каждого из этих интерфейсов есть список библиотек DLL (Dynamic Link Library – динамически подключаемая библиотека) и подсистем окружения заключается в том, чтобы реализовать функциональные возможности опубликованного интерфейса, тем самым, скрывая истинный интерфейс системных вызовов от прикладных программ.

На рисунке 5.4 представлены некоторые ключевые и наиболее важные файлы динамических библиотек. В каталоге \winnt\system32 содержится более 800 отдельных файлов DLL общим объемом в 130 (Win XP 1260 объектов 260 Мб).

Рисунок 5.4 – Файлы динамических библиотек

Aрхитектура процессора Intel определяет 4 уровня привилегий для защиты кода и данных системы от случайного или намеренного изменения со стороны менее привилегированного кода. Такой метод выполнения кода называется моделью защиты Intel. Рассмотрим уровни привилегий:

  1. Уровень приложения;

  2. Уровень DLL(функция ОС);

  3. Системный;

  4. Аппаратного обеспечения

Уровни 1 и 3 объединяются в кольцо 3, а уровни 2 и 4 в кольцо 0 (ОС семейства Windows используют только кольца 0 и 3):

  • Кольцо 0 – это режим ядра, он максимальный.

  • Кольцо 3 – это режим пользователя, он минимальный, т.е. получает меньший доступ к процессору.

Режим ядра – это наиболее привилегированный режим. Программное обеспечение, выполняющееся в режиме ядра имеет:

  1. прямой доступ к аппаратному обеспечению;

  2. доступ ко всей памяти ПК;

  3. не могут быть вытеснены в файл на жестком диске;

  4. выполняется с большим приоритетом, чем процессы режима пользователя.

Режиму пользователя предоставляется меньше привилегий. В процессе режима пользователя характеризуются следующими особенностями:

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

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

  3. для вызова системных сервисов используется интерфейс с прикладного программирования -API.

Windows использует 2 класса приоритетов:

  1. класс реального времени (приоритеты от 16 до 31) – используются для выполнения основных функций ОС и обычно не применяется для приложений;

  2. класс переменного приоритета (от 0 до 15) – определяет процессорный приоритет приложений.

Процессам могут быть присвоены следующие базовые уровни приоритетов:

  1. низкий – запускает приложения с уровнем приоритета 4;

  2. обычный – запускает приложения с уровнем приоритета 7;

  3. высокий – 13;

  4. реально во времени – уровень приоритета 24.

Не запускайте приложения с классом приоритета – реально во времени!

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]