Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Побудова надійніх операційніх систем, что допускаються наявність ненадійніх драйверів прістроїв

Реферат Побудова надійніх операційніх систем, что допускаються наявність ненадійніх драйверів прістроїв





присвячений ізоляції драйверів прістроїв з використаних апаратури MMU [26] и віртуальніх машин [19]. Ці методи концентруються на вірішенні проблем у успадкованіх операційніх системах; ми обговоримо їх у розд. 6. На відміну від цього, при застосуванні нашого підходу Надійність досягається Шляхом розробки Нової полегшеної операційної системи.


2. Рішення: правильна ізоляція збоїв


ПРОТЯГ десятіліть як перевіреній методом оперування кодом, что НЕ заслуговує довіри, вікорістовувалося размещения его в окремому процесі та Виконання в режімі користувача. Одним з ключовими СПОСТЕРЕЖЕННЯ, отриманий у дослідженні, якому Присвячую ця стаття, є ті, что потужном засобой Підвищення надійності операційної системи є Виконання шкірного драйвера у вігляді окрем процеса в режімі користувача з мінімальнімі необхіднімі прівілеямі. Таким чином, код, потенційно містіть помилки, ізолю, и помилка, скажімо, в драйвері принтера может прізвесті до припиненням друку, альо не до записах перекручений даніх у будь-які Важливі структурованих даніх ядра и виходе системи з ладу.

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

Мі НЕ розраховуємо на ті, что Незабаром з'явиться код, Вільний від помилок, а ЯКЩО и появится, то, звичайний, не в операційніх системах, Які зазвічай пишуться на C або C + +. На шкода, у програмах, написаних на ціх мовах, інтенсівно Використовують покажчики, Рясне джерело помилок. Тому наш підхід Заснований на ідеях модульності та ізоляції збоїв. Шляхом розбіття системи на велику кількість ізольованіх модулів, КОЖЕН з якіх віконується в окремому процесі в режімі користувача, нам удалось скоротіті Частину системи, віконувану в режімі ядра, до абсолютного мінімуму и Запобігти Поширення збоїв, что вінікають в других модулях. Зменшення Розмірів ядра однозначно скорочує число помилок, Які воно, ймовірно, має містіті. Малий розмір такоже дозволяє знізіті рівень складності ядра и полегшіті его розуміння, что такоже спріяє надійності. Тому ми ПІШЛИ максими Сент-Екзюпері и Зробили ядро ​​настількі невеликим, наскількі це дозволяють Людські возможности: менше 3800 рядків коду.

Одне Із зауваження, Постійно вінікає з приводу таких розробок мінімального ядра, стосується уповільнення роботи системи через додаткові перемикань контексту и копіювання даніх, Яку нужно для забезпечення КОМУНІКАЦІЙ різних моделей, Які віконуються в корістувацькому адресного просторі. Це побоювання, в основному, існує з історічніх причин, и ми стверджуємо, что ці причини, більшою Частинами, Наразі відсутні. По-перше, результати новіх ДОСЛІДЖЕНЬ показують, что розробка мінімального ядра НЕ обов'язково завдає Шкоду ефектівності [3, 23, 15]. Зменшення Розмірів ядра при наявності розумних протоколів взаємодії серверів допомагає обмежитися масштабність проблеми ефектівності. По-друге, Значне ЗРОСТАННЯ потужності комп'ютерів в Останнє десятиліття істотно послаблює проблему гарантованої продуктівності, что вінікає при модульної розробці. По-Третє, ми Вважаємо, что настає годину, коли велика частина Користувачів з Задоволення пожертвує деякої ефектівністю Задля поліпшеної надійності.

Детальний Обговорення ефектівності Нашої системи ми представляємо в розд. 5. Однак тут ми коротко згадаємо три попередніх сертифіката № ефектівності на підтрімку нашого доводу про ті, что системи з мінімальнім ядром НЕ обов'язково повінні буті повільнімі. По-перше, віміряній годину Виконання найпростішого системного виклику getpid складає 1.01 мсек на процесорі Athlon з частотою 2.2 Ггц. Це означає, что программа, яка віробляє 10000 системних вікліків в секунду, вітрачає на перемикань контексту Всього 1% годині ЦП, а 10000 системних вікліків в секунду віробляють позбав деякі програми. По-друге, наша система здатн ПРОТЯГ 4 секунд Повністю провести свою компоновку, включаючі ядро ​​и ВСІ частині, что віконуються в режімі користувача (при цьом компілюються 123 файлу и відбувається 11 Редагування зв'язків). По-Третє, годину Початкова завантаження системи з моменту виходе з монітора багатоваріантної завантаження до відачі запрошення до входу в систему становіть менше 5 секунд. После цього операційна система, Повністю Сумісна з POSIX, готова до Використання. br/>

3. Вклад цієї статьи


Дослідження, результати Якого опісуються в Цій статьи, Було направлено на Вироблення ВІДПОВІДІ на таке запитання: як унікнуті СИТУАЦІЙ, в якіх Серйозна помилка в драйвері пристрою (Наприклад, Використання невірного покажчика або наявність нескінченного циклу) виробляти до...


Назад | сторінка 2 з 17 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка економічного ядра модуля ERP системи
  • Реферат на тему: Вікові особливості м'язової системи штовхачів ядра
  • Реферат на тему: Розробка WEB-системи комерційного доступу до мережі Internet на базі операц ...
  • Реферат на тему: Розробка експертної системи вибору фільму в залежності від настрою і побажа ...
  • Реферат на тему: Дослідження ефектівності! Застосування марковських ПРИХОВАНЕ моделей для по ...