Розподілені операційні системи

Розподілені операційні системи

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


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


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


Існує два типи розподілених операційних систем. Мультипроцессорная операційна система (multiprocessor operating system) управляє ресурсами мультипроцессора. Мультікомпьютерная операційна система (multicomputeroperating system) розробляється для гомогенних мультікомпьютеров.


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


Розподілені операційні системи, такі як Mach і Chorus можуть застосовуватися і при мультімашінной, і при мультипроцессорной організації.

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

3) абсолютно "прозорі" розподілені системи. в яких для звернення до файлів, розташованим на інших машинах, досить вказівки їх стандартних складових імен; розпізнавання цих файлів як віддалених входить в обов'язки ядра. Маршрути пошуку файлів, зазначені в їх складових іменах, перетинають машинні кордону в точках монтування, скільки б таких точок не був сформований при монтуванні файлових систем на дисках.

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

Проекти для створення розподілених операційних систем

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


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

метакомп'ютингу

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


Метакомпьютерние системи можна характеризувати наступним:

1. Об'єднують велику кількість комп'ютерів з різною архітектурою і різною потужністю за допомогою локальної або глобальної середовища.

2. Надають прозорий однорідний доступ до метакомпьютерам.

3. Чи мають динамічну конфігурацію: обчислювальні системи можуть як підключатися, так і відключатися від системи, не порушуючи функціональності всієї системи.

4. Обчислювальні вузли практично не взаємодіють один з одним

Розподілена операційне середовище - новий клас програмного забезпечення, що вимагається для втілення ідеї метакомп'ютингу


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

Схожі статті