10. Операцiйна система

Операцiйна система - це програма, що завантажується при включеннi комп'ютера. Вона вiдповiдає за дiалог з користувачем, здiйснює керування комп'ютером, його ресурсами (оперативною пам'яттю, мiсцем на дисках i т.д.), запускає iншi (прикладнi) програми на виконання. Операцiйна система забезпечує користувачу i прикладним програмам зручний спосiб спiлкування (iнтерфейс) iз пристроями комп'ютера. Основна причина необхiдностi операцiйної системи полягає в тому, що елементарнi операцiї для роботи з пристроями комп'ютера i керування ресурсами комп'ютера - це операцiї дуже низького рiвня, тому дiї, що необхiднi користувачу i прикладним програмам, складаються з декiлькох чи сотень тисяч таких елементарних операцiй.

Операцiйна система DOS складається з наступних частин:

Базова система введення-виведення (BIOS), що знаходиться в постiйнiй пам'ятi (постiйному запам'ятовуючому пристрої, ПЗУ) комп'ютера. Ця частина операцiйної системи є "вбудованою" у комп'ютер. Її призначення складається у виконаннi найбiльш простих i унiверсальних послуг операцiйної системи, зв'язаних зi здiйсненням уведення-виведення . Базова система введення-виведення мiстить також тест функцiонування комп'ютера, що перевiряє роботу пам'ятi i пристроїв комп'ютера при включеннi його електроживлення. Крiм того, базова система введення-виведення мiстить програму виклику завантажника операцiйної системи.

Завантажник операцiйної системи - це дуже коротка програма, що знаходиться в першому секторi кожної дискети з операцiйною системою DOS. Функцiя цiєї програми полягає в считуваннi в пам'ять ще двох модулiв операцiйної системи, що i завершують процес завантаження DOS.

На жорсткому диску (вiнчестерi) завантажник операцiйної системи складається з двох частин. Це зв'язано з тим, що жорсткий диск може бути розбитий на кiлька роздiлiв (логiчних дискiв). Перша частина завантажника знаходиться в першому секторi жорсткого диска, вона вибирає, з якого з роздiлiв жорсткого диска варто продовжити завантаження. Друга частина завантажника знаходиться в першому секторi цього роздiлу вона зчитує в пам'ять модулi DOS i передає їм керування.

Дисковi файли I0.SYS i MSDOS.SYS (вони можуть називатися по-iншому- назви мiняються в залежностi вiд версiї операцiйної системи). Вони завантажуються в пaмять завантажником операцiйної системи i залишаються в пам'ятi комп'ютера постiйно. Файл I0.SYS являє собою доповнення до базoвої системи введення-виведення в ПЗУ. Файл MSDOS.SYS реалiзує основнi високорiвневi послуги DOS.

Командний процесор DOS обробляє команди, що вводяться користувачем. Командний процесор знаходиться в дисковому файлi COMMAND.СОМ на диску, з якого завантажується операцiйна система. Деякi команди користувача командний процесор виконує сам. Такi команди називаються внутрiшнiми. Для виконання iнших (зовнiшнiх) команд користувача командний процесор шукає на дисках програму з вiдповiдним iм'ям i якщо знаходить її, то завантажує в пам'ять i передає їй керування. По закiнченнi роботи програми командний процесор видаляє програму з пам'ятi i виводить повiдомлення про готовнiсть до виконання команд (запрошення DOS).

Зовнiшнi команди DOS - це програми, що поставляються разом з операцiйною системою у виглядi окремих файлiв. Цi програми виконують дiї обслуговуючого характеру, наприклад форматування дискет, перевiрку дискiв i т.д.

Драйвери пристроїв - це спецiальнi програми, що доповнюють систему введення-виведення DOS i забезпечують обслуговування нових чи нестандартне використання наявних пристроїв. Наприклад, за допомогою драйверiв можлива робота з "електронним диском" тобто частиною пам'ятi комп'ютера, з яким можна працювати так само, як з диском. Драйвери завантажуються в пам'ять комп'ютера при завантаженнi операцiйної системи, їхнi iмена вказуються в спецiальному файл CONFIG.SYS. Така схема полегшує додавання нових пристроїв дозволяє робити це, не торкаючи системнi файли DOS.

Версiї DOS

Перша версiя операцiйної системи для комп'ютера IBM PC - MS DOS 1.0 була створена фiрмою Microsoft у 1981 р. Надалi в мiру вдосконалення комп'ютерiв IBM PC випускалися i новi версiї DOS, що враховують новi можливостi комп'ютерiв i надають додатковi можливостi користувачу.

