- •Історія розвитку ос [1, с. 13-28; 2]
- •Типи архітектур операційних систем. Ядро операційною системи [1, с. 57-64]
- •Реалізація архітектури операційних систем
- •Вимоги до обладнання
- •Сьогодення
- •Мережеві операційні системи. Розподілені операційні системи; [1, с. 39-50; 3]
- •Функції ядра, мікроядерні операційні системи (архітектура типу «клієнт-сервер»); [1, с. 74-76] Склад та функції операційних систем
- •[Ред.]Керування процесами
- •[Ред.]Керування пам’яттю
- •[Ред.]Керування пристроями
- •[Ред.]Системні виклики
- •Мікроядерна архітектура
- •Переваги і недоліки мікроядерної архітектури
- •Висновки
- •Варианты архитектуры клиент-сервер
- •Одиниці вимірювання інформації та збереження чисел у комп'ютері [4, c.50-63].
- •Одиниці вимірювання інформації
- •Поняття про позиційні системи числення
- •Двійкова система числення
- •Шістнадцяткова система числення
- •Збереження чисел у комп'ютері
- •Число з фіксованою комою
- •Числа з плаваючою комою.
Висновки
Найпростіша структуризація ОС полягає в поділі всіх компонентів ОС на модулі, що виконують основні функції ОС (ядро), і модулі, що виконують допоміжні функції ОС. Допоміжні модулі ОС оформляються або у виді застосувань (утиліти і системні оброблювані програми), або у вигляді бібліотек процедур. Допоміжні модулі завантажуються в оперативну пам'ять тільки на час виконання своїх функцій, тобто є транзитними. Модулі ядра постійно знаходяться в оперативній пам'яті, тобто є резидентными.
При наявності апаратної підтримки режимів з різними рівнями повноважень стійкість ОС може бути підвищена шляхом виконання функцій ядра в привілейованому режимі, а допоміжних модулів ОС і застосувань — у користувацькому. Це дає можливість захистити коди і дані ОС і застосувань від несанкціонованого доступу. ОС може виступати в ролі арбітра в суперечках застосувань за ресурси.
Ядро, виступаючи структурним елементом ОС, у свою чергу, може бути логічно розкладене на наступні шари (починаючи із самого нижнього):
машинно-залежні компоненти ОС;
базові механізми ядра;
менеджери ресурсів;
інтерфейс системних викликів.
У багатошаровій системі кожен шар обслуговує вышележачий шар, виконуючи для нього деякий набір функцій, що утворять міжщаровий інтерфейс. На основі функцій нижележачого шарую наступний вгору по ієрархії шар будує свої функції — більш складні і більш потужні, котрі, у свою чергу, виявляються примітивами для створення ще більш потужних функцій вышележачого шару. Багатошарова організація ОС істотно спрощує розробку і модернізацію системи.
Будь-яка ОС для рішення своїх задач взаємодіє з апаратними засобами комп'ютера, а саме: засобами підтримки привілейованого режиму і трансляції адрес, засобами переключення процесів і захисту областей пам'яті, системою переривань і системним таймером. Це робить ОС машинно-залежною, прив'язаною до визначеної апаратної платформи.
Переносимість ОС може бути досягнута при дотриманні наступних правил. По-перше, велика частина коду повинна бути написана мовою, транслятори якої наявні на всіх комп'ютерах, куди передбачається переносити систему. По-друге, обсяг машинно-залежних частин коду, що безпосередньо взаємодіють з апаратними засобами, повинний бути по можливості мінімізований. По-третє, аштаратно-залежний код повинний бути надійно локалізований у декількох модулях.
Мікроядерна архітектура є альтернативою класичному способу побудови операційної системи, відповідно до якого всі основні функції операційної системи, що складають багатошарове ядро, виконуються в привілейованому режимі. У мікроядерних ОС у привілейованому режимі залишається працювати тільки дуже невелика частина ОС, називана мікроядром. Всі інші высокорівневі функції ядра оформляються у вигляді застосувань, що працюють у користувацькому режимі.
Мікроядерні ОС задовольняють більшості вимо сучасних ОС, володіючи переносимістю, розширюваністю, надійністю і створюючи хороші передумови для підтримки розподілених застосувань. За ці достоїнства доводиться розплачуватися зниженням продуктивності, що є основним недоліком мікроядерної архітектури.
Прикладне програмне середовище — сукупність засобів ОС, призначена для організації виконання застосувань, що використовують визначену систему машинних команд, визначений тип API і визначений формат програми, що виконується. Кожна ОС створює як мінімум одне прикладне програмне середовище. Проблема складається в забезпеченні сумісності декількох програмних середовищ у рамках однієї ОС. При побудові множинних прикладних середовищ використовуються різні архітектурні рішення, концепції емуляціїдвійкового коду, трансляції API.
