logo
Responses

16. Призначення, загальна структура, характеристики операційної системи. Сучасні операційні системи.

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

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

Найбільшою популярністю у світі на даний момент мають операційні системи фірми Microsoft. Їх частка складає близько 90% серед всіх операційних систем. Найбільш стійкі системи цієї фірми засновані на технології NT (Windows NT / XP / Vista / 7). Однак Windows, природно, не єдина сучасна операційна система. У інших сучасних ОС, наприклад Linux, UNIX, OS / 2, мають свої переваги і недоліки. Linux надає найбільш досконалу захист, ніж Windows, і має більш продуманий інтерфейс; UNIX застосовується там, де потрібна висока надійність систем. Великим недоліком OS / 2 і UNIX є досить убогий вибір програмних засобів, і тут Windows виграє в інших операційних систем. Важливою рисою багатьох ОС є здатність їх взаємодії один з одним, за допомогою мережі, що дозволяє комп'ютерам взаємодіяти один з одним, як в рамках локальних обчислювальних мереж (ЛОМ), так і в глобальній мережі Інтернет. Будь-яка операційна система оперує деякими сутностями, які разом зі способами управління ними багато в чому характеризують її властивості. До таких сутностей можуть ставитися поняття процесу, об'єкта, файлу і т.д.

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

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

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

До числа основних характеристик операційних систем відносяться: розрядність, підтримка багатопроцесорності, багатозадачності, підтримка багатокористу-вацького режиму.

Розрядність операційної системи показує, яка розрядність внутрішньої шини даних центрального процесора здатна підтримувати операційна система. Розрядність операційної системи говорить про те, з якими програмами вона буде працювати. Всі сучасні операційні системи підтримують 32-розрядний інтерфейс прикладних програм. Розрядність коду інтерфейсу прикладних програм має безпосереднє відношення до адресного простору ОЗУ. Адресний простір пам'яті - це є область адресів підсистеми пам'яті, яка розпреділяється між окремими програмними модулями операційної системи і даними. Адресний простір розприділяється також між відеопам'яттю, пам'яттю BIOS, бдоком інформації захищеного режиму роботи. Операційна система може підтримувати два режими роботи центрального процесора - реальний і захищений. В реальному режимі роботи, який є характерний для операційної системи MS DOS, всі програми і дані розміщуються в одній області оперативної пам'яті. Таким чином кожний користувач може ввійти в любу системну програму і нехотячи її зіпсувати. 32-розрядні операційні системи, як правило можуть підтримувати захищений режим роботи, який дозволяє зберігати програми і дані окремо в залежності від їх важливості в системі. Найбільш важливі і цінні програми і дані ядра операційної системи. Вони зберігаються в одній області пам'яті, яка має найвищіправа доступу. Системні програми і дані мають меншу цінність і на ієрархічній драбині розміщуються нижче, ніж програми ядра. Вони розміщені в другій області пам'яті. Найнижчою степінню значимостідля системи володіють програми і дані користувачів, вони також розташовуються в окремій області пам'яті.

Всього існує чотири кольца захищеності системи від несинкціонованого доступу до привілейованих програм і даних. Всі програми і дані захищені також установками атрибутів.

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

Більшість сучасних операційних систем - багатозадачні. Вони керують розприділенням ресурсів обчислювалбної системи між задачами і забезпечують:

- можливість одночасної чи послідовної роботи декількох додатків;

- можливість обміну між додатками;

- можливість спільного використання програмних, апаратних і інших ресурсів обчислювальної системи декількома додатками.

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

Переносимість операційної системи - це можливість операційної системи працювати на комп'ютерах, які базуються на центральних процесорах з різною архітектурою.

Функції операційної системи. Оболонка, її характеристика.

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

" Управління виконанням процесів посередництвом їх створення, завершення до призупинки і організації взаємодії між ними.

" Планування черговості надання виконуваних процесом часу ЦП (диспетчиризація). Процеси працюють з ОЦП в режимі розподілу часу. ЦП виконує процес, після завершення відведеного ядром кванта часу процес припиняється, ядро активізує виконання іншогопроцесу. Пізніше ядро запускає призупинений процес.

" Виділення виконуваному процесу ОП. Ядро ОС дає процесам можливість сумісно використовувати ділянки адресного простору на певних умовах, захищаючи при цьому адресний прості, виділений процесу, від втручання ззовні.

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

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

" Управління доступом процесів до периферійних пристроїв: клавіатура, дисководи, сіткове обладнання.

Виконання ядром своїх ф-цій досить очевидне. Наприклад, вона узнає, що даний файл є звичайним файлом або пристроєм, але ховає цю відмінність від процесів користувача. Так само воно, формуючи інформацію файла для внутрішнього зберігання, захищає внутрішній формат від користувацьких процесів повертаючи їм невідформатований потік байтів. Накінець, ядро реалізує ряд необхідних ф-цій по забезпеченню виконання процесів користувацького рівня за виключенням ф-цій, які можуть бути реалізовані на самому користувацькому рівні. Наприклад, ядро виконує дії, які необхідні shell'y читати дані, які вводяться з клавіатури, динамічно породжувати процеси, синхронізувати виконання процесів, відкривати канали і переадресовувати ввід/ вивід. Користувачі можуть розробляти свої версії комп'ютерного процесора shell з тим, щоб привести робоче середовище у відповідність з своїми вимогами, не затрогуючи інших користувачів. Такі програми користуються тими ж послугами ядра, що й стандартний процесор shell.

17. Версії операційної системи Windows.