У 1987 р. фiрма Microsoft розробила версiю 3.3 (3.30) операцiйної системи MS DOS. яка стала фактичним стандартом на наступних 3-4 роки. Ця версiя дуже компактна i має достатнiй набiр можливостей, так що на "стандартнiй IBM PC AT" тепер її експлуатацiя цiлком доцiльна. Але на бiльш потужних комп'ютерах з декiлькома мегабайтами оперативної пам'ятi бажано використовувати версiї 5.0 чи 6.0 операцiйної системи MS DOS. Цi версiї мають засоби для ефективного використання оперативної пам'ятi понад 640 Кбайт, дозволяють працювати з логiчними дисками, “великими” 32 Мбайт, переносити DOS i драйвери пристроїв у розширену пам'ять, звiльняючи мiсце в звичайнiй пам'ятi для прикладних програм, i т.д. Версiя 6.0 MS DOS включає засоби стиску iнформацiї на дисках (DoubleSpace), програми створення резервних копiй, антивiрусну програму й iншi дрiбнi удосконалення. Однак у цiй версiї програми стиску iнформацiї не завжди працювали коректно, що приводило до втрат даних у деяких користувачiв. Для усунення цих проблем i iнших помилок фiрма Microsoft випустила версiю MS DOS 6.20. Ця версiя працює стiйкiше, надiйнiше i швидше, нiж MS DOS 6.0 i включає ряд невеликих удосконалень. Однак судове рiшення з приводу порушення в MS DOS патентiв фiрми Stack Electronics змусило Microsoft випустити спочатку версiю MS DOS 6.21. у який була вилучена програма динамiчного стиску дискiв, що порушила патент, DoubleSpace, а потiм MS DOS 6.22 з "пiдправленою" версiєю DoubleSpace, що не порушує патент. На мою думку, з цих версiй краща - 6.20.

ОС WINDOWS 3.1 Windows 3.0.

Великим кроком вперед став випуск у травнi 1990 року версiї Windows 3.0. Фiрма Microsoft ввела пiдтримку захищеного режиму процесорiв 80286 i 80386, що давало прикладним програмам бiльше пам'ятi. Пiдтримка 386 розширеного режиму була перенесена з Windows/386. Прикладним програмам тепер видiлялося до 16 Мбайт пам'ятi, причому не странично органiзованої, як у LI EMS, а доступної для одночасного використання. Була реалiзована псевдобагатозадачнiсть i можливiсть виконання DOS- програм у вiкнi.

Помiтно покращився iнтерфейс користувача. Програми керування файлами File Manager i Program Manager були виконанi в стилi самого середовища, з'явилася програма конфiгурацiї Control Panel, були доданi пропорцiйнi шрифти, а також об'ємнi iнтерфейснi елементи: смуги прокрутки i кнопки.

Змiни в роботi дисплейних драйверiв i можливiсть адресацiї бiльшого обсягу пам'ятi дозволили Windows працювати iстотно швидше.

Все, що можна i не можна було перенести в середовище Windows, одержувало назву for Windows: компiлятори, електроннi таблицi, графiчнi пакети, комунiкацiйнi програми, iгри.

Windows 3.1.

Незважаючи на всi полiпшення, у середовищi Windows 3.0 минулого й iстотнi недогляди: недолiк системних ресурсiв, що унеможливлювало використання наявної пам'ятi, i знаменитi системнi помилки (UAE), що вiдбувалися набагато частiше, нiж цього можна було очiкувати. Рiшення цих проблем привело до появи версiї Windows 3.1, що споконвiчно планувалося як невелике полiпшення версiї 3.0. Насправдi введення пiдтримки шрифтiв, що масштабуються технологiї TrueType i виправлення ряду принципових помилок перетворилася Windows 3.1 у самостiйний проект, до якого в результатi додалися значнi нововведення. Так, був реалiзований протокол створення складених документiв OLE, документований протокол Drag-and-Drop, полiпшений iнтерфейс iз протоколом DDE (бiблiотека DDEML), уведенi панелi дiалогу загального призначення (COMMDLG), у вiдповiдь на численнi запити були вiдкритi ранiше недокументованi функцiї i робочi областi ядра (TOOLHELP). Одним словом, середовище Windows перетворилася в гарний iнструмент для розроблювачiв i зручний графiчний iнтерфейс для користувачiв.

Windows for Workgroups 3.11: iнтеграцiя мережних засобiв

