Требования к операционным системам



Основное требование, предъявляемое к современным операционным системам – выполнение функций, перечисленных выше в параграфе "Функции операционных систем". Кроме этого очевидного требования существуют другие, часто не менее важные [3]:

· расширяемость – возможность приобретения системой новых функций в процессе эволюции; часто реализуется за счет добавления новых модулей;

· переносимость – возможность переноса операционной системы на другую аппаратную платформу с минимальными изменениями;

· совместимость – способность совместной работы; может иметь место совместимость новой версии операционной системы с приложениями, написанными для старой версии, или совместимость разных операционных систем в том смысле, что приложения для одной из этих систем можно запускать на другой и наоборот;

· надежность – вероятность безотказной работы системы;

· производительность – способность обеспечивать приемлемые время решения задач и время реакции системы.

ОС Windows - архитектура: компоненты пользовательского режима; компоненты режима ядра.

Компоненты пользовательского режима

Системные процессы (system processes) – компоненты Windows, отвечающие за решение критически важных системных задач, но выполняемые в пользовательском режиме.

Основные системные процессы:

o Winlogon.exe – процесс входа в систему и выхода из неё;

o Smss.exe (Session Manager – диспетчер сеансов) – процесс выполняет важные операции при инициализации системы (загрузка необходимых DLL, запуск процессов Winlogon и Csrss и др.), а затем контролирует работу Winlogon и Csrss;

o Lsass.exe (Local Security Authentication Subsystem Server – сервер подсистемы локальной аутентификации) – процесс проверяет правильность введенных имени пользователя и пароля;

o Wininit.exe – процесс инициализации системы (например, запускает процессы Lsass и Services);

o Userinit.exe – процесс инициализации пользовательской среды (например, запускает системную оболочку – по умолчанию, Explorer.exe);

o Services.exe (SCM, Service Control Manager – диспетчер управления службами) – процесс, отвечающий за выполнение служб;

Службы (сервисы, services) – приложения, работающие в фоновом режиме и не требующие взаимодействия с пользователем. Службы могут быть как частью операционной системы, так и частью пользовательского приложения. За службы отвечает системный процесс Services.exe;

Пользовательские приложения (user applications) - прикладные программы, запускаемые пользователем;

Подсистемы окружения (environment subsystems) – компоненты, предоставляющие доступ приложениям к некоторому подмножеству системных функций. Windows поддерживает две подсистемы окружения:

1) собственно Windows – при помощи данной подсистемы выполняются 32 разрядные приложения Windows (Win32).

2) POSIX (Portable Operating System Interface for UNIX – переносимый интерфейс операционных систем UNIX).

Windows API (Windows Application Programming Interface, WinAPI) – это способ взаимодействия процессов пользовательского режима с модулями режима ядра. WinAPI включает тысячи функций и хорошо документирован.

Библиотеки Windows DLL преобразуют вызовы документированных WinAPI функций в вызовы функций Native API и переключают процессор на режим ядра.

Компоненты режима ядра

Диспетчер системных сервисов (System Service Dispatcher) работает в режиме ядра, перехватывает вызовы функций от Ntdll.dll, проверяет их параметры и вызывает соответствующие функции из Ntoskrnl.exe.

Исполнительная система и ядро содержатся в Ntoskrnl.exe (NT Operating System Kernelядро операционной системы NT).

Исполнительная система (Executive) представляет собой совокупность компонентов (называемых диспетчерами – manager), которые реализуют основные задачи операционной системы:

· диспетчер процессов (process manager) – управление процессами и потоками (см. лекцию 6 "Процессы и потоки");

· диспетчер памяти (memory manager) – управление виртуальной памятью и отображение её на физическую (см. лекцию 8 "Управление памятью");

· монитор контроля безопасности (security reference monitor) – управление безопасностью (см. лекцию 9 "Безопасность");

· диспетчер ввода вывода (I/O manager), диспетчер кэша (cache Manager), диспетчер Plug and Play (PnP Manager) – управление внешними устройствами и файловыми системами (см. лекцию 10 "Управление устройствами" и лекцию 11 "Файловая система NTFS");

· диспетчер электропитания (power manager) – управление электропитанием и энергопотреблением;

· диспетчер объектов (object manager), диспетчер конфигурации (configuration manager), механизм вызова локальных процедур (local procedure call) – управление служебными процедурами и структурами данных, которые необходимы остальным компонентам.

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

Компонент Windows USER и GDI отвечает за пользовательский графический, является частью подсистемы Windows и реализован в драйвере Win32k.sys.

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

Однако, и драйверы, и ядро не взаимодействуют с физическими устройствами напрямую – посредником между программными компонентами режима ядра и аппаратурой является HAL (Hardware Abstraction Layer) – уровень абстрагирования от оборудования, реализованный в Hal.dll. HAL позволяет скрыть от всех программных компонентов особенности аппаратной платформы (например, различия между материнскими платами), на которой установлена операционная система.


Дата добавления: 2019-07-15; просмотров: 289; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!