Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы_ос_3модуль.doc
Скачиваний:
2
Добавлен:
21.11.2019
Размер:
84.48 Кб
Скачать

2.Принцип особливого режиму роботи

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

Оскільки будь-яка програма вимагає операцій вводу-виводу, прикладні програми для виконання цих операцій звертаються до супервізорної частини операційної системи з відповідним запитом. При цьому процесор повинен переключитися в привілейований режим роботи. Щоб програми не могли довільним способом звертатися до супервізорнго коду їм надається можливість звертатися до нього в строгій відповідності із прийнятими правилами. Кожний запит має свій ідентифікатор і повинен супроводжуватися відповідною кількістю параметрів, які уточнюють в операційної системи функцію (операцію), що запитується. Тому супервізор завдань при отриманні запиту спочатку його ретельно перевіряє. Якщо запит коректний і програма має право до нього звертатися, то запит на виконання операції передається відповідному модулю операційної системи. Множина запитів до операційної системи утворює відповідний системний інтерфейс прикладного програмування (Application Program Interface, API).

3.Принцип віртуализації

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

Частіше віртуальна машина відтворює архітектуру реальної машини, але архітектурні елементи в такому представленні виступають із новими або поліпшеними характеристиками, що часто спрощують роботу із системою. Характеристики можуть бути довільними, але найчастіше користувачі бажають мати власну "ідеалізовану" по архітектурних характеристиках машину в наступному складі.

Однакова по логіці роботи пам'ять (віртуальна) достатнього обсягу для виконання додатків. Організація роботи з інформацією в такій пам'яті проводиться в термінах роботи із сегментами даних на рівні обраної користувачем мови програмування.

Довільна кількість процесорів (віртуальних), здатних працювати паралельно й взаємодіяти під час роботи. Способи керування процесорами, у тому числі синхронізація й інформаційні взаємодії, реалізовані й доступні користувачам з рівня мови, яка використовується в термінах керування процесами.

Довільна кількість зовнішніх пристроїв (віртуальних), здатних працювати з пам'яттю віртуальної машини паралельно або послідовно, асинхронно або синхронно стосовно роботи того або іншого віртуального процесора, які ініціюють роботу цих пристроїв. Інформація, передана або збережена на віртуальних пристроях, не обмежена припустимими розмірами.

Чим більше віртуальна машина, реалізована засобами операційної системи на базі конкретної апаратури комп'ютера, наближена до "ідеальної" по характеристиках, тим більше ступінь її віртуальності.

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

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