ЗНАЕТЕ ЛИ ВЫ?

Виконавча підсистема (executive) ОС Windows 2000



Розглянемо більш докладно виконавчу підсистему (executive) Windows 2000.

Менеджер об'єктів.Як уже було сказано, Windows 2000 використає об'єкти для керування всіма своїми службами й для подання сутностей. Менеджер об'єктіввиконавчої підсистеми управляє використанням всіх об'єктів. Основні функцими менеджера об'єктів:

· Генерація object handle- посилання на об'єкт ядра Windows 2000;

· Виконання перевірок безпеки при роботі з об'єктом;

· Спостереження за використанням кожного об'єкта процесами.

Об'єкти управляються стандартним набором методів: create, open, close, delete, query name, parse, security.

Модуль executive підтримує іменування об'єктів. Ім'я може бути постійним або тимчасовим. Імена об'єктів структурируются як імена шляхів доступу до файлів в MS-DOS або UNIX.

Реалізовано об'єкт-символічні посилання, які подібні до символічних посилань в UNIX і дають можливість мати кілька синонімів для одного файлу.

Процес одержує посилання на об'єкт при його створенні, при відкритті вже існуючого об'єкта, при одержанні скопійованого посилання від іншого процесу, або шляхом спадкування посилання від процесу-батька.

Кожен об'єкт захищений списком керування доступом.

Менеджер віртуальної пам'яті в executive.При проектуванні менеджера віртуальної пам'яті передбачалося, що процесор підтримує для відображення віртуальних адрес у фізичні механізм сторінкової організації, прозорий кэш для багатопроцессорных систем, а також алиасы для віртуальних адрес.

Менеджер віртуальної пам'яті в Windows 2000 використає сторінкову організацію з розміром сторінки 4 кілобайти.

Використається дворівнева схема виділення пам'яті:

1.На першому кроці резервується частина адресного простору процесу.

2.На другому кроці дане виділення підтримується виділенням простору у файлі відкачки (paging file).

Схема розподілу віртуальної пам'яті в Windows 2000 наведена на рис. 27.2.

 

Рис. 27.2. Схема розподілу віртуальної пам'яті в Windows 2000.

Як видно зі схеми, використаються ієрархічні дворівневі таблиці сторінок.

Трансляція віртуальних адрес в Windows 2000 використає кілька структур даних.

Кожен процес має довідник сторінок (page directory), щомістить 1024 елемента довідника сторінокрозміром по 4 байти.

Кожен елемент довідника сторінок посилається на таблицю сторінок, що містить 1024 елемента таблиці сторінок(page table entries - PTEs) розміром по 4 байти.

Кожен PTE посилається на фрейм сторінки (4 KB) у фізичній пам'яті.

Посилання на елемент завжди займають 10 битов (0..1023). Ця властивість використається при трансляції віртуальних адрес у фізичні.

Сторінка може перебувати в наступних станах: valid (коректна), zeroed (обнулена), free standby (вільна), modified (модифікована), bad (некоректна).

На рис. 27.3 зображено структуру віртуальної адреси в Windows 2000.

 

Рис. 27.3. Структура віртуальної адреси в Windows 2000.

У віртуальній адресі 10 битов для page directory entry, 10 битов для page table entry, 12 битов для зсуву в байтах на сторінці.

Менеджер процесів executive.Забезпечує сервисы для створення, видалення й використання потоків і процесів. Зв'язку батьківських процесів з дочірніми й ієрархії процесів обробляються конкретною підсистемою оточення, що володіє даним процесом.

Важливий елемент менеджера процесів – механізм локального виклику процедури (LPC).LPC передає запити й результати між клієнтським і серверним процесами на локальній машині. Зокрема, він використається для запитів до сервисам різних підсистем ОС.

При створенні каналу для LPC повинне бути зазначене повідомлення одного із трьох типів.

· Перший тип - маленькі повідомлення, до 256 байтів; як проміжна пам'ять використається черга повідомлень порту, і повідомлення копіюються від ного процесу до іншого.

· Другий тип - щоб уникнути копіювання більших повідомлень, передаються посилання на поділювані об'єкти, що містять повідомлення.

· Третій тип - швидкий LPC - використається графічними підсистемами Win32.

Розглянемо структуру повідомлення LPC, описану мовою Си:

typedef struct _LPC_MESSAGE_HEADER {

// довжина тіла повідомлення

USHORT DataLength;

// довжина повідомлення із заголовком

USHORT TotalLength; /

/ тип повідомлення

USHORT MessageType;

USHORT DataInfoOffset;

// унікальний ідентифікатор процесу, що послав повідомлення

ULONG ProcessId;

унікальний ідентифікатор потоку, що послав повідомлення

ULONG ThreadId;

// ідентифікатор повідомлення

ULONG MessageId;

ULONG CallbackId;

} LPC_MESSAGE_HEADER, *PLPC_MESSAGE_HEADER;

Менеджер вводу-виводу в executive.Менеджер вводу-виводу відповідає за наступні компоненти й дії ОС:

· Файлові системи

· Керування кеш-пам'яттю

· Драйвери пристроїв

· Мережні драйвери.

Менеджер вводу-виводу стежить за тим, які файлові системи завантажені, і управляє буферами для запитів на ввід-вивід.

Він також взаємодіє з менеджером віртуальної пам'яті для забезпечення вводу-виводу у файли, відображувані на згадку.

Менеджер вводу-виводу управляє кэш-менеджером, що забезпечує кэширование для всієї системи вводу-виводу.

Менеджер вводу-виводу підтримує як синхронні, так й асинхронні операції, забезпечує тайм-аути для драйверів, підтримує механізми для виклику одного драйвера іншим.

Схема файлового вводу-виводу в Windows 2000 зображена на рис. 27.5.

 

Рис. 27.5. Файловий ввід-вивід в Windows 2000.

Монітор безпеки в executive.Объектно-ориентированная архітектура Windows 2000 забезпечує використання єдиного механізму для контролю доступу під час виконання й аудита всіх об'єктів системи.

Щораз, коли процес одержує посилання на об'єкт, монітор безпеки перевіряє маркер безпеки процесу й список керування доступом до об'єкта для перевірки, чи має процес необхідні права.

Менеджер Plug-and-Play.Менеджер Plug-and-Play (Pn)використається для розпізнавання змін у конфігурації встаткування й адаптації до них (установки відповідних драйверів).

Коли додаються нові пристрої (наприклад, PCI або USB), менеджер Pn завантажує відповідний драйвер.

Менеджер Pn також стежить за ресурсами, використовуваними кожним пристроєм.





Последнее изменение этой страницы: 2016-07-11; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 34.201.3.10 (0.009 с.)