Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОКМ_ЛК.doc
Скачиваний:
10
Добавлен:
13.04.2015
Размер:
623.1 Кб
Скачать

3 Об'єктно-орієнтований підхід

Хотя NT і не є повністю об'єктно-орієнтованою, в її основі лежать об'єкти. Одноманітна

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

спосіб забезпечення безпеки системи і її модифікації - всі ці переваги можуть бути досягнуті

при використанні об'єктної моделі. У Windows NT будь-який ресурс системи, який одночасно

може бути використаний більш ніж одним процесом, включаючи файли, спільно

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

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

в процесі її експлуатації. Якщо, скажімо, змінилося щось в апаратурі, то все, що необхідно

зробити - замінити відповідний об'єкт. Аналогічно, якщо потрібна підтримка нових ресурсів, то

треба додати лише новий об'єкт, не змінюючи при цьому останньої коди операційної системи.

Найбільш фундаментальна відмінність між об'єктом і звичайною структурою даних полягає в

тому, що внутрішня структура даних об'єкту прихована від спостереження. Ви повинні

викликати об'єктну функцію для того, щоб отримати дані з об'єкту або помістити дані в об'єкт.

Ви не можете безпосередньо змінювати дані, що знаходяться усередині об'єкту. Це відокремлює

засоби реалізації об'єкту від коди, яка лише використовує його, така техніка дозволяє легко

змінювати надалі реалізацію об'єктів.

Менеджер об'єктів - це компонента NT executive, яка відповідальна за створення,

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

управління ресурсами, які інакше будуть розкидані по всій ОС.

Менеджер об'єктів NT виконує наступні функції:

• Виділяє пам'ять для об'єкту.

• Приєднує до об'єкту так званий дескриптор безпеки, який визначає, кому

дозволено використовувати об'єкт, і що вони можуть з ним робити.

• Створює і маніпулює структурою каталога об'єктів, в якому зберігаються імена

об'єктів.

• Створює описувач об'єкту і повертає його зухвалому процесу.

Кожен nt-об'єкт є об'єктом певного типа. Тип визначає дані, які зберігає об'єкт, і "рідні"

системні функції, які можуть до нього застосовуватися. Для того, щоб управляти різними

об'єктами одноманітно, менеджер об'єктів вимагає, щоб кожен об'єкт містив декілька полів

стандартної інформації у визначеному місці об'єкту. До тих пір, поки ці дані є, менеджер

об'єктів не піклується про те, що ще зберігається в об'єкті. Кожен об'єкт складається з двох

частин - заголовка об'єкту і тіла об'єкту, які містять стандартні і змінні дані об'єкту відповідно.

Менеджер об'єктів працює із заголовком об'єкту, а інші компоненти executive працюють з

тілами об'єктів тих типів, яких вони самі створюють. Заголовок об'єкту використовуєтьсяЛекція 6. Архітектура операційної системи Windows \ Саенко В.І.

менеджером без врахування типа об'єкту. У заголовку об'єкту будь-якого типа міститься ім'я,

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

база даних відкритих описувачів, ознака постійний/тимчасовий, режим користувача/ядра,

покажчик на типа об'єкту.

Окрім заголовка об'єкту, кожен об'єкт має тіло об'єкту, формат і вміст якого унікально

визначається типом цього об'єкту; у всіх об'єктів одного і того ж типа однаковий формат тіла.

При створенні об'єкту виконавча частина може оперувати даними в тілах всіх об'єктів цього

типа.