1. Вступ 3 p>
1.1 ОС як розширена машина 3 p>
1.2 ОС як система керування ресурсами 3 p>
2. Класифікація ОС 4 p>
2.1 Особливості алгоритмів управління ресурсами 4
2.1.1. Підтримка багатозадачності. 4
2.1.2. Підтримка розрахованого на багато режиму. 4
2.1.3. Витісняюча і невитесняющая багатозадачність. 4
2.1.4. Підтримка багатонитковою. 4
2.1.5. Багатопроцесорна обробка. 5 p>
2.2 Особливості апаратних платформ 5 p>
2.3 Особливості областей використання 6 p>
2.4 Особливості методів побудови 6 p>
3. Мережеві операційні системи 8 p>
3.1 Структура мережної операційної системи 8 p>
3.2 Однорангові мережні ОС і ОС з виділеними серверами 10 p>
3.3 ОС для робочих груп і ОС для мереж масштабу підприємства 11 p>
4. Процеси і нитки в розподілених системах 14 p>
4.1 Поняття "нитка" 14 p>
4.2 Різні способи організації обчислювального процесу звикористанням ниток 14 p>
4.3 Питання реалізації ниток 16 p>
4.4 Нитки і RPC 16 p>
5. Сучасні концепції і технології проектування операційних систем
17 p>
5.1 Вимоги, що пред'являються до ОС 90-х років 17
5.1.1. Розширюваність 17
5.1.2. Переносимість 18
5.1.3. Працює з 19
5.1.4. Безпека 19 p>
6. Операційні системи різних фірм виробників програмногозабезпечення 21 p>
6.1 Сімейство операційних систем UNIX 21 p>
6.2 Мікроядро Mach 23
6.2.1. Історія Mach 24
6.2.2. Цілі Mach 24
6.2.3. Основні концепції Mach 24
6.2.4. Сервер Mach BSD UNIX 25 p>
6.3 Мережні продукти фірми Novell 26
6.3.1. Історія і версії мережної ОС NetWare 26
6.3.2. Версія NetWare 4.1 27 p>
6.4 Сімейство мережних ОС компанії Microsoft 29
6.4.1. Мережні продукти Microsoft 29
6.4.2. Windows NT 4.0 30
6.4.3. Області використання Windows NT 30
6.4.4. Концепції Windows NT 31
6.4.5. Працює з Windows NT з NetWare 41 p>
6.5 Операційна система OS/2 42
6.5.1. Історія розвитку OS/2 і її місце на ринку 42
6.5.2. Битва Microsoft - IBM на ринку настільних ОС 42
6.5.3. OS/2 - поступові покращення 43 p>
7. Висновок 44 p>
Список літератури 46 p>
додаток 47 p>
Введення p>
Операційна система найбільшою мірою визначає вигляд всієїобчислювальної системи в цілому. Незважаючи на це, користувачі, активнощо використовують обчислювальну техніку, часто зазнають труднощів приспробі дати визначення операційній системі. Частково це пов'язано з тим,що ОС виконує дві по суті мало пов'язані функції: забезпеченнякористувачеві-програмісту зручностей за допомогою надання для ньогорозширеної машини і підвищення ефективності використання комп'ютера шляхомраціонального управління його ресурсами. p>
1 ОС як розширена машина p>
Використання більшості комп'ютерів на рівні машинної мовиважко, особливо це стосується введення-виведення. Наприклад, дляорганізації читання блоку даних з гнучкого диску програміст можевикористовувати 16 різних команд, кожна з яких потребує 13 параметрів,таких як номер блоку на диску, номер сектора на доріжці і т. п. Коливиконання операції з диском завершується, контролер повертає 23значення, що відображають наявність і типи помилок, які, очевидно, требааналізувати. Навіть якщо не входити в курс реальних проблемпрограмування вводу-виводу, ясно, що серед програмістів знайшлося б небагато бажаючих безпосередньо займатися програмуванням цих операцій.
При роботі з диском програмісту-користувачеві досить представляти його ввигляді деякого набору файлів, кожний з яких має ім'я. Робота з файломполягає в його відкритті, виконанні читання або запису, а потім узакриття файлу. Питання подібні таким, як слід при записівикористовувати удосконалену частотну модуляцію або в якому станізараз знаходиться двигун механізму переміщення зчитують головок, неповинні хвилювати користувача. Програма, яка приховує від програміставсі реалії апаратури і надає можливість простого, зручногоперегляду зазначених файлів, читання чи запису - це, звичайно, операційнасистема. Точно також, як ОС позбавить програмістів від апаратуридискового накопичувача і надає йому простий файловий інтерфейс,операційна система бере на себе всі малоприємні справи, пов'язані зобробкою переривань, управлінням таймерами і оперативною пам'яттю, а такожінші низькорівневі проблеми. У кожному випадку та абстрактна,уявна машина, з якої, завдяки операційній системі, теперможе мати справу користувач, набагато простіше і зручніше в обігу, ніжреальна апаратура, що лежить в основі цієї абстрактної машини. p>
З цієї точки зору функцією ОС є надання користувачудеякої розширеної абовіртуальної машини, яку легше програмувати і з якою легшепрацювати, ніж безпосередньо запаратурою, що становить реальну машину. p>
2 ОС як система керування ресурсами p>
Ідея про те, що ОС перш за все система, що забезпечує зручнийінтерфейс користувачам, відповідає розгляду зверху вниз. Іншийпогляд, знизу вгору, дає уявлення про ОС як про деякий механізм,управляє всіма частинами складної системи. Сучасні обчислювальнісистеми складаються з процесорів, пам'яті, таймери, дисків, накопичувачів намагнітних стрічках, мережевих комунікаційної апаратури, принтерів та іншихпристроїв. Згідно з другим підходом функцією ОС єрозподіл процесорів, пам'яті, пристроїв і даних між процесами,конкуруючими за ці ресурси. p>
ОС повинна керувати усіма ресурсами обчислювальної машини такимчином, щоб забезпечитимаксимальну ефективність її функціонування. Критерієм ефективностіможе бути, наприклад,пропускна здатність або реактивність системи. Управління ресурсамивключає вирішення двох загальних, що не залежать від типу ресурсу завдань: p>
планування ресурсу - тобто визначення, кому, коли, а для подільнихресурсів і в якій кількості, необхідно виділити даний ресурс; відстеження стану ресурсу - тобто підтримка оперативноїінформації про те, зайнятий або не зайнятий ресурс, а для подільних ресурсів - яка кількість ресурсу вжерозподілено, а яке вільно. p>
Для рішення цих загальних задач керування ресурсами різні ОС використовуютьрізні алгоритми, що взрештою, і визначає їх структуру в цілому, включаючи характеристикипродуктивності, областьзастосування і навіть для користувача інтерфейс. Так, наприклад, алгоритмуправління процесором взначній мірі визначає, чи є ОС системою розділеннячасу, системою пакетноїобробки або системою реального часу. p>
Класифікація ОС p>
Операційні системи можуть відрізнятися особливостями реалізації внутрішніхалгоритмів управління основними ресурсами комп'ютера (процесорами,пам'яттю, пристроями), особливостями використаних методівпроектування, типами апаратних платформ, областями використання табагатьма іншими властивостями.
Нижче наведена класифікація ОС по декількох найбільш основних ознаках. P>
1 Особливості алгоритмів управління ресурсами p>
Від ефективності алгоритмів керування локальними ресурсами комп'ютера підчому залежить ефективність всієї мережевої ОС в цілому. Тому, характеризуючимережну ОС, часто призводять найважливіші особливості реалізації функцій ОС поуправління процесорами, пам'яттю, зовнішніми пристроями автономногокомп'ютера. Так, наприклад, залежно від особливостей використаногоалгоритму керування процесором, операційні системи ділять набагатозадачні і однозадачние, розраховані на багато користувачів і однокористувацький,на системи, що підтримують багатонитковою обробку і не підтримують її,на багатопроцесорні і однопроцесорні системи. p>
1 Підтримка багатозадачності. p>
По числу одночасно виконуваних завдань операційні системи можуть бутиподілені на два класи:однозадачние (наприклад, MS-DOS, MSX) ібагатозадачні (OC EC, OS/2, UNIX, Windows 95).
Однозадачние ОС в основному виконують функцію надання користувачувіртуальної машини, роблячи більш простим і зручним процес взаємодіїкористувача з комп'ютером. Однозадачние ОС включають засоби управлінняпериферійними пристроями, засоби керування файлами, засоби спілкування зкористувачем.
Багатозадачні ОС, крім перерахованих вище функцій, керують поділомспільно використовуваних ресурсів, таких як процесор, оперативна пам'ять,файли і зовнішні пристрої. p>
2 Підтримка розрахованого на багато режиму. p>
По числу одночасно працюючих користувачів ОС поділяються на:однокористувацький (MS-DOS, Windows 3.x, ранні версії OS/2);багатокористувацькі (UNIX, Windows NT).
Головною відмінністю багатокористувацьких систем від одного користувачає наявність засобів захисту інформації кожного користувача віднесанкціонованого доступу інших користувачів. Слід зазначити, що невсяка багатозадачна система є багато користувачів, і не всякаоднокористувальницька ОС є однозадачной. p>
3 Витісняюча і невитесняющая багатозадачність. p>
Найважливішим розділяються ресурсом є процесорний час. Спосіброзподілу процесорного часу між декількома одночасноіснуючими в системі процесами (або нитками) багато в чому визначаєспецифіку ОС. Серед безлічі існуючих варіантів реалізаціїбагатозадачності можна виділити дві групи алгоритмів:невитесняющая багатозадачність (NetWare, Windows 3.x);витісняє багатозадачність (Windows NT, OS/2, UNIX).
Основною відмінністю між витісняє і невитесняющім варіантамибагатозадачності є ступінь централізації механізму плануванняпроцесів. У першому випадку механізм планування процесів цілкомзосереджений в операційній системі, а в другому - розподілений міжсистемою і прикладними програмами. При невитесняющей багатозадачностіактивний процес виконується до тих пір, поки він сам, з власноїініціативою, не віддасть керування операційній системі для того, щоб тавибрала з черги інший готовий до виконання процес. При витісняючоїбагатозадачності рішення про переключення процесора з одного процесу наінший приймається операційною системою, а не самим активним процесом. p>
4 Підтримка багатонитковою. p>
Важливою властивістю операційних систем є можливість розпаралелюванняобчислень у рамках одного завдання. Багатонитковою ОС поділяє процесорнийчас не між завданнями, а між їх окремими гілками (нитками). p>
5 Багатопроцесорна обробка. p>
Іншою важливою властивістю ОС є відсутність або наявність у ній коштівпідтримки багатопроцесорної обробки - мультіпроцессірованіе.
Мультіпроцессірованіе призводить до ускладнення всіх алгоритмів керуванняресурсами.
У наші дні стає загальноприйнятим введення в ОС функцій підтримкибагатопроцесорної обробки даних. Такі функції є в операційнихсистемах Solaris 2.x фірми Sun, Open Server 3.x компанії Santa Crus
Operations, OS/2 фірми IBM, Windows NT фірми Microsoft і NetWare 4.1 фірми
Novell.
Багатопроцесорні ОС можуть класифікуватися за способом організаціїобчислювального процесу в системі з багатопроцесорної архітектурою:асиметричні ОС і симетричні ОС. Асиметрична ОС цілком виконуєтьсятільки на одному з процесорів системи, розподіляючи прикладні завдання поіншим процесорам. Симетрична ОС повністю децентралізована івикористовує весь пул процесорів, поділяючи їх між системними і прикладнимизавданнями.
Вище були розглянуті характеристики ОС, пов'язані з управлінням тількиодним типом ресурсів - процесором. Важливе вплив на вигляд операційноїсистеми в цілому, на можливості її використання в тій чи іншій областінадають особливості та інших підсистем управління локальними ресурсами --підсистем управління пам'яттю, файлами, пристроями вводу-виводу.
Специфіка ОС виявляється і в тому, яким чином вона реалізує мережевіфункції: розпізнавання і перенаправлення в мережу запитів до віддаленихресурсів, передача повідомлень по мережі, виконання віддалених запитів. Приреалізації мережевих функцій виникає комплекс завдань, пов'язаних зрозподіленим характером зберігання і обробки даних у мережі: веденнядовідкової інформації про всіх доступних в мережі ресурсах і серверах,адресація взаємодіючих процесів, забезпечення прозорості доступу,тиражування даних, узгодження копій, підтримка безпеки даних. p>
2 Особливості апаратних платформ p>
На властивості операційної системи безпосередній вплив маютьапаратні засоби, на які вона орієнтована. За типом апаратурирозрізняють операційні системи персональних комп'ютерів, міні-комп'ютерів,мейнфреймів, кластерів і мереж ЕОМ. Серед перерахованих типів комп'ютерівможуть зустрічатися як однопроцесорні варіанти, так і багатопроцесорні. Убудь-якому випадку специфіка апаратних засобів, як правило, відбивається наспецифіці операційних систем.
Очевидно, що ОС великої машини є більш складною і функціональної,ніж операційна система персонального комп'ютера. Так в ОС великих машин функції зпланування потоку виконуваних завдань, очевидно, реалізуються шляхомвикористання складних пріоритетних дисциплін і вимагають більшоїобчислювальної потужності, ніж в ОС персональних комп'ютерів. Аналогічнойде справа і з іншими функціями.
Мережева ОС має у своєму складі засоби передачі повідомлень міжкомп'ютерами по лініях зв'язку, які абсолютно не потрібні в автономній ОС.
На основі цих повідомлень мережева ОС підтримує розподіл ресурсівкомп'ютера між віддаленими користувачами, підключеними до мережі. Дляпідтримки функцій передачі повідомлень мережеві ОС містять спеціальніпрограмні компоненти, що реалізують популярні комунікаційні протоколи,такі як IP, IPX, Ethernet та інші.
Багатопроцесорні системи вимагають від операційної системи особливоїорганізації, за допомогою якої сама операційна система, а такожпідтримувані нею програми могли б виконуватися паралельно окремимипроцесорами системи. Паралельна робота окремих частин ОС створюєдодаткові проблеми для розробників ОС, тому що в цьому випадку набагатоскладніше забезпечити узгоджений доступ окремих процесів до загальнихсистемних таблиць, виключити ефект перегонів і інші небажанінаслідки асинхронного виконання робіт.
Інші вимоги пред'являються до операційних систем кластерів. Кластер
- Слабко пов'язана сукупність декількох обчислювальних систем, що працюютьспільно для виконання спільних програм, і представляє користувачамєдиною системою. Поряд із спеціальною апаратурою для функціонуваннякластерних систем необхідна і програмна підтримка з бокуопераційної системи, яка зводиться в основному до синхронізації доступу доресурсів, що розділяються, виявлення відмов і динамічної реконфігураціїсистеми. Однією з перших розробок у галузі кластерних технологій булирішення компанії Digital Equipment на базі комп'ютерів VAX. Нещодавно цієїкомпанією укладено угоду з корпорацією Microsoft про розробкукластерної технології, що використовує Windows NT. Кілька компанійпропонують кластери на основі UNIX-машин.
Поряд з ОС, орієнтованими на зовсім певний тип апаратноїплатформи, існують операційні системи, спеціально розроблені такимчином, щоб вони могли бути легко перенесені з комп'ютера одного типу накомп'ютер іншого типу, так звані мобільні ОС. Найбільш яскравимприкладом такої ОС є популярна система UNIX. У цих системахапаратно-залежні місця ретельно локалізовані, так що при перенесеннісистеми на нову платформу переписуються тільки вони. Засобом,що полегшує перенесення іншої частини ОС, є написання її на машинно -незалежному мовою, наприклад, на С, який і був розроблений дляпрограмування операційних систем. p>
3 Особливості областей використання p>
багатозадачні ОС поділяються на три типи відповідно довикористаними при їх розробці критеріями ефективності:системи пакетної обробки (наприклад, OC EC),системи поділу часу (UNIX, VMS),системи реального часу (QNX, RT/11).
Системи пакетної обробки призначалися для вирішення завдань в основномуобчислювального характеру, що не вимагають швидкого отримання результатів.
Головною метою і критерієм ефективності систем пакетної обробки ємаксимальна пропускна здатність, тобто рішення максимального числазавдань в одиницю часу. Для досягнення цієї мети в системах пакетноїобробки використовуються наступна схема функціонування: на початку роботиформується пакет завдань, кожне завдання містить вимогу до системнихресурсів; з цього пакета завдань формується мультипрограмному суміш, тоє безліч одночасно виконуваностіх завдань. Для одночасноговиконання вибираються завдання, що пред'являють відрізняються вимоги доресурсів, так, щоб забезпечувалась збалансована завантажити всіпристроїв обчислювальної машини; так, наприклад, в мультипрограмній сумішібажано одночасна присутність обчислювальних завдань і завдань зінтенсивним введенням-виводом. Таким чином, вибір нового завдання з пакетазавдань залежить від внутрішньої ситуації, що складається в системі, тобтовибирається "вигідне" завдання. Отже, у таких ОС неможливогарантувати виконання того чи іншого завдання протягом певногоперіоду часу. У системах пакетної обробки перемикання процесора звиконання одного завдання на виконання іншої відбувається тільки у випадку,якщо активна завдання сама відмовляється від процесора, наприклад, черезнеобхідність виконати операцію вводу-виводу. Тому одне завдання моженадовго зайняти процесор, що робить неможливим виконання інтерактивнихзавдань. Таким чином, взаємодія користувача з обчислювальною машиною,на якій установлена система пакетної обробки, зводиться до того, що вінприносить завдання, віддає його диспетчеру-оператору, а в кінці дня післявиконання всього пакета завдань отримує результат. Очевидно, що такийпорядок знижує ефективність роботи користувача.
Системи поділу часу покликані виправити основний недолік системпакетної обробки - ізоляцію користувача-програміста від процесувиконання його завдань. Кожному користувачу системи поділу часунадається термінал, з якого він може вести діалог зі своєюпрограмою. Так як в системах розділення часу кожній задачі виділяєтьсятільки квант процесорного часу, ні одна задача не займає процесорнадовго, і час відповіді виявляється прийнятним. Якщо квант обранийдосить невеликим, то у всіх користувачів, що одночасно працюють наодній і тій же машині, складається враження, що кожен з ниходноосібно використовує машину. Ясно, що системи поділу часу володіютьменшою пропускною здатністю, ніж системи пакетної обробки, тому що навиконання приймається кожна запущена користувачем завдання, а не та,яка "вигідна" системі, і, крім того, є накладні витратиобчислювальної потужності на більш часте переключення процесора з задачі назавдання. Критерієм ефективності систем розділення часу є немаксимальна пропускна здатність, а зручність і ефективність роботикористувача.
Системи реального часу застосовуються для керування різнимитехнічними об'єктами, такими, наприклад, як верстат, супутник, науковаекспериментальна установка або технологічними процесами, такими, якгальванічна лінія, доменний процес і т.п. У всіх цих випадкахіснує гранично припустимий час, протягом якого має бутивиконана та чи інша програма, що керує об'єктом, у противному випадкуможе статися аварія: супутник вийде з зони видимості, експериментальнідані, що надходять з датчиків, будуть втрачені, товщина гальванічногопокриття не буде відповідати нормі. Таким чином, критеріємефективності для систем реального часу є їхня здатністьвитримувати заздалегідь задані інтервали часу між запуском програми іодержанням результату (керуючого впливу). Цей час називаєтьсячасом реакції системи, а відповідне властивість системи --реактивністю. Для цих систем мультипрограмному суміш являє собоюфіксований набір заздалегідь розроблених програм, а вибір програми навиконання здійснюється виходячи з поточного стану об'єкта або ввідповідно до розкладу планових робіт.
Деякі операційні системи можуть поєднувати в собі властивості системрізних типів, наприклад, частина задач може виконуватися в режимі пакетноїобробки, а частина - у режимі реального часу або в режимі поділучасу. У таких випадках режим пакетної обробки часто називають фоновимрежимом. p>
4 Особливості методів побудови p>
При описі операційної системи часто вказуються особливості їїструктурної організації та основні концепції, покладені в її основу.
До таких базових концепцій відносяться:
Способи побудови ядра системи - монолітне ядро або мікроядерної підхід.
Більшість ОС використовує монолітне ядро, що компонується як одинпрограма, що працює в привілейованому режимі і що використовує швидкіпереходи з однієї процедури на іншу, що не вимагають перемикання зпривілейованого режиму в призначений для користувача і навпаки. Альтернативоює побудова ОС на базі мікроядра, що працює також упривілейованому режимі і виконує тільки мінімум функцій зуправління апаратурою, у той час як функції ОС більш високого рівнявиконують спеціалізовані компоненти ОС - сервери, що працюють врежимі користувача. При такій побудові ОС працює повільніше,тому що часто виконуються переходи між привілейованим режимом іпризначеним для користувача, зате система виходить більш гнучкою - її функції можнанарощувати, модифікувати чи звужувати, додаючи, модифікуючи або виключаючисервери користувацького режиму. Крім того, сервери добре захищені одинвід одного, як і будь-які користувацькі процеси.
Побудова ОС на базі об'єктно-орієнтованого підходу дає можливістьвикористовувати всі його переваги, які добре зарекомендували себе на рівнідодатків, всередині операційної системи, а саме: акумуляцію вдалихрішень у формі стандартних об'єктів, можливість створення нових об'єктівна базі наявних за допомогою механізму успадкування, хороший захист данихза рахунок їх інкапсуляції у внутрішні структури об'єкта, що робить данінедоступними для несанкціонованого використання ззовні,структурізованность системи, що складається з набору добре певнихоб'єктів.
Наявність декількох прикладних середовищ дає можливість у рамках однієї ОСодночасно виконувати програми, розроблені для декількох ОС. Багатосучасні операційні системи підтримують одночасно прикладні середовища
MS-DOS, Windows, UNIX (POSIX), OS/2 або хоча б деякого підмножини зцього популярного набору. Концепція множинних прикладних середовищ найбільшпросто реалізується в ОС на базі мікроядра, над якими працюють різнісервери, частина яких реалізують прикладну середу тієї чи іншої операційноїсистеми.
Розподілена організація операційної системи дозволяє спростити роботукористувачів і програмістів в мережевих середовищах. У розподіленої ОСреалізовані механізми, які дають можливість користувачеві представляти ісприймати мережу у вигляді традиційного однопроцесорній комп'ютера.
Характерними ознаками розподіленої організації ОС є: наявністьєдиної довідкової служби поділюваних ресурсів, єдиної служби часу,використання механізму виклику віддалених процедур (RPC) для прозорогорозподілу програмних процедур по машинах, багатонитковою обробки,дозволяє распараллелівать обчислення в рамках одного завдання і виконуватице завдання відразу на декількох комп'ютерах мережі, а також наявність іншихрозподілених служб. p>
Мережеві операційні системи p>
1 Структура мережної операційної системи p>
Мережева операційна система складає основу будь-якої обчислювальної мережі.
Кожен комп'ютер в мережі в значній мірі автономний, тому підмережевою операційною системою в широкому сенсі розуміється сукупністьопераційних систем окремих комп'ютерів, що взаємодіють з метою обмінуповідомленнями і розподілу ресурсів за єдиними правилами - протоколами. У вузькомурозумінні мережева ОС - це операційна система окремого комп'ютера,що забезпечує йому можливість працювати в мережі. p>
p>
Рис. 1.1. Структура мережної ОС
У мережевій операційній системі окремої машини можна виділити кількачастин (малюнок 1.1):
Засоби керування локальними ресурсами комп'ютера: функції розподілуоперативної пам'яті між процесами, планування та диспетчеризаціїпроцесів, управління процесорами в мультипроцесорних машинах, управлінняпериферійними пристроями та інші функції управління ресурсами локальних
ОС.
Засоби надання власних ресурсів і послуг у спільне користування --серверна частина ОС (сервер). Ці кошти забезпечують, наприклад,блокування файлів і записів, що необхідно для їх спільноговикористання; ведення довідників імен мережевих ресурсів; обробкузапитів віддаленого доступу до власної файлової системи і бази даних;управління чергами запитів віддалених користувачів до своїх периферійнимпристроїв.
Засоби запиту доступу до віддалених ресурсів і послуг і їх використання
- Клієнтська частина ОС (редиректор). Ця частина виконує розпізнавання іперенаправлення в мережу запитів до віддалених ресурсів від додатків ікористувачів, при цьому запит поступає від програми в локальній формі, апередається в мережу в іншій формі, яка відповідає вимогам сервера.
Клієнтська частина також здійснює прийом відповідей від серверів іперетворення їх у локальний формат, так що для виконання програмилокальних і віддалених запитів невиразно.
Комунікаційні засоби ОС, за допомогою яких відбувається обмінповідомленнями в мережі. Ця частина забезпечує адресацію і буферизаціюповідомлень, вибір маршруту передачі повідомлення по мережі, надійність передачі ітощо, тобто є засобом транспортування повідомлень.
В залежності від функцій, покладених на конкретний комп'ютер, в йогоопераційній системі може бути відсутня або клієнтська, або серверначастини.
На рисунку 1.2 показано взаємодія мережевих компонентів. Тут комп'ютер
1 виконує роль "чистого" клієнта, а комп'ютер 2 - роль "чистого" сервера,відповідно на першій машині відсутній серверна частина, а на другому --клієнтська. На малюнку показаний окремо компонент клієнтської частини --редиректор. Саме редиректор перехоплює всі запити, що надходять віддодатків, і аналізує їх. Якщо виданий запит до даного ресурсукомп'ютера, то він переадресовується відповідної підсистеми локальної
ОС, якщо ж це запит до віддаленого ресурсу, то він переправляється в мережу.
При цьому клієнтська частина перетворить запит з локальної форми в мережевійформат і передає його транспортної підсистемі, яка відповідає за доставкуповідомлень вказаною сервера. Серверна частина операційної системикомп'ютера 2 приймає запит, перетворює його і передає для виконаннясвоєї локальної ОС. Після того, як результат отримано, сервер звертається дотранспортній підсистемі і направляє відповідь клієнту, який видав запит.
Клієнтська частина перетворює результат у відповідний формат і адресуєйого тому додатку, яка видала запит. p>
p>
Рис. 1.2. взаємодія компонентів операційної системи при взаємодії комп'ютерів
На практиці склалося декілька підходів до побудови мережевих операційнихсистем (малюнок 1.3). p>
p>
Рис. 1.3. Варіанти побудови мережевих ОС
Перші мережеві ОС представляли собою сукупність існуючої локальної ОСі надбудований над нею мережевої оболонки. При цьому в локальну ОСвбудовувався мінімум мережевих функцій, необхідних для роботи мережноїоболонки, яка виконувала основні мережеві функції. Прикладом такогопідходу є використання на кожній машині мережі операційної системи
MS DOS (у якої починаючи з її третьої версії з'явилися такі вбудованіфункції, як блокування файлів і записів, необхідні для спільногодоступу до файлів). Принцип побудови мережевих ОС у вигляді мережевої оболонкинад локальної ОС використовується і в сучасних ОС, таких, наприклад, як
LANtastic або Personal Ware.
Однак більш ефективним є шлях розробки операційнихсистем, спочатку призначених для роботи в мережі. Мережеві функції у ОСтакого типу глибоко вбудовані в основні модулі системи, що забезпечує їхлогічну стрункість, простоту експлуатації та модифікації, а також високупродуктивність. Прикладом такої ОС є система Windows NT фірми
Microsoft, яка за рахунок убудованість мережевих засобів забезпечує більшвисокі показники продуктивності і захищеності інформації зпорівняно з мережевою ОС LAN Manager тієї ж фірми (спільна розробка з
IBM), що є надбудовою над локальною операційною системою OS/2. P>
2 Однорангові мережні ОС і ОС з виділеними серверами p>
Залежно від того, як розподілені функції між комп'ютерами мережі,мережні операційні системи, а отже, і мережі поділяються на двакласу: однорангові і двухранговие (малюнок 1.4). Останні частіше називаютьмережами з виділеними серверами. p>
p>
(а) p>
p>
(б) p>
Рис. 1.4. (а) - Peer-мережа, (б) - Двухранговая мережа
Якщо комп'ютер надає свої ресурси іншим користувачам мережі, то вінвідіграє роль сервера. При цьому комп'ютер, який звертається до ресурсів іншогомашини, є клієнтом. Як вже було сказано, комп'ютер, що працює вмережі, може виконувати функції або клієнта, або сервера, або поєднуватиобидві ці функції.
Якщо виконання будь-яких серверних функцій є основним призначеннямкомп'ютера (наприклад, надання фото в загальне користування всіміншим користувачам мережі або організація спільного використанняфаксу, або надання всім користувачам мережі можливості запуску наданому комп'ютері своїх додатків), то такий комп'ютер називаєтьсявиділеним сервером. Залежно від того, який ресурс сервера єрозділяються, він називається файл-сервером, факс-сервером, принт-сервером,сервером додатків і т.д.
Очевидно, що на виділених серверах бажано встановлювати ОС,спеціально оптимізовані для виконання тих чи інших серверних функцій.
Тому в мережах з виділеними серверами найчастіше використовуються мережевіопераційні системи, до складу яких входить кількох варіантів ОС,відрізняються можливостями серверних частин. Наприклад, мережева ОС Novell
NetWare має серверний варіант, оптимізований для роботи в якостіфайл-сервера, а також варіанти оболонок для робочих станцій з різнимилокальними ОС, причому ці оболонки виконують виключно функції клієнта.
Іншим прикладом ОС, орієнтованої на побудову мережі з виділенимсервером, є операційна система Windows NT. На відміну від NetWare,обидва варіанти даної мережевої ОС - Windows NT Server (для виділеногосервера) і Windows NT Workstation (для робочої станції) - можутьпідтримувати функції і клієнта і сервера. Але серверний варіант Windows NTмає більше можливостей для надання ресурсів свого комп'ютераіншим користувачам мережі, тому що може виконувати більш широкий набірфункцій, підтримує більшу кількість одночасних з'єднань зклієнтами, реалізує централізоване управління мережею, має більшерозвинені засоби захисту.
Виділений сервер не прийнято використовувати в якості комп'ютера длявиконання поточних завдань, не пов'язаних з його основним призначенням, тому щоце може зменшити продуктивність його роботи як сервера. У зв'язку зтакими міркуваннями в ОС Novell NetWare на серверній частині можливістьвиконання звичайних прикладних програм взагалі не передбачена, тобтосервер не містить клієнтської частини, а на робочих станціях відсутнісерверні компоненти. Однак в інших мережевих ОС функціонування навиділеному сервері клієнтської частини цілком можливо. Наприклад, підуправлінням Windows NT Server можуть запускатися звичайні програмилокального користувача, які можуть зажадати виконання клієнтськихфункцій ОС при появі запитів до ресурсів інших комп'ютерів мережі. Прице робочі станції, на яких встановлена ОС Windows NT Workstation,можуть виконувати функції невиділений сервера.
Важливо зрозуміти, що не дивлячись на те, що в мережі з виділеним сервером всекомп'ютери в загальному випадку можуть виконувати одночасно ролі і сервера, іклієнта, ця мережа функціонально не симетрична: апаратно і програмно вній реалізовані два типи комп'ютерів - одні, більшою міроюорієнтовані на виконання серверних функцій і працюють підуправлінням спеціалізованих серверних ОС, а інші - в основномувиконують клієнтські функції та працюють під управліннямвідповідного цьому призначенню варіанти ОС. Функціональнанесиметричність, як правило, викликає і несиметричність апаратури - длявиділених серверів використовуються більш потужні комп'ютери з великимиобсягами оперативної і зовнішньої пам'яті. Таким чином, функціональнанесиметрично?? сть в мережах з виділеним сервером супроводжуєтьсянесиметричність операційних систем (спеціалізація ОС) і апаратноїнесиметричність (спеціалізація комп'ютерів).
У тимчасових мережах всі комп'ютери рівні в правах доступу до ресурсів одинодного. Кожен користувач може за своїм бажанням оголосити будь-якоїресурс свого комп'ютера розділяються, після чого інші користувачі можутьйого експлуатувати. В таких мережах на всіх комп'ютерах встановлюється одині та ж ОС, яка надає всім комп'ютерам у мережі потенційнорівні можливості. Однорангові мережі можуть бути побудовані, наприклад, набазі ОС LANtastic, Personal Ware, Windows for Workgroup, Windows NT
Workstation.
У тимчасових мережах також може виникнути функціональнанесиметричність: одні користувачі не бажають розділяти свої ресурси зіншими, і в такому випадку їхні комп'ютери виконують роль клієнта, за іншимикомп'ютерами адміністратор закріпив тільки функції з організаціїспільного використання ресурсів, а значить вони є серверами, втретьому випадку, коли локальний користувач не заперечує противикористання його ресурсів і сам не виключає можливості звернення доінших комп'ютерів, ОС, що встановлюється на його комп'ютері, повинна включатиі серверну, і клієнтську частини. На відміну від мереж з виділенимисерверами, у тимчасових мережах відсутня спеціалізація ОС в залежностівід переважної функціональної спрямованості - клієнта або сервера. Всіваріації реалізуються засобами конфігурування одного і того ж варіанти
ОС.
Однорангові мережі простіше в організації і експлуатації, однак вонизастосовуються в основному для об'єднання невеликих груп користувачів, що непред'являють великих вимог до обсягів збереженої інформації, їїзахищеності від несанкціонованого доступу і до швидкості доступу. Припідвищених вимогах до цих характеристиках більш придатними єдвухранговие мережі, де сервер краще вирішує завдання обслуговуваннякористувачів своїми ресурсами, так як його апаратура та мережеваопераційна система спеціально спроектовані для цієї мети. p>
3 ОС для робочих груп і ОС для мереж масштабу підприємства p>
Мережеві операційні системи мають різні властивості в залежності від того,призначені вони для мереж масштабу робочої групи (відділу), для мережмасштабу кампуса або для мереж масштабу підприємства.
Мережі відділів - використовуються невеликою групою співробітників, які вирішують загальнізавдання. Головною метою мережі відділу є розділення локальних ресурсів,таких як додатки, дані, лазерні принтери і модеми. Мережі відділівзвичайно не розділяються на підмережі.
Мережі кампусів - з'єднують кілька мереж відділів всередині окремої будівліабо всередині однієї території підприємства. Ці мережі є все щелокальними мережами, хоча і можуть покривати територію в кілька квадратнихкілометрів. Сервіси такої мережі включають взаємодію між мережамивідділів, доступ до баз даних підприємства, доступ до факс-серверів,високошвидкісних модемів і високошвидкісних принтерів.
Се