загрузка...
загрузка...
На головну

Апаратна залежність і переносимість операційних систем

  1.  A. Розділ біомеханіки, в якому досліджується рух крові по судинній системі.
  2.  ArcView GIS. Загальні відомості про систему
  3.  B. Процес, при якому для повернення системи в початковий стан потрібні витрати енергії.
  4.  C. Астигматизм, обумовлений асиметрією оптичної системи, сферична аберація, астигматизм косих пучків, дисторсия, хроматична абеpрація.
  5.  D. Міра невизначеності в системі
  6.  I. Структура на основних сетівні системи. Строеж на зрітелната і слуховата сетівна системи.
  7.  IBM Power 7 | Нові серверні системи

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

1.Засоби підтримки привілейованого режиму зазвичай засновані на системному реєстрі процесора, званому «словом стану»Машини або процесора. Регістр містить ознаки, що визначають режими роботи процесора, в тому числі ознака поточного режиму привілеїв. Зміна режиму привілеїв виконується за рахунок зміни слова-стану машини в результаті переривання або виконання привілейованої команди.

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

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

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

5.системний таймер, Часто реалізується у вигляді швидкодіючого регістра-лічильника, необхідний операційній системі для витримки інтервалів часу. Для цього в регістр таймера програмно завантажується значення необхідного інтервалу в умовних одиницях, з якого потім автоматично з певною частотою починає відраховуватися з одиниці. Частота «тиків» таймера пов'язана з частотою тактового генератора процесора. При досягненні нульового значення лічильника таймер ініціює переривання, яке обробляється процедурою операційної системи. Операційна система використовує переривання від системного таймера для відстеження витрат часу процесора на виконання процесів. Наприклад, в системі поділу часу при обробці чергового переривання від таймера планувальник процесів може примусово передати управління іншому процесу, якщо даний процес вичерпав виділений йому квант часу.

6.Засоби захисту областей пам'яті забезпечують на апаратному рівні перевірку можливості програмного коду здійснювати з даними певної області пам'яті операції: читання, запис або виконання (при передачах управління). Якщо апаратура комп'ютера підтримує механізм трансляції адрес, то засоби захисту областей пам'яті вбудовуються в цей механізм. Функції апаратури по захисту пам'яті зазвичай складаються в порівнянні рівнів привілеїв поточного коду процесора і сегмента пам'яті, до якого здійснюється звернення.

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

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

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

Для комп'ютерів на основі процесорів Intel x86 / Pentium розробка екрануючого машинно-залежного шару операційної системи дещо спрощується за рахунок вбудованої в постійну пам'ять комп'ютера базової системи введення-виведення - BIOS. BIOS містить драйвери для всіх пристроїв, що входять в базову конфігурацію комп'ютера (жорстких і гнучких дисків, клавіатури, дисплея і т. Д.), які виконують примітивні операції з керованими пристроями. За рахунок цих операцій екрануються відмінності апаратних платформ комп'ютера і серверів на процесорах Intel різних виробників. Розробники операційних систем можуть користуватися шаром драйверів BIOS як частиною машинно-залежного шару операційної системи, а можуть замінити всі або частину драйверів BIOS компонентами операційної системи.

Якщо код операційної системи може бути порівняно легко перенесений з процесора одного типу на процесор іншого типу і з апаратної платформи одного типу на апаратну платформу іншого типу, то таку операційну систему називають яку переносять (portable), Або мобільного. Для забезпечення якості мобільності операційній системі, розробники повинні дотримуватись наступних правил:

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

2. Обсяг машинно-залежних частин коду, які безпосередньо взаємодіють з апаратними засобами, повинен бути по можливості мінімізований. Для зменшення апаратної залежності розробники операційних систем повинні виключити можливість використання за замовчуванням стандартних конфігурацій апаратури або їх характеристик. Для здійснення дій з управління апаратурою повинен бути написаний набір апаратно-залежних функцій. Кожен раз, коли якому-небудь модулю операційної системи потрібно виконати деяку дію, пов'язане з апаратурою, він маніпулює абстрактними даними, використовуючи відповідну функцію з наявного набору. Коли операційна система переноситься, то змінюються тільки ці дані і функції, які ними маніпулюють. Наприклад, в операційній системі Windows NT диспетчер переривань перетворить апаратні рівні переривань конкретного типу процесора в стандартний набір рівнів переривань IRQL, З якими працюють інші модулі операційної системи. Тому при перенесенні Windows NT на нову платформу потрібно переписати коди диспетчера переривань, які займаються відображенням рівнів переривання на абстрактні рівні IRQL, А ті модулі операційної системи, які користуються цими абстрактними рівнями, змін не зажадають.

