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

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





ку на Виконання без переривані, может буті непередбачуванім чином квантування в часі з непередбачуванімі наслідкамі. По-Третє, может знадобітіся СПІЛЬНЕ Використання кількома віртуальнімі машинами Деяк ресурсів, таких як конфігураційне простір шини PCI. По-четвертий, Механізм віртуальної машини спожіває додаткові ресурси, хочай відповідні витрати сумірні з витратами Нашої схемою: від 3% до 8%. Хочай для ціх проблем предлагают решение, підхід у КРАЩА випадка є громіздкім и в основному Підходить для захисту успадкованіх драйверів в успадкованіх операційніх системах, а не для Використання в новіх розробка, Яким присвячено наше Дослідження.

Засоби безпеки, засновані на мовах

У Попередній работе один з авторів такоже торкався проблему безпечного Виконання зовнішнього кодом всередіні ядра. У проекті Open Kernel Environment (OKE) забезпечується БЕЗПЕЧНА, что Контролює ресурси середовище, что дозволяє завантажити в ядро ​​операційної системи Linux Повністю оптімізованій власний код [4]. Код компілюється з використаних СПЕЦІАЛЬНОГО компілятора Cyclone, Який додає до об'єктному коду інструментарій у відповідності з політікою, яка візначається прівілеямі користувача. Cyclone, подібно Java, є мовою з Типового БЕЗПЕКА, в якому більша частина помилок, пов'язаних з покажчики, запобігається мовня Засоба. Явне довірче управління (trust management) i контроль авторізації Забезпечують адміністраторам можлівість Здійснювати суворий контроль над НАДАННЯ зовнішнім модулям прівілеїв, и цею контроль автоматично приводитися у Виконання в коді ціх модулів. Крім забезпечення авторізації, компілятор Грає центральну роль у Перевірці того, что код відповідає встановленої політіці. Для цього Використовують як статічні перевіркі, так и Динамічний інструментарій.

OKE дозволяє зовнішнім модулям інтенсівно взаємодіяті з іншімі Частинами ядра, Наприклад, Шляхом Спільного Використання пам'яті ядра. Робоча середовище Забезпечує ключові засоби безпеки. Зокрема, для даніх всегда проводитися Прибирання сміття, и НЕ может відбутіся звернення за вказівніком до Вільної пам'яті. Більш того, OKE может Забезпечувати контроль над усіма ресурсами зовнішніх модулів ядра: година ЦП, купа, стек, точки входу и т.д.

Середа OKE розроблялася в розрахунку на написання драйверів и Розширення ядра. Прото, оскількі для забезпечення безпечного програмування в ядрі Linux Потрібні процедури суворого контролю доступу и складні засоби, середу й достатньо Важко використовуват. Як відзначають автори, основна причина Полягає в тому, что організація Linux просто не призначила для забезпечення возможности безпечного Розширення.

Віртуальні машини і екзоядра

Класичні Віртуальні машини [24] представляються собою потужній засіб для одночасного Виконання кількох операційніх систем. Екзоядра [10] Схожі на Віртуальні машини, альо в них Ресурси швідше розділяються, а не реплікуються, что виробляти до більшої ефектівності. Прото Жоден з ціх підходів НЕ вірішує проблему, поставлену в розд. 1.3: як Запобігти відмові операційніх систем з звинувачуй драйверів прістроїв, что містять помилки?

драйверами, что віконуються в режімі користувача в монолітному ядрі

Раннім проектом, в якому застосовуваліся драйверами, что віконуються в режімі користувача, БУВ Mach 3.0 [11]. Система Складанний з мікроядра Mach, поверх Якого запускати ОС Berkeley UNIX у вігляді корістувацького процеса, и Драйвер прістроїв такоже віконуваліся в призначеня для користувача процесах. На шкода, у разі фатального збою драйвера Berkeley UNIX доводи перезапускаті, так что от ізоляції драйверів Було мало корісті. Планувалася мультисерверного система, яка винна булу Виконувати над Mach, альо вона так и НЕ булу Повністю реалізована.

У аналогічному проекті в університеті New South Wales реалізовуваліся драйверами Linux для жорсткий диск І гігабайтної апаратури Ethernet, что віконуються в режімі користувача [8]. Для блоків розміром менше 32 Кб Продуктивність ядерного драйвера булу однозначно Вище, альо на блоках БІЛЬШОГО розміру вірівнювався. Во время тестування Ethernet виявило так багат аномалій, ймовірно, пов'язаних з управлінням буферами, альо НЕ можна Було сделать Які-небудь Висновки.

Розробки мінімальніх ядер

хочай витяг драйверів з ядра є великим кроком вперед, ще краще вітягті з ядра операційну систему. Саме тут почінають застосовуватіся мінімальні ядра з НАДЗВИЧАЙНИХ СКОРОЧЕННЯ числа реалізованіх у них абстракцій. Ймовірно, дерло мінімальнім ядром булу система RC4000 Брінка Хансена (Brinch Hansen), что датується качаном 1970-х рр. [13]. З середини 1980-х рр. БУВ написань ряд мінімальніх ядер, включаючі Amoeba [21], Chorus [5], Mach [1] и V [6]. Прото ні в одному з них не застосовувалося безпечне програмне забезпечення: у всех Було НЕ ізольовані драйвером всередіні ядра.

QNX є комерційною UNIX-подібної системою реального годині з Закритого кодами [17]. Хочай у неї є...


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





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

  • Реферат на тему: Підготовка завантажувача і ядра Linux для збірки Android
  • Реферат на тему: Драйвера ядра Windows
  • Реферат на тему: Перехоплення функцій ядра Windows для захисту процеса
  • Реферат на тему: Спортивне ядро, будівництво спортивного ядра
  • Реферат на тему: Розробка економічного ядра модуля ERP системи