Особливості апаратних платформ

На властивості операційної системи безпосередній вплив мають апаратні засоби, на які вона орієнтована. За типом апаратури розрізняють операційні системи

Ø персональних комп'ютерів;

Ø міні-комп'ютерів;

Ø кластерів і мереж ЕОМ;

Ø Розподілені ОС.

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

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

Мережеві ОС. Вони включають можливість доступу до інших комп'ютерів локальної мережі, роботи з файловими та іншими серверами. Мережна ОС має у своєму складі засоби передачі повідомлень між комп'ютерами та лініями зв'язку, що зовсім не потрібно автономній ОС. На основі цих повідомлень мережна ОС підтримує поділ ресурсів комп'ютера між вибраними користувачами, підключеними до мережі. Для підтримки функцій передачі повідомлень мережні ОС містять спеціальні програмні компоненти, що реалізують популярні комунікаційні протоколи, такі як IP, IPX, Ethernet і інші.

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

Інші вимоги висуваються до операційних систем кластерів. Кластер - слабо зв'язана сукупність декількох обчислювальних систем, що працюють спільно для виконання загальних прикладних програм, і що виглядають для користувача як єдина система. Поряд зі спеціальною апаратурою для функціонування кластерних систем необхідна і програмна підтримка з боку операційної системи, що зводиться в основному до синхронізації доступу до розділюваних ресурсів, виявленню відмов і динамічного реконфігурування системи. Однієї з перших розробок в області кластерних технологій були рішення компанії Digital Equipment на базі комп'ютерів VAX. Цією компанією укладена угода з корпорацією Microsoft про розробку кластерної технології, що використовує технології Windows NT. Кілька компаній пропонують кластери на основі UNIX-машин.

Розподілені ОС. Їх відмінність від мережевих полягає в тому, що розподілена система, використовуючи ресурси локальної мережі, представляє їх користувачеві як єдину систему, не розділену на окремі машини.

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: