Аналіз основних принципів і особливостей методів побудови операційних систем. Розгляд областей використання. Аспекти реального часу й мультипрограмності. Розгляд побудови систем мікроядерної архітектури, переваги та недоліки. Вивчення монолітних систем.
Аннотация к работе
До складу ядра, як правило, входять модулі по керуванню системою переривань, засоби по перекладу програм зі стану рахунку в стан чекання, готовності і зворотньо, засобу по розподілі таких основних ресурсів, як ОП і процесор. У цієї UNIX системи мають можливість не тільки використовувати яке-небудь готове ядро ОС, але і самому згенерувати (скомпілювати) таке ядро, що буде оптимальним для даного конкретного ПК і розвязуваних на ньому задач. Наявність декількох типів моніторів, декількох систем керування файлами дозволяє користувачам швидко і найбільше адекватно адаптувати ОС до визначеної конфігурації обчислювальної системи, забезпечити максимально ефективно завантаження технічних засобів при рішенні конкретного класу задач, одержати максимальну продуктивність при рішенні заданого класу задач. По суті, будь-яка ОС, будучи засобом розподілу ресурсів і організувати за визначеними правилами керування процесами, ховає від користувача і його додатків реальні апаратні й інші ресурси, заміняючи їх деякою абстракцією. Характеристики можуть бути довільними, але найчастіше користувачі бажають мати власну «ідеальну» по архітектурних характеристиках машину в наступному складі:-однакову по логіці роботи память (віртуальна) практично необмеженого обсягу.Більшість ОС використовує монолітне ядро, що компонується як одна програма, що працює в привілейованому режимі і використовує швидкий перехід з однієї процедури на іншу, не потребуючі переключення з привілейованого режиму в користувальницький і навпаки. Альтернативою є побудова ОС на базі мікроядра, що працює також у привілейованому режимі і виконуючого тільки мінімум функцій по керуванню апаратурою, у той час як функції ОС більш високого рівня виконують спеціалізовані компоненти ОС - сервери, що працюють у користувальницькому режимі. При такій побудові ОС працює більш повільно, тому що часто виконуються переходи між привілейованим режимом і користувацьким, зате система виходить більш гнучкої - її функції можна нарощувати, чи модифікувати звужувати, додаючи, чи модифікуючи крім серверів користувацького режиму. -Побудова ОС на базі обєктно-орієнтованого підходу дає можливість використовувати всі його достоїнства, що добре зарекомендували себе на рівні додатків, всередині ОС, а саме: акумуляцію вдалих рішень у формі стандартних обєктів, можливість створення нових обєктів на базі наявних за допомогою механізму спадкування, гарний захист даних за рахунок їхньої інкапсуляції у внутрішні структури обєкта, що робить дані недоступними для несанкціонованого використання ззовні, структуризованность системи, що складає з набору добре визначених обєктів.Багатозадачні ОС підрозділяються на три типи відповідно до використаного при їхній розробці критерія ефективності: · системи пакетної обробки (наприклад, OC EC), · системи поділу часу (UNI, VMS), · системи реального часу (QNX, RT/11). Для досягнення цієї мети в системах пакетної обробки використовуються наступна схема функціонування: на початку роботи формується пакет завдань, кожне завдання містить вимоги до системних ресурсів; з цього пакета завдань формується мультипрограмна суміш, тобто безліч одночасно виконуваних задач. Для одночасного виконання вибираються задачі, що предявляють вимоги, що відрізняються, до ресурсів, так, щоб забезпечувалося збалансоване завантаження всіх будов обчислювальної машини; так, наприклад, у мультипрограмній суміші бажано одночасна присутність обчислювальних задач і задач з інтенсивним в/в. У системах пакетної обробки переключення процесора з виконання однієї задачі на виконання іншої відбувається тільки у випадку, якщо активна задача сама відмовляється від процесора, наприклад, через необхідність виконати операцію в/в. Ясно, що системи поділу часу володіють меншою пропускною здатністю, ніж системи пакетної обробки, тому що на виконання приймається кожна запущена користувачем задача, а не та, котра "вигідна" системі, і, крім того, маються накладні витрати обчислювальної потужності на більш часте переключення процесора з задачі на задачу.До складу мікроядра звичайно входять машинно-залежні модулі, а також модулі, що виконують базові (але не всі) функції ядра по керуванню процесами, обробці переривань, керуванню ВП, пересиланню повідомлень і керуванню пристроями в/в, звязані з завантаженням чи читанням регістрів пристроїв. 1 Переніс основного обсягу функцій ядра в користувацький простір операційна система мікроядерна архітектура У загальному випадку багато менеджерів ресурсів, що є невідємними частинами звичайного ядра - ФС, підсистеми керування ВП і процесами, менеджер безпеки і т.п., - стають «периферійними» модулями, що працюють у користувацькому режимі. Працюючі в користувацькому режимі менеджери ресурсів мають принципові відмінності від традиційних утиліт і обробних програм ОС, хоча при мікроядерній архітектурі всі ці програмні компоненти також оформлені у виді додатків. Ситуації, коли одному додатку потрібно виконання функції (процедури) іншого додатка, виникають украй рідко.