|
Сутність та принципи роботи ЕОМ
овн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.1Windows 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я MicrosoftWindows 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 95Windows 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 95Windows 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 навряд чи можуть побажати чогось кращого. 11. Нормативно-технічна документація Запропонована експлуатац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ях 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бл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плен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 користувач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днести: 1.Помилки, схованi в самiй програмi: *помилки обчислень; *логiчнi помилки; *помилки введення-виведення; *помилки манiпулювання даними; *помилки сумiсностi; *помилки пов'язанi зi сполученням. 2.Перекручування вх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 первинної вхiдної iнформацiї. 3.Невiрнi дiї користувача. 4.Несправност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ї технiчного та програмного забезпечення ЕОМ. Згiдно ГОСТ 2.601-68 “Документы експлуатационные” та єдиної системи конструкторської документац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х компонент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в д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дно ГОСТ 2.601-68, наприклад:-загальнi вказiвки;-загальнi вiдомостi про вирiб;-основнi технiчнi данi, характеристики i т.д.Формуляр оформляється вiдповiдно ГОСТ 2.105-79. Окремi роздiли рекомендується оформляти у виглядi таблицi по формах, визначених ГОСТ 2.601-68.12. Надійність програмного забезпечення ЕОМОсновн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єю з терм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сть програмного забезпечення можна оц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онуванн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ї. Над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онування програмного забезпечення. Звернемося до рис. 7.1, на якому показанi типовi залежностi, що вiдображають змiну в часi надiйностi апаратури (крива 1) i програми (крива 2).
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н в орган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ючи п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дної 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рне перетворення тип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 розряд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ншими прикладними програмами, використовуваними в дан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ї, що п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 даних з первинних нос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 функц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 ПЗ. Поява в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 тому має 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я надiйностi , визначена як iмовiрнiсть того, що помилки програми не проявляться на iнтервалi часу вiд 0 до t тобто час її безв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 програм є модел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сля чого вона знову стає константою, але з iншим, меншим значенням. При цьому передбачається, що мiж i числом помилок, що залишилися в програмi, iснує пряма залежнiсть:,де - невiдоме первинне число помилок; (i - число виявлених помилок, що залежить вiд часу t; К - деяка константа (рис. 7.2).Щiльнiсть розподiлу часу виявлення i-ої помилки ti задається спiввiдношенням:Значення невiдомих параметрiв К и М може бути оцiнене на пiдставi послiдовних спостережень iнтервалiв мiж моментами виявлення помилок за методом максимальної правдоподiбностi. При цьому для знаходження оцiнок параметрiв К. i М необхiдно розв'язати наступнi рiвняння:де иm=B/Am; А= ; В=;- оц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 програм, побудована на припущеннi, що усунення помилки в програмi приводить до збiльшення часу наробiтку на вiдмову на ту саму випадкову величину.Передбачається, що час мiж двома послiдовними вiдмовами є випадковою величиною, яку можна представити у видi суми двох випадкових величин:,(7.2)де випадковi величини незалежнi i мають однаковi математичнi очiкування i середньо-квадратичне вiдхилення .З (7.2) випливає, що -на вiдмова програми вiдбудеться через часПередбачається також, що . Пiдставою для такого припущення є те, що вiдмва програми на початку перiоду експлуатацiї виникають часто. У цьому випадку можна вважати, що:.При цих припущеннях середнiй наробiток мiж -м i -ою вiдмовою програми дорiвнює,(3)а середнiй наробiток до виникнення -ї вiдмови визначається виразом:.(4)Оцiнка величини , , можуть бути отриманi за даними про вiдмои програми протягом перiоду спостереження наступним чином:де - число вiдмов програми за перiод ; - момент виникнення -ї вiдмови програми.Функцiя надiйностi визначається в залежностi вiд числа вiдмов, якi виникли:,(5)де -- функц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дно,.Функц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ю м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єї години налагодження позначити , то за час таких витрат буде . Отже, загальн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русних програм, тобто програм, призначених для навмисного перекручування результатiв рахунку, знищення файлiв, створення умов для ненормального функцiонування ЕОМ. Частка помилок або ж зависань ЕОМ через вiруси складає приблизно вiд 10 до 30%. Вiдомо бiльш 40 000 вiрусiв i близько 100 антив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рус ONE HALF, що спрацьовує переважно 28 жовтня. В основному вiруси "працюють" коректно i не викликають зависання ЕОМ. Але серед них потрапляються такi, котрi цiлком стирають системнi областi твердих дискiв чи пiдкаталоги iнформацiйних масивiв. У 90% випадках в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руси, що руйнують, їхня довжина не перевищує 20 Кбайт. Самi довгi вiруси досягають 100 кбайт i бiльше. Останнiм часом особливо багато турбот доставляють користувачам макровiруси, що вражають файли MS Word i MS Excel. Макров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в/таблиць (MS Word, Excel, Office 97), запакованих та заархiвованих файлiв. Можливiсть лiкування заражених об'єктiв.* Наявнiсть: версiй антивiрусу пiд усi популярнi ОС (DOS, Windows, Novel NetWare, OS/2, Alpha, Linux 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йних дискет перед установкою нового програмного забезпечення (при установц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й, операц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дпов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й довжин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єї д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внює . Час , необхiдний для виконання операцiй порiвняння i запису промiжних обчислень у ЗП, залежить вiд типу використовуваного ЗП, кiлькостi промiжних результатiв i числа дiлянок програми, тобто , де - середнiй час виконання операцiй порiвнянь i звертання до ЗП для запису результатiв однiєї дiлянки програми. Якщо вважати, що , то . Для деяких типiв машин експериментально встановлено, що , де - iнтенсивнiсть збоїв, рiвна, наприклад, у розрахунку на один логiчний елемент 10-4 год-1. У цьому випадку приймає мiнiмальне значення при , яке можна визначити з рiвняння: . В деяких випадках можна вважати, що . Тодi:,. Таким чином, знаючи , можна визначити оптимальну довжину дiлянки програми i вiдповiдне їй число дiлянок, при яких мiнiмальне. Звiдси випливає, вiдношення, однак, слiд помiтити, що продуктивнiсть ЕОМ падає бiльше нiж у два рази. . Захист вiд збоїв i вiдновлення файлiв у windows 2000 Збої в робот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 про помилки (це необхiдно робити для того, щоб не допустити попадання пошкоджених даних на резервну копiю); *перевiрку дискiв для своєчасного виявлення помилок файлової системи; *дефрагментацию дискiв для усунення втрати продуктивностi; *при установцi додаткового устаткування необхiдно користатися драйверами, сумiсними з встановленою ОС (наприклад, у Windows 2000 введенi додатковi засоби захисту системних файлiв i драйверiв за допомогою цифрового пiдпису, що гарантує їхню сумiснiсть i коректну роботу). При ушкодженнi головного завантажувального запису чи при виникненнi збоїв у роботi диска, на якому знаходиться системний роздiл, завантаження ЕОМ допоможе виконати завантажувальна дискета. Для створення завантажувальної дискети необхiдно вiдформатувати дискету з Windows 2000 i скопiювати на цю дискету файли: Ntldr, Ntdetect.com, Boot.ini, Bootsect.dos (для мультизавантажувальної системи) i Ntbootdd.sys (якщо у файлi Boot.ini застосовується синтаксис scsi()). У Windows 2000 для резервного копiювання i вiдновлення даних застосовується вмонтована утилiта Backup, що дозволяє виконувати резервне копiювання iнформацiї, у тому числi системних конфiгурацiйних файлiв, на будь-який ЗП, який пiдтримується ОС (гнучкi чи твердi диски, магнiтооптичнi нагромаджувачi та iн.). Основнi засоби захисту вiд збоїв i вiдновлення ушкодженої ОС Windows 2000 включають: -захист системних файлiв цифровим пiдписом (захист системних файлiв, перевiрка системних файлiв i версифiкацiя системних файлiв); -безпечний режим завантаження; -консоль вiдновлення; -диск аварiйного вiдновлення. Цифровий пiдпис Microsoft гарантує, що файл, пiдписаний нею, тестувався на сумiснiсть з Windows 2000 i не був модифiкований чи переписаний пiд час установки програмного забезпечення. У залежностi вiд встановленої опцiї настроювання, ОС може або iгнорувати драйвери, що не мають цифрового пiдпису, або виводити попередження при виявленнi таких драйверiв (за замовчуванням), чи ж просто не допускати їхньої установки. Функцiя захисту системних файлiв (System File Protection), що працює за принципом визначення цифрових пiдписiв захищених системних файлiв, не дозволяє довiльно модифiкувати i замiщати цi файли. Ця функцiя захищає усi файли, встановленi програмою Windows 2000 Setup. Утилiта перевiрки системних файлiв (System File Checker) при перезапуску ЕОМ перев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тора VGA, не робить запуск мережних засобiв, запускає мiнiмальну кiлькiсть драйверiв). Наприклад, якщо пiсля iнсталяцiї нового програмного забезпечення ОС перестала запускатися, то цiлком можливо, що перезавантаження в безпечному режимi дозволить виконати запуск ОС. Пiсля такого перезавантаження можна буде змiнити параметри настроювання ЕОМ, що не дозволяли ранiше виконувати коректний запуск Windows 2000, чи видалити програмне забезпечення, що викликало цi проблеми. Використовуючи консоль вiдновлення Windows 2000 (Recovery Console), можна запускати i зупиняти сервиси, форматувати диски, виконувати читання i запис даних на локальнi твердi диски, усувати проблеми з пошкодженим головним завантажувальним записом i пошкодженими завантажувальними секторами та iн. Ця нова можливiсть Windows 2000 може також виявитися корисною, якщо для вiдновлення системи потрiбно скопiювати на твердий диск один чи кiлька системних файлiв або ж переконфiгурувати сервiс чи драйвер, некоректна конфiгурацiя якого заважає виконати завантаження Windows 2000. Застосування диска аварiйного вiдновлення (Emergency Repair Disk) дозволить вирiшити проблеми з пошкодженими системними файлами, порушеннями конфiгурацiї в мультизавантажувальному режимi, пошкодженням реєстру i з пошкодженим завантажувальним сектором на завантажувальному роздiлi. Важливою особливiстю диска аварiйного вiдновлення в Windows 2000 є те, що процес аварiйного вiдновлення можна виконати навiть у тому випадку, коли диск аварiйного вiдновлення не був виготовлений заздалегiдь. Але в цьому випадку всi змiни, внесенi до складу системи, будуть загубленi, а встановлене в системi додаткове програмне забезпечення може зажадати переустановки. Якщо процес аварiйного вiдновлення системи завершиться успiшно, то ЕОМ буде автоматично перезавантажена. При неуспiшному завершеннi процесу можна скористатися опцiями консолi вiдновлення. Якщо не допоможе i це, то ймовiрнiше всього, прийдеться переустановити ОС.
Страницы: 1, 2
|
|