Windows як операційна оболонка

Windows запускається на виконання як звичайна програма MS-DOS. Але, після завантаження в основну пам’ять, вона бере на себе майже всі функції керування ОС:

- пам’яттю;

- програмами, що виконуються;

- процесами;

- дисплеєм;

- клавіатурою;

- мишею;

- принтером;

- послідовними портами.

Windows це не ОС оскільки апаратура IBM PC обслуговується як MS-DOS, так і Windows. MS-DOS керує файловою системою. Все інше робить Windows. (Міняючи файлову систему дуже важко було б забезпечити сумісність з існуючим програмним забезпеченням).

 

 

Програма в Windows не має права звертатись до пристроїв напряму, а повинна використовувати для цього внутрішні функції Windows (їх > 600).

Це обмеження природне для багатозадачної операційної оболонки, коли всі ресурси комп’ютера розділяються.

Основні функції Windows виконують три системних модуля – kernel.exe, gdi.exe та user.exe. їх функції чітко розділені:

kernel.exe – керує пам’яттю, завантаженням та виконанням програм, а також виконує інші системні функції.

gti.exe – Graphics Devise Interface - інтерфейс з графічними пристроями, відповідає за графіку.

user.exe – робить все інше.

Модулі user.exe та gdi.exe взаємодіють з апаратною IBM PC через драйвери пристроїв Windows. Майже всі драйвери пристроїв Windows фактично виконують функції ROM BIOS MS-DOS, працюючи з пристроями напряму. Виключення – драйвер принтера printer.drv, який звертається до свого пристрою через процедури ROM BIOS. На схемі дещо спрощено.

Модуль gdi.exe та деякі драйвери також можуть викликати функції ядра (kernel.exe), а програми Windows можуть в принципі безпосередньо звернутись до драйвера (на відміну від MS-DOS, де не можна звернутись до драйвера пристрою повз ОС).

Взаємодія програм Windows з MS-DOS (тобто з функціями DOS). Хоча в програмах Windows можна використати багато функцій стандартної бібліотеки ”С”, насправді відбувається звертання не безпосередньо до DOS, а до Windows (точніше до модуля kernel.exe), який відслідковує всі звертання до переривань DOS та BIOS. При звертанні до дозволених функцій DOS середовище Windows забезпечує сумісність виклику DOS з чужою організацією основної пам’яті, а в деяких випадках (при звертаннях до функцій exec, або до функцій роботи з пам’яттю) повністю заміняє виклик на відповідне звертання до пристрою.

Якщо програма Windows викликає невідоме Windows переривання система ”висне”.

Таким чином в Windows зв’язки між програмою користувача, системою і апаратурою чітко визначені. Програма взаємодіє з Windows, Windows викликає драйвери пристроїв, які, в свою чергу, звертаються до апаратури. Розглянута схема відображає тільки загальну структуру.