У листопадi 1992 року фiрма Microsoft випустила трохи обновлену версiю Windows - Windows for Workgroups 3.11, першу операцiйну систему Windows, що включає у свiй склад мережнi засоби. Дана система логiчно продовжує лiнiю Windows i дозволяє з'єднати в єдину мережу окремi комп'ютери по бессервернiй схемi (однорангова мережа), а також дозволяє працювати як мережний клiєнт для сервера Windows NT. Тепер для органiзацiї мережi необхiдно мати тiльки Windows i вiдповiдне устаткування - мережнi карти, кабелi i т.д. У Windows for Workgroups уперше стали використовуватися 32-розряднi драйвери вiртуальних пристроїв (Vx) i 32-розрядний доступ до жорсткого диска, що значно пiдвищило продуктивнiсть. Ще одним нововведенням стало те, що Windows for Workgroups працювала тiльки в 386-у розширеному режимi, тим самим пiдписуючи смертний вирок застарiлим 286-м процесорам.

Windows NT 3.51- нова технологiя Microsoft

Windows NT, випущена в липнi 1993 року, розроблена як операцiйна система високого класу для комп'ютерiв класу high-end. Вона розроблялася як мережна операцiйна система для роботи i як сервер, i як робоча станцiя. Windows NT це не послiдовниця Windows 3.х, а в коренi нова операцiйна система, що вiдкриває нову лiнiю Windows. Зовнi Windows NT дуже схожа на Windows 3.х, але її внутрiшня структура в коренi вiдрiзняється вiд Windows 3.х. Архiтектура Windows NT розроблялася таким чином, щоб система мала максимальну стiйкiсть i надiйнiстю. I треба сказати це розроблювачам вдалося, Windows NT забезпечує стабiльнiсть цiлком порiвнянну iз серверами UNI. Windows NT функцiонує не тiльки на платформi Intel, але i на RiSC-процессорах: PowerPC, MIPS R4000, DEC Alpha. Windows NT може виконувати додатки DOS, Win16, Win32, POSI i додатки OS/2, що не використовують графiчний iнтерфейс. Одним з найважливiших нововведень стало використання нової файлової системи NTFS, що забезпечує високу надiйнiсть файлової системи i можливiсть практично будь-якого вiдновлення збоїв, крiм того може використовуватися стара система FAT i HPFS (OS/2 Warp), що дозволяє використовувати Windows NT на одному роздiлi жорсткого диска з DOS i OS/2. Також нововведенням стала пiдтримка симетричної мультипроцесорної обробки i технологiї OpenGL, що дозволяє працювати з 3-хмiрними об'єктами. Офiцiйнi вимоги до апаратури складають: процесор 386/25, 12 Мбайт ОЗУ, 90 Мбайт вiльного мiсця на диску.

Система Windows 3.1 побудована на тих же принципах, що i Windows 3.0, що вперше з'явилася в 1990р. Вона завантажується поверх DOS, що забезпечує багато базових функцiй ОС. Windows додає до iнфраструктури DOS графiчне операцiйне середовище i новi функцiональнi можливостi, такi як простий механiзм кооперативної багатозадачностi, який використовується для одночасного виконання декiлькох прикладних програм DOS i Windows.

Вiдповiдно до архiтектури Windows усi прикладнi програми i системний код розмiщаються в єдиному адресному просторi. Це означає, що недопрацьована прикладна програма, що мiстить помилки, може зiпсувати областi пам'ятi, що використовуються операцiйним середовищем чи iншою прикладною програмою. Результатом буде помилка загального порушення захисту (General Protection Fault).

У своїй основi Windows 3.x - 16-розрядна операцiйна система, тому для програм пам'ять представляється такою, що складається з 64-кбайтних сегментiв, а всi данi у свiй основi 16-розряднi. Ще один наслiдок 16-розрядної бази цiєї ОС - обмеженiсть системних ресурсiв. У Windows 3.x для збереження таких структур, як дескриптори файлiв прикладних програм видiляється лише невеликий блок пам'ятi в iнших адресах. Пiсля того як цi областi пам'ятi заповняться, Windows не може завантажити новi прикладнi програми, навiть якщо в її розпорядженнi залишається цiлком достатньо пам'ятi в iнших адресах.

Огляд архiтектури Windows 3.х

Сьогоднi легко вiдшукувати недолiки в архiтектурi Microsoft Windows 3.x, що створювалася в тi часи, коли найбiльш розповсюдженими були процесори 286 i ОЗУ малої ємностi. Але варто також згадати, що значила Windows 3.х для персонального комп'ютера: удосконалений графiчний iнтерфейс користувача, "невидиме" керування пам'яттю, шрифти, що мастабуються й унiфiкована модель вiдтворення зображень, багатозадачнiсть i 32-розряднi драйвери вiртуальних пристроїв (Vx) - лише найбiльш важливi нововведення.

В основi органiзацiї Windows 3.х лежить 16-розрядна архiтектура. Її ядро, бiльшiсть найважливiших компонентiв i власних прикладних програм являють собою 16-розряднi коди. (Її рiдко використовуваний iнтерфейс Win32 API дає можливiсть виконувати 32-розряднi прикладнi програми, але не дозволяє працювати з декiлькома потоками.)