3. Апаратно-залежний код повинен бути надійно ізольований в декількох модулях. Ізоляції підлягають всі частини операційної системи, які відображають специфіку, як процесора, так і апаратної платформи в цілому. Низькорівневі компоненти операційної системи, які мають доступ до процесорної-залежним структурам даних і регістрів, повинні бути оформлені у вигляді компактних модулів, які можуть бути замінені аналогічними модулями для інших процесорів. Для зняття платформної залежності, що виникає через відмінності між комп'ютерами різних виробників, побудованими на одному і тому ж процесорі (наприклад, MIPS R4000), Повинен бути введений добре локалізований програмний шар машинно-залежних функцій.

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


питання

1. Перерахуйте функції операційних систем.

2. Визначте принцип організації файлової системи.

3. Перерахуйте функції обслуговування файлової системи.

4. Визначте основна відмінність понять «папка» і «каталог».

5. Визначте мета навігації по файловій структурі.

6. Як визначається термін «атрибути файлів»? Перерахуйте і охарактеризуйте атрибути файлів.

7. Визначте відміну однозадачних операційних систем від багатозадачних.

8. Визначте принцип динамічного розподілу ресурсів.

9. Визначте категорії реалізації засобів перевірки дисків.

10. Яким чином операційною системою усуваються логічні і фізичні помилки.

11. Яким чином операційна система реалізує надання основних засобів обслуговування комп'ютера?

12. Перерахуйте основні засоби обслуговування комп'ютерів операційною системою.

13. Який характер прояви мають логічні помилки файлової системи?

14. Визначте механізм утворення втрачених кластерів.

15. Яким чином виправляється помилка, пов'язана з втраченими кластерами?

16. Яким чином виправляється помилка, пов'язана з загальними кластерами?

17. Яким чином виправляється помилка, пов'язана з втраченими кластерами?

18. Як визначається термін «файл підкачки»?

19. Як визначається термін «дисковий кеш»?

20. Перелічіть інші функції операційних систем.

21. Як визначається термін «архітектура операційної системи»?

22. Який принцип є загальним підходом до структурування операційної системи?

23. Визначте склад ядра операційної системи

24. Перерахуйте стандартні модулі операційної системи.

25. Які модулі операційної системи є резидентними, а які транзитними.

26. Визначте компонентний склад операційної системи.

27. перерахуйте функції керуючої програми операційної системи.

28. Які елементи обчислювальної системи є статистичними ресурсами?

29. Як визначається термін «моніторинг»?

30. Як визначається термін «монітори»?

31. Які основні апаратні ресурси комп'ютера підлягають розподілу?

32. Перерахуйте основні підсистеми, що входять до складу операційної системи, які забезпечують розподіл апаратних ресурсів комп'ютера.

33. Перерахуйте основні типи моделей операційних систем, які практично використовувалися.

34. Визначте структуру монолітної операційної системи.

35. Визначте структуру багаторівневої операційної системи.

36. Визначте принципи організації моделі операційної системи «віртуальна машина».

37. Визначте призначення монітора віртуальної машини.

38. Яким чином використовується ідея віртуальної машини в даний час?

39. Який принцип лежить в основі моделі операційній системі «екзоядро»?

40. Перерахуйте основні переваги моделі «екзоядро».

41. Які режими роботи повинна підтримувати апаратура комп'ютера для забезпечення привілеї?

42. Яким чином операційна система ставить додатки в підлегле становище?

43. Визначте підхід, який є ефективним способом декомпозиції складних систем будь-якого типу.

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

45. З яких модулів складається шар «менеджери ресурсів» в багатошарової моделі операційної системи?

46. ??Як визначається термін «мікроядерна архітектура»?

47. Визначте функції мікроядра в микроядерной архітектурі операційної системи.

48. Як визначається термін «сервер операційної системи»?

