Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операцiйнi системи та середовища6.05.07(Антонов...doc
Скачиваний:
11
Добавлен:
04.05.2019
Размер:
801.79 Кб
Скачать

4 Архітектура операційних системWindows

4.1 Архітектура ос Windows 98se

Операційна система Windows 98SE має такі характерні риси, що відрізнюють її від попередніх версій:

  • 32-розрядна архітектура та підтримка 16-розрядної;

  • багатозадачність та багатопоточність для додатків;

  • відкритість архітектури – можливість додавати нові компоненти;

  • підтримка стабільності та захищеність;

  • спрощене встановлювання та налаштовування нових периферійних пристроїв – Plug and Play;

  • висока сумісність з вже накопиченим програмним забезпеченням – W 3.2x, W95, MS-DOS;

  • підтримка різноманітних технічних засобів, як старих – DOS-драй-верів, так і нових – WDM (Windows Driver Model);

  • наявність нових файлових систем – FAT-32, UDF тощо.

На рисунку 4.1 подано архітектуру ОС Windows 98SE.

Рисунок 4.1 – Архітектура ОС Windows 98SE

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

Драйвери пристроїв (Device Driver) – це програма, яка безпосередньо керує будь-яким пристроєм введення/виведення або іншими ресурсами комп’ютера. Драйвери у Windows 98SE забезпечують функціональність багатозадачного середовища, яке має дати можливість одночасного доступу кількох додатків до одного зовнішнього пристрою чи ресурсу. Завдання віртуалізування ресурсів в ОС Windows 98SE розв’язувається саме драйверами віртуальних пристроїв. Файлам з драйверами віртуальних пристроїв надається розширення VxD. Замість “х” можна підставити: Т-таймер, отримаємо VTD – драйвер віртуального таймера, р – VРD – драйвер віртуального принтера тощо.

Драйвери є динамічні, тобто можуть завантажуватись до оперативної пам’яті в разі необхідності й вилучатися, якщо не є потрібні. Частка драйверів є статичними: обов’язково завантажуються разом з ОС і залишаються в оперативній пам’яті постійно. Драйвери VxD мають такі переваги: функціонують в захищеному режимі процесора, використовують усі можливості 32-розрядних процесорів й забезпечують високу продуктивність ОС.

При роботі в MS-DOS використовують драйвери реального часу, тобто не динамічні.

Для розробляння нових драйверів у разі необхідності працювати з нестандартними зовнішніми пристроями використовується двокомпонентна модель:

  • універсальний драйвер, який зреалізовує функції керування пристроями певного класу (принтери, модеми, монітори);

  • міні-драйвери, що враховують особливості конкретного пристрою.

4.1.2 Диспетчер віртуальних машин

Диспетчер віртуальних машин (Virtual Machine Manager – VMM) – основний компонент Windows 98SE, що забезпечує багатозадачність та багато-поточність на підставі створення віртуальних машин та керування ними. Він зберігається у файлі C:\WINDOWS\SYSTEM\WMM32.VxD і складається з таких частин:

  • планувача процесів (Process Scheduler), який здійснює розподіл процесорного часу поміж виконуваними процесами та потоками, які використовують процесор поперемінно;

  • модуля підкачування сторінок пам’яті (Memory Pager), який вико-ристовується для безпосереднього керування пам’яттю;

  • інтерфейсу захищеного режиму MS-DOS (MS-DOS Protected mode Interface);

Windows 98SE виконується на рівні тредів (Treads), яким планувач процесів надає за певними правилами кванти процесорного часу. За відносно невеликої оперативної пам’яті комп’ютер під керуванням ОС підтримує віртуальну пам’ять шляхом використання фізичної – оперативної та дискової. Виконуваний програмний код зберігається в основній пам’яті, а решта може зберігатися у віртуальній на диску. Коли програмний код на диску стає активним, він підкачується до основної пам’яті й навпаки. Цей процес називається свопінгом (Swapping), або підкачкою. Файл свопінга має адресу C:\WINDOWS\WIN386.SWP.

Віртуальна пам’ять має сторінкову організацію (Page) фіксованої довжини (64 Кбайти), свопінг йде посторінково. Драйвери VxD розташовані поза одномегабайтовим адресним простором. На рис. 4.2 подано модель віртуальної пам’яті.

У системі використовується плоска модель пам’яті, коли всі сегменти об’єднані й мають максимальний розмір. Кожна сторінка може розташовуватись де завгодно в оперативній пам’яті під керуванням диспетчера пам’яті, котрий перебуває у невивантажуваній області пам’яті або переноситься на диск. Молодші адреси віртуального простору разом використовуються усіма процесами для забезпечення сумісності з драйверами пристроїв реального режиму (клавіатура, монітор), резидентними програмами та деякими 16-розрядними програмами Windows 98SE. Це не є оптімальним з точки зору надійності, оскільки призводить до того, що будь-який процес може зіпсувати компоненти, розташовані за цими адресами.

Кожна 32-розрядна програма виконується у власному адресному просторі, але всі вони використовують один 32-розрядний системний код. Доступ до чужих адресних просторів у принципі є можливий. Віртуальний адресний простір у цій моделі не використовує всі апаратні засоби захисту, які надає процесор. Помилково написаний 32-розрядний додаток може призвести до аварійного збою системи. Область пам’яті поміж 2 та 4 Гбайтами використовується спільно усіма 32-розрядними додатками. Така організація дозволяє обслуговувати усі виклики АРІ безпосередньо в адресному просторі додатка. Але ніщо не заважає додаткові, що він вміщує помилковий код, зробити запис за адресами, які належать системним DLL, і спричинити збій у ОС.

Рисунок 4.2 – Розподіл віртуальної пам’яті у Windows 98SE