Усi власнi прикладнi програми Windows 3.х i всi її системнi бiблiотеки DLL вiдображаються в загальний сегментований вiртуальний адресний простiр розмiром 4 Гбайти. Усi цi компоненти видимi (i часто доступнi на рiвнi запису) один для одного. У нижнiй частинi цього адресного простору, звичайно нижче мiтки 1 Мбайт, розмiщаються драйвери пристроїв реального режиму, що забезпечують взаємодiю з периферiйними пiдсистемами, такими, як вiдеоплати чи принтери. У Windows 3.11 драйвери Vx файлової системи використовуються для вiдшукання маршруту доступу до диска в захищеному режимi.

Спрощена органiзацiя системи дозволяє одержати дуже малу робочу множину (working set - прикладний i системний код, який необхiдно завантажити в пам'ять для будь-якої даної задачi), тому Windows 3.1х може успiшно виконуватися на комп'ютерах з ОЗУ обмеженого розмiру. Така архiтектура також сприяє пiдвищенню ефективностi виконання коду, тому що програми можуть викликати функцiї API з власного простору пам'ятi. Недолiк архiтектури складається в слабкому захистi вiд збоїв при неправильнiй роботi програм. Програми i системнi компоненти видимi один для одного, модуль, що мiстить помилки, може легко зiпсувати вмiст пам'ятi, що належить iншому процесу. Хоча Windows 3.1х здатна вiдновлювати свою працездатнiсть пiсля деяких порушень захисту загального характеру (General Protection Fault), найчастiше результатом стає крах усiєї системи.

Windows 3.1х одночасно виконує декiлька прикладних програм за допомогою простого механiзму планування, що називається кооперативною багатозадачнiстю. У цiй системi кожна прикладна програма повинна добровiльно уступити керування, коли, перевiривши свою чергу повiдомлень, вона виявляє, що та порожня. Але якщо прикладна програма не перевiрить свою чергу повiдомлень або через зайнятiсть, або внаслiдок зависання, то iншi прикладнi програми позбавляться доступу до спiльно використовуваних ресурсiв.

Iнший недолiк, що довгий час викликав невдоволення користувачiв Windows 3.1х, - обмеженiсть ресурсiв модулiв GDI i USER. Цi обмеження виникають у зв'язку з тим, що системнi бiблiотеки GDI i USER використовують декiлька 64-кбайт динамiчних областей (хiпiв) для збереження рiзноманiтних схованих структур даних, створюваних прикладними програмами, що виконуються в даний момент. Коли цi невеликi хiпи переповнюються, ви одержуєте повiдомлення про недостачу пам'ятi навiть якщо в системi залишається багато вiльної пам'ятi.

ОС Windows 95

Windows 95 внесла значнi полiпшення в архiтектуру Windows, у тому числi iстинно 32-розрядний iнтерфейс прикладного програмування (API), захищенi адреснi простори для її власних 32-розрядних прикладних програм, виштовхуюча багатозадачнiсть, подiл прикладних програм на потоки i бiльш широке використання вiртуальних драйверiв пристроїв. Модель захисту пам'ятi реалiзована iз серйозними компромiсами, метою яких було досягти сумiсностi з iснуючими 16-розрядними прикладними програмами i драйверами пристроїв. Але на практицi стiйкiсть системи виявляється кращою, нiж у Windows 3.1х. Продуктивнiсть же Windows 95 на подив висока. На повiльних системах, оснащених ОЗУ не бiльш 4 Мбайт, її показники майже такi ж, а iнодi i кращi результатiв Windows 3.1х, у залежностi вiд виконуваної операцiї. На бiльш швидкодiючих системах з бiльшою пам'яттю вона залишається дуже конкурентноздатною в одно- i багатозадачному режимах роботи.

З погляду базової архiтектури Windows 95 - iстинно 32-розрядна, багатопотокова операцiйна система з виштовхуючою багатозадачнiстю. У її середовищi можуть виконуватися власнi 32-розряднi прикладнi програми, написанi у вiдповiдностi зi специфiкацiєю Win32 API (майже iдентичний варiант цього iнтерфейсу реалiзований у Windows NT). Власнi прикладнi програми Windows 95 використовують неструктурований 32-розрядний адресний простiр, що робить їх потенцiйно бiльш швидкодiючою при обробцi великих масивiв даних.

Найбiльш важливi компромiси в архiтектурi Windows 95 були породженi рiшенням корпорацiї Microsoft зробити її сумiсної з iснуючими 16-розрядними прикладними програмами Windows i драйверами пристроїв реального режиму. Це дозволяє Windows 95 працювати з набагато бiльш широким спектром iснуючих апаратних i програмних засобiв. Недолiк цього рiшення полягає в тому, що областi пам'ятi, що мiстять 16-розряднi прикладнi програми i драйвера реального режиму, повиннi залишатися незахищеними. Недопрацьована програма як i ранiше вiдносно легко може викликати крах всього операцiйного середовища.

У Windows 95 кожна 32-розрядна прикладна програма виконується у власному адресному просторi, але усi вони спiльно використовую той самий 32-розрядний системний код. Неправильно написана 32-розрядна програма усе ще може привести до аварiйного збою всiєї системи.

Розширилися мережнi функцiональнi можливостi. До складу Windows 95 включений вбудований клiєнт для мереж NetWare 3.x, 4.x i для серверiв Windows NT. Передбаченi також засоби для роботи з протоколами IPX/SPX, NetBEUi, TCP/IP. Останнiй з перерахованих протоколiв дозволяє виконувати пiдключення до Internet, хоча краща програма для з'єднання з Internet, що мiстить утилiту перегляду Web, входить до складу пакета Microsoft Plus!. Windows95 дозволяє безпосередньо приєднуватися до iншого комп'ютеру через кабель i має у своєму розпорядженнi базовi засоби для встановлення з'єднань, що комутуються, через телефоннi лiнiї iз сервером вiддаленого доступу Remote Access Server системи Windows NT, NetWare Connect чи iз серверами компанiї, що комутуються, Shiva. До складу Windows95 також входить iнтерфейс прикладного програмування для телефонiї (TAPI) фiрми Microsoft, що забезпечує спiльну роботу вашої машини з телефоном, реєструючи телефоннi виклики i виконуючи функцiї автовiдповiдача ( прикладнi програми для телефонiї будуть поставлятися незалежними фiрмами).

Windows95 показує цiлком прийнятнi результати при виконаннi як нових прикладних програм, так i програм Windows 3.x, хоча Windows for Workgroups випереджає її по швидкодiї в багатьох дискових операцiях. Але на машинах з ОЗУ 8 Мбайт i бiльш її продуктивнiсть порiвнянна чи вище, нiж у попереднiх версiй Windows. Продуктивнiсть системи при виконаннi Windows-программ набагато перевищує аналогiчний показник системи Windows NT.

При створеннi Windows 95 фiрма Microsoft пiшла на багато компромiсiв. У результатi одержали вдосконалений графiчний iнтерфейс, бiльш високу продуктивнiсть, вдосконалений механiзм багатозадачностi, надiйну зворотну сумiснiсть i здатнiсть виконувати велике число нових прикладних програм.

WINDOWS 95

Windows 95 являє собою продукт еволюцiйного розвитку системи Windows 3.1х i не означає повного розриву з минулим. Хоча вона несе в собi багато важливих змiн у порiвняннi з 16-розрядною архiтектурою Windows, у нiй збереженi деякi найважливiшi властивостi її попередницi. Результатом стала поява гiбридної ОС, здатної працювати з 16-розрядними прикладними програмами Windows, програмами, успадкованими вiд DOS, i старими драйверами пристроїв реального режиму й у той же час сумiсної з повнiстю 32-розрядними прикладними програмами i 32-розрядними драйверами вiртуальних пристроїв.

Серед найбiльш важливих вдосконалень, що з'явилися в Windows 95, - початково закладена в нiй здатнiсть працювати з 32-розрядними багатопотоковими прикладними програмами, захищенi адреснi простори, виштовхуюча багатозадачнiсть, набагато бiльш широке й ефективне використання драйверiв вiртуальних пристроїв i ширше застосування 32-розрядних хiпiв для збереження структур даних системних ресурсiв. Її найбiльш iстотний недолiк складається у вiдносно слабкiй захищеностi вiд погано працюючих програм, що мiстять помилки.

Кожна власна прикладна програма Windows 95 бачить неструктурований 4-Гбайтний адресний простiр, у якому розмiщається вона сама плюс системний код i драйвери Windows 95. Кожна 32-розрядна прикладна програма виконується так, начебто вона монопольно використовує весь ПК. Код прикладної програми завантажується в цей адресний простiр мiж вiдмiтками 2 i 4 Гбайт. Хоча 32-розряднi прикладнi програми "не бачать" одна одну, вони можуть обмiнюватися даними через буфер обмiну (Clipboard), механiзми DDE i OLE. Усi 32-розряднi прикладнi програми виконуються вiдповiдно до моделi виштовхуючої багатозадачностi, заснованої на керуваннi окремими потоками. Планувальник потокiв, що представляє собою складову частину системи керування вiртуальною пам'яттю (VMM), розподiляє час серед групи одночасно виконуваних потокiв на основi оцiнки поточного прiоритету кожного потоку i його готовностi до виконання. Виштовхуюче планування дозволяє реалiзувати набагато бiльш плавний i надiйний механiзм багатозадачностi, нiж кооперативний метод, використовуваний у Windows 3.1х.

Системний код Windows 95 розмiщається вище границi 2 Гбайт. У просторi мiж вiдмiтками 2 i 3 Гбайт знаходяться системнi бiблiотеки DLL кiльця 3 i будь-якi DLL використовуванi декiлькома програмами. (У 32- розрядних процесорах фiрми Intel надаються чотири рiвнi апаратного захисту, iменованi, починаючи з кiльця 0 до кiльця 3. Кiльце 0 найбiльш привiлейоване.) Компоненти кiльця 0 у системi Windows 95 вiдображаються в простiр мiж 3 i 4 Гбайт. Цi важливi дiлянки коду з максимальним рiвнем привiлеїв мiстять пiдсистему керування вiртуальними машинами (VMM), файлову систему i драйвери Vx.

Область пам'ятi мiж 2 i 4 Гбайт вiдображається в адресний простiр кожної 32-розрядної прикладної програми, тобто воно спiльно використовується всiма 32-розрядними прикладними програмами у вашому ПК. Така органiзацiя дозволяє обслуговувати виклики API безпосередньо в адресному просторi прикладної програми й обмежує розмiр робочої множини. Однак за це приходиться розплачуватися зниженням надiйностi. Нiщо не може перешкодити програмi, що мiстить помилку зробити запис в адреси, що належать системним DLL, i викликати крах усiєї системи.

В областi мiж 2 i 3 Гбайт також знаходяться всi 16-розряднi прикладнi програми Windows, що запускаються вами. З метою забезпечення сумiсностi цi програми виконуються в спiльно використовуваному адресному просторi, де вони можуть зiпсувати одна одну так само, як i в Windows 3.1х.

Адреси пам'ятi нижче 4 Мбайт також вiдображаються в адресний простiр кожної прикладної програми i спiльно використовуються всiма процесами. Завдяки цьому стає можливою сумiснiсть з iснуючими драйверами реального режиму, яким необхiдний доступ до цих адрес. Це робить ще одну область пам'ятi незахищеною вiд випадкового запису. До самих нижнiх 64 Кбайт цього адресного простору 32-розряднi прикладнi програми звертатися не можуть, що дає можливiсть перехоплювати невiрнi вакзiвники, але 16-розряднi програми, що, можливо, мiстять помилки, можуть записувати туди данi.

Деякi системнi DLL Windows 95, зокрема USER i GDI, усе ще мiстять 16-розрядний код. Один iз сумних наслiдкiв цього полягає в тому, що 64- Кбайт локальнi хiпи модулiв USER i GDI i супутнi їм обмеження системних ресурсiв як i ранiше залишаються. На щастя, у Windows 95 деякi структури даних перемiстилися в 32-розряднi хiпи, завдяки чому тепер стало набагато складнiше виснажити системнi ресурси, нiж у середовищi Windows 3.1х. Iнша проблема, зв'язана c l6-розрядним системним кодом, - ефект Win16Mutex. Тому що 16-розрядний системний код нереєнтерабельний, тiльки один потiк може звертатися до 16-розрядних DLL у кожен момент часу, потенцiйно загальмовуючи iншi процеси, яким потрiбний доступ до цих бiблiотек.

ОС Windows NT

Так само як i Windows 95, це 32-розрядна багатозадачна, багатопотокова операцiйна система, але, крiм того, вона має важливi засоби забезпечення безпеки, надiйну нову файлову систему з реєстрацiйним журналом i може бути перенесена на вiдмiннi вiд Intel апаратнi платформи. Її базова архiтектура забезпечує кращий захист, нiж будь-яка iнша система.

У середовищi Windows NT службовi програми операцiйної системи виконуються в окремих адресних просторах, як i будь-яка окрема прикладна програма, написана вiдповiдно до Win32 API. Iснуючi 16-розряднi програми для середовища Windows можуть виконуватися в захищених адресних просторах для взаємного захисту чи в спiльно використовуваному просторi, якщо потрiбен взаємообмiн. Кожна прикладна програма DOS може виконуватися на своїй вiртуальнiй машинi; Windows NT забезпечує реалiзацiю таких особливостей середовища DOS, як резидентнi програми i вiдображувана (expanded) пам'ять. У нiй не можуть установлюватися драйвери пристроїв DOS, у тому числi драйвери факсiв, звукових плат, сканерiв i емуляторiв термiналiв.

Архiтектура системи Windows NT бiльш надiйна, нiж будь-якої iншої системи фiрми Microsoft. Вона благополучно вiдновлюється пiсля будь-яких спроб привести її до краху. Забезпечення такого рiвня захисту неминуче спричиняє рiст непродуктивних витрат i додаткової пам'ятi, що в бiльшостi випадкiв приводить до зниження продуктивностi.

З'явилися деякi змiни в пiдсистемi дистанцiйного доступу, Remote Access Service (RAS). Тепер iснує можливiсть використовувати захищенi канали зв'язку, новий протокол Point-To-Point Tunneling Protocol (PPTP), можливiсть використовувати кiлька модемiв для органiзацiї каналiв зв'язку з вiддаленими мережами.

Особливостi мережної архiтектури колишнiх версiй Windows NT (багаторiвнева модель захисту вiд несанкцiонованого доступу, специфiка модульної побудови системи i т.п.) обмежували її пропускну здатнiсть при роботi в мережах Fast Internet. У версiї 4.0 були полiпшенi алгоритми кешування мережних запитiв, оптимизованi модулi пiдсистеми подiлу ресурсiв, змiнений механiзм генерацiї переривань (при переходi до високошвидкiсних мереж ця функцiя зненацька стала джерелом проблем для мережних ОС). Друга змiна, на яку вказує Microsoft - збiльшена продуктивнiсть ОС при виконаннi графiчних операцiй. Розроблювачi, що "переодягали" Windows NT, перенесли частину коду модулiв USER i GDI в ядро системи, що дозволило прискорити виконання графiчних операцiй на 15-20 %. Однак реальну вигоду вiд цього полiпшення оцiнити важко - операцiї виведення на екран являють собою лише малу частину роботи, що виконують типовi програми для Windows NT. Виведення вiд бiльш швидкої графiки одержать переважно САПР i ПО для мультимедiа, але навiть у цьому випадку переваги далеко не очевиднi - швидко виконавши запити на вивiд зображення, операцiйна система, як правило, вiддає час, що звiльнився, процесам з бiльш високими прiоритетами.

Сполучення потужної мережної ОС i графiчного iнтерфейсу, створеного для неквалiфiкованих користувачiв, виглядає досить незвично. Windows NT 4.0 - це не просто чергова версiя популярної операцiйної системи. Вона являє собою основу для нового поколiння програмних продуктiв, орiєнтованих на роботу в мережi Internet. Можливiсть створення iнфраструктури intranet, простота в звертаннi i гарнiй репутацiї минулих

версiй Windows NT у сполученнi з тенденцiєю, що пiдсилюється, до створення однорангових мереж роблять її привабливої для користувачiв зi сфери бiзнесу.

З метою збiльшити продуктивнiсть i знизити вимоги до пам'ятi розроблювачi Windows NT 4.0 вирiшили перемiстити багато служб API операцiйної системи з пiдсистеми Win32 у ядро ОС. У новому модулi Win32K Executive розташовуються три важливих елементи операцiйної системи: диспетчер вiкон, iнтерфейс графiчних пристроїв (GDI) i драйвери графiчних пристроїв, що передають результати роботи GDI на екран i на принтер. У Windows NT 3.x цi компоненти були частиною пiдсистеми Win32. В ОС Windows NT 4.0 вони ввiйшли до складу модуля Windows NT Executive, де доступ до них, як i до iнших служб ядра, можна одержати в контекстi викликаючих процесiв.

Нова архiтектура обiцяла рiзко пiдвищити продуктивнiсть, особливо при роботi з графiкою. Всi операцiї виводу на екран виконуються через звертання до функцiй GDI. Тепер, коли GDI стала частиною ядра, прикладнi програми можуть безпосередньо звертатися до функцiй GDI, уникаючи сполучених з великими накладними витратами переключень контексту, вiдеодрайвери можуть швидше одержувати доступ до апаратних засобiв, а служби Win32 API - звертатися до служб у модулi Windows NT Executive, не переходячи через границi кiлець.

Звертання до службових функцiй GDI i диспетчера вiкон iз прикладної програми кiльця 3 як i ранiше приводить до переходу через границi кiлець, але фiрма Microsoft знову знайшла кiлька цiкавих способiв оптимiзацiї, що дозволяють досягти максимальної продуктивностi. Один приклад: якщо кiлька функцiй GDI викликаються послiдовно одна за iншою, то вони органiзуються в чергу в користувальницькому режимi i потiм направляються в ядро єдиним пакетом, що зводить до мiнiмуму число переходiв через границю кiльця. За твердженням Microsoft, нова архiтектура GDI дозволить програмам, що iнтенсивно використовують графiчнi засоби, таким, як PowerPoint, виводити зображення на екран на 15-20% швидше.

Продуктивнiсть в iнших областях також покращилася. Перемiщення диспетчера вiкон у ядро виключає основне вузьке мiсце, що обмежувало швидкiсть передачi iнформацiї мiж диспетчером вiкон i прикладними програмами, що звертаються до служб диспетчера вiкон.,

Тепер, коли основна частина програм i даних, що реалiзують служби Win32 API операцiйної системи, вiдображається в адресний простiр кожного процесу, необхiднiсть у серверних потоках i спiльних буферах пам'ятi зникає. Отже, вимоги системи до пам'ятi знижуються. Однак отримана економiя майже цiлком "перекривається" розмiром оболонки, що збiльшилася, iнтерфейсу користувача. Тому хоча твердження, що Windows NT 4.0 використовує пам'ять бiльш ефективно, нiж версiя 3.x, правильне, однак вiрно i те, що для досягнення прийнятної продуктивностi як i ранiше знадобиться щонайменше 16-мбайт ОЗУ.

Фрагменти операцiйної системи, перенесенi з пiдсистеми Win32 у модуль Windows NT Executive, зараз захищенi не гiрше, нiж ранiш, хоча тепер це зроблено по-iншому.

Критики вказують на те, що погано налагоджений вiдеодрайвер чи драйвер принтера тепер може привести до краху ядра, тодi як ранiш вiн мiг лише викликати збiй пiдсистеми чи Win32. Фiрма Microsoft заперечує - i обґрунтовано, - що як Windows NT 3.x, так i версiя 4.0 стабiльнi в тiй мiрi, наскiльки це забезпечується драйверами пристроїв, використовуваними разом з ОС. От чому фiрма Microsoft проводить тестування драйверiв для Windows NT, у тому числi розроблених незалежними постачальниками, i сертифiкує лише бездоганнi продукти. Якщо якiсть графiчних драйверiв Windows NT 4.0 виявиться такою ж чи перевершить якiсть графiчних драйверiв версiї 3.x, то немає причин, по яких Windows NT може виявитися менш надiйною, нiж 3.x. З iншого боку, iнсталяцiя несертифiкованого графiчного драйвера в системi Windows NT 4.0 теоретично бiльш ризикована, нiж iнсталяцiя того ж драйвера в системi 3.x, оскiльки графiчнi драйвери Windows NT 4.0 працюють у привiлейованому режимi ядра ЦП.

Що стосується безпеки, то Windows NT 4.0 спроектована з врахуванням вимог стандартiв безпеки точно так само, як i її попередники. Архiтектурнi змiни не торкнулися пiдсистеми захисту iнформацiї, що, як i iншi пiдсистеми, виконується у видi окремого процесу в режимi користувача.

Тонкi змiни, внесенi в архiтектуру Windows NT у версiї 4.0, вiдбивають нове вiдношення до системи з боку її розроблювачiв. Спочатку Windows NT проектувалася як операцiйна система "рiвних можливостей", здатна виконувати прикладнi програми iнших ОС так само легко, як i свої власнi. Але тепер, коли центральне мiсце придiляється службам Win32 API, система Windows NT оптимiзована на виконання програм Win32 з бiльшою швидкiстю, нiж ранiше. Windows NT 4.0 працює набагато швидше, нiж її попередники, i при цьому, мабуть, не поступається тими якостями, що зробили її знаменитою. Зваживши всi обставини, можна сказати, що користувачi навряд чи можуть побажати чогось кращого.



Информация о работе «Сутність та принципи роботи ЕОМ»
Раздел: Информатика, программирование
Количество знаков с пробелами: 102443
Количество таблиц: 0
Количество изображений: 2

Похожие работы

Скачать
180736
14
3

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

Скачать
80264
6
1

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

Скачать
53270
3
3

... які корективи необхідно застосувати? ·          хто винен у тому, що досягнуті показники значно менші від запланованих, або хто (чи що) найбільше сприяє успішній роботі? Управлінські рішення можна систематизувати за ознаками: 1. За сферою охоплення чи масштабом можливих наслідків: ·     загальні (прямо чи опосередковано стосуються усієї організації ·     часткові (торкаються лише деяких ...

Скачать
75355
11
3

... скоріше, надмірне, чим недостатнє, інвестування (Хайек., Мізес і ін.); · теорію сонячних плям - погоди - урожаю (Джевонс, Мур). При оцінці поглядів на циклічність і її причини варто скасувати, що вони видозмінювалися в часі разом зі зміною самої соціально-економічної дійсності. З обліком цього заслуговує на увагу точка зору ряду російських економіст в, які виділяють три етапи в зміні поглядів на ...

0 комментариев


Наверх