49. Визначте призначення серверного (обслуговуючого) процесу в моделі операційної системи «клієнт-сервер».

50. Яку структуру має операційна система Windows XP?

51. Перерахуйте основні компоненти операційної системи Windows XP.

52. З яких системних програм складається модуль «Диспетчеризація управління програмами» в операційній системі Windows XP?

53. Який набір засобів апаратної підтримки операційної системи мають практично всі сучасні апаратні платформи?

54. Як визначається термін «переноситься операційна система»?

55. Яким правилам розробники операційних систем повинні слідувати для забезпечення властивості мобільності операційній системі?

зміст

Глава 1. Введення. 1

1.1. Обчислювальні та операційні системи. Загальні поняття. 1

1.2. Види інтерфейсів. Технології реалізації інтерфейсів. 6

1.3. Історія створення і розвитку операційних систем .. 10

1.4. Класифікація операційних систем .. 22

1.5. Вимоги, що пред'являються до сучасних операційних систем .. 32

Питання .. 37

Тести .. 38

Глава 2. Особливості архітектури операційних систем .. 40

2.1. Функції операційних систем .. 40

2.2. Компонентний склад операційних систем. Системні виклики .. 51

2.3. Архітектурні особливості та структура операційних систем .. 59

2.4. Загальна структура операційної системи Windows 2000. 74

2.5. Загальна структура операційної системи Windows XP.. 87

2.6. Архітектура операційної системи UNIХ.. 92

2.7. Апаратна залежність і переносимість операційних систем .. 96

Питання .. 101

Тести .. 103


[1] Свопінг (підкачка) - операції вивантаження сегментів в зовнішню пам'ять і їх повторна завантаження в основну пам'ять.

[2] Виклик може блокувати викликала його процедуру, якщо, наприклад, вона намагається прочитати те, що ще не введено з клавіатури, тому процедура повинна бути блокована. У цьому випадку операційна система шукає процес, який може бути запущений в такий. Пізніше, коли потрібний пристрій стане доступним, система згадає про блокованому процесі і кроки 9-11 будуть виконані.

[3] Процес можна розглядати як потік виконуваних команд або просто потік. Потік містить: лічильник команд, що відслідковує порядок виконання дій; регістри, в яких зберігаються поточні змінні; стек, що містить протокол виконання процесу. Процеси використовуються для групування ресурсів, а потоки є об'єктами, по черзі що виконуються на центральному процесорі.

[4] семафор - Ціла змінна для підрахунку сигналів запуску. Змінна може мати значення 0 (в разі відсутності збережених сигналів активації процесу) або деяке позитивне число, що відповідає кількості відкладених активізують сигналів.

[5] М'ютекс - Змінна, яка може перебувати в одному з двох станів: блокованому або неблокірованние. Використовується для блокування / розблокування процесу.

[6] події - Об'єкти ядра, які бувають двох видів: що скидаються вручну і скидаються автоматично. Кожна подія може знаходиться в одному з двох станів: встановленому і скинутий. Потік може чекати події або його викликати за допомогою конкретних функцій.

[7] таймери (Години) - стежать за часом доби, не дозволяють одному процесу надовго зайняти центральний процесор і виконують ін. Функції.

[8] Пул (англ. Pool - загальний котел) - тимчасове об'єднання.

[9] ?? - Ім'я вибрано з метою, щоб воно виявилося першим в алфавітному порядку для прискорення пошуку всіх шляхів, що починаються з літери приводу.

[10] Дескриптор - опис файлу

[11] Сокети подібні поштовим ящиками і телефонних розеток в тому сенсі, що вони утворюють користувальницький інтерфейс з мережею, як поштові скриньки формують інтерфейс з поштовою системою, телефонні розетки дозволяють абоненту підключати телефон і з'єднуватися з телефонною системою.




 Глава 1. Введення |  Обчислювальні та операційні системи. загальні поняття |  Види інтерфейсів. Технології реалізації інтерфейсів |  Історія створення і розвитку операційних систем |  Класифікація операційних систем |  Вимоги, що пред'являються до сучасних операційних систем |  Функції операційних систем |  Компонентний склад операційних систем. Системні виклики |  Архітектурні особливості та структура операційних систем |  Загальна структура операційної системи Windows 2000 |

загрузка...
© um.co.ua - учбові матеріали та реферати