18197

Основні поняття, класифікація ОС

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2013-07-07

49 KB

5 чел.

Лекція 2

Основні поняття, класифікація ОС

У процесі еволюції виникло кілька важливих концепцій, які стали невід'ємною частиною теорії й практики ОС. Тут дається їхній короткий опис.

Системні виклики

У будь-якій операційній системі підтримується механізм, що дозволяє користувальницьким програмам звертатися до послуг ядра ОС. В операційних системах найбільш відомої радянської обчислювальної машини БЭСМ-6 відповідні засоби "спілкування" з ядром називалися екстракодами, в операційних системах IBM вони називалися системними макрокомандами й т.д. В ОС Unix такі засоби називають системними викликами.

Системні виклики (system calls) – це інтерфейс між операційною системою й користувальницькою програмою. Вони створюють, видаляють і використають різні об'єкти, головні з яких – процеси й файли. Користувальницька програма запитує сервіс в операційної системи, здійснюючи системний виклик. Є бібліотеки процедур, які завантажують машинні регістри певними параметрами й здійснюють переривання процесора, після чого керування передається оброблювачеві даного виклику, що входить у ядро операційної системи. Ціль таких бібліотек - зробити системний виклик схожим на звичайний виклик підпрограми.

Основна відмінність полягає в тому, що при системному виклику завдання переходить у привілейований режим або режим ядра (kernel mode). Тому системні виклики іноді ще називають програмними перериваннями, на відміну від апаратних переривань, які частіше називають просто перериваннями.

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

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

Переривання

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

Виняткові ситуації

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

Файли

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

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

Класифікація ОС

Існує кілька схем класифікації операційних систем. Нижче наведена класифікація по деяких ознаках з погляду користувача.

Реалізація багатозадачності

По числу одночасно виконуваних завдань операційні системи можна розділити на два класи:

багатозадачні (Unix, OS/2, Windows);

однозадачні (наприклад, MS-DOS).

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

Багатозадачний режим, що втілює в собі ідею поділу часу, називається що витісняє (preemptive). Кожній програмі виділяється квант процесорного часу, після закінчення якого керування передається іншій програмі. Говорять, що перша програма буде витиснута. У режимі, що витісняє, працюють користувальницькі програми більшості комерційних ОС.

У деяких ОС (Windows 3.11, наприклад) користувальницька програма може монополізувати процесор, тобто працювати в режимі, що не витісняє. Як правило, у більшості систем не підлягає витисненню код властиво ОС. Відповідальні програми, зокрема завдання реального часу, також не витісняються. Більш докладно про це розказано в лекції, присвяченої плануванню роботи процесора.

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

Підтримка багатокористувацького режиму

По числу одночасно працюючих користувачів ОС можна розділити на:

однокористувацькі (MS-DOS, Windows 3.x);

багатокористувацькі (Windows NT, Unix).

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

Багатопроцесорна обробка

Аж до недавнього часу обчислювальні системи мали один центральний процесор. У результаті вимог до підвищення продуктивності з'явилися багатопроцесорні системи, що складаються із двох і більше процесорів загального призначення, що здійснюють паралельне виконання команд. Підтримка багатопроцесування є важливою властивістю ОС і приводить до ускладнення всіх алгоритмів керування ресурсами. Багатопроцесорна обробка реалізована в таких ОС, як Linux, Solaris, Windows NT, і ряді інших.

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

В асиметричних ОС процесори нерівноправні. Звичайно існує головний процесор (master) і підлеглі (slave), завантаження й характер роботи яких визначає головний процесор.

Системи реального часу

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

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

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

Багатозадачність

Багатозадачність це режим одночасного рішення декількох завдань на комп'ютері.

Завдання в цьому випадку — це частина роботи, виконуваної процесором.

Операційна система MS-DOS принципово побудована як однозадачна система, хоча деякі оболонки (наприклад, DOSSHELL) намагаються працювати одночасно з декількома завданнями.

Система Windows 5.x для поділу процесорного часу між програмами використовує так званий корпоративний метод, при якому відповідальність за багатодачність лежить на самих прикладних завданнях. Вони самі повинні повідомляти, коли звільняється те або інший пристрій.

Операційні системи Windows NT і OS/2 використовують багатозадачний режим з витисненням: система встановлює деякий проміжок часу, після закінчення якого відбувається примусове перемикання завдань. Аналогічним образом працює операційна система. UNIX, але вона випередила в цьому питанні Windows NT і OS/2 на 20 років.

Справжня багатозадачність можлива тільки в багатопроцесорних системах.


 

А также другие работы, которые могут Вас заинтересовать

19377. Конструкція вібраційного лотка-транспортерандуктивного давача (регулятора) 559.5 KB
  Мета роботи: 1. Ознайомитись з конструкцією вібраційного лоткатранспортера. 2. Експериментально визначити граничні кути підйому для різних матеріалів при різних визначеннях параметру режиму і побудувати криву Кгр=Кгр Теоретичні відомості. Якщо лото
19378. Експериментальне визначення коефіцієнта швидкості для двохмасового вібраційного лотка-транспортера 112.5 KB
  Лабораторна робота № 6 Експериментальне визначення коефіцієнта швидкості для двохмасового вібраційного лоткатранспортера 1.Мета роботи: Ознайомитись з конструкцією і принципом роботи двохмасового вібраційного лоткатранспортера. Експериментально визн
19379. Складання циклограми роботи, та визначення продуктивності РТК 53.5 KB
  Лабораторна робота №1 Складання циклограми роботи та визначення продуктивності РТК. Мета роботи: Побудувати циклограму роботи РТК. Визначення технікоекономічного показника РТК. 3. Теоретичні відомості. Одним з ос...
19380. ДОСЛIДЖЕННЯ СТРУМЕНЕВИХ ЗАХОПЛЮВАЧIВ 340.5 KB
  Лабораторна робота № 8 ДОСЛIДЖЕННЯ СТРУМЕНЕВИХ ЗАХОПЛЮВАЧIВ Теоретичні відомості Струменевi захоплювачі використовують для захоплювання й орiєнтацiї штучних заготовок рiзної конфiгурацiї матерiалу i маси а також як механiзми захоплювачів промислови...
19381. НАЛАДКА НА АВТОКОЛИВАЛЬНИЙ РЕЖИМ РОБОТИ ПНЕВМАТИЧНОГО ВIБРАЦIЙНОГО ПРИВОДУ З ХАРАКТЕРИСТИКОЮ ТИПУ ОБМЕЖЕННЯ 75.5 KB
  ЛАБОРАТОРНА РОБОТА №9. НАЛАДКА НА АВТОКОЛИВАЛЬНИЙ РЕЖИМ РОБОТИ ПНЕВМАТИЧНОГО ВIБРАЦIЙНОГО ПРИВОДУ З ХАРАКТЕРИСТИКОЮ ТИПУ ОБМЕЖЕННЯ. МЕТА РОБОТИ: 1. Ознайомлення з конструкцією вiбролотка i пневматичного вібрацiйного приводу. 2. Експериментальне визначення з...
19382. Аналіз конструкції і дослідження роботи вібраційного завантажувального пристрою 169.92 KB
  Вібраційний завантажувальний пристрій (ВЗП) для автоматизації завантаження штучних заготовок на верстати-автомати одержав широке застосування в різних галузях.
19383. Дослідження напівсамотічного завантажувально-орієнтуючого валкового пристрою 156 KB
  Лабораторна робота №11 Дослідження напівсамотічного завантажувальноорієнтуючого валкового пристрою. Мета дослідження: Вивчення конструкції та принципу дії двохвалкового завантажувальноорієнтуючого пристрою і визначення умов його функціонування. Зміст до...
19384. Дослідження пристрою для вторинної автоматичної орієнтації деталей форми тіл обертання 174 KB
  Лабораторна робота №12 Дослідження пристрою для вторинної автоматичної орієнтації деталей форми тіл обертання Мета роботи: Ознайомлення з конструкцією та принципом дії типового пристрою для автоматичної вторинної орієнтації деталей тіл обертання з поперечн...
19385. Дослідження вібраційного лотка з активним орієнтуючим пристроєм 105 KB
  Лабораторна робота №13 Дослідження вібраційного лотка з активним орієнтуючим пристроєм. Мета роботи: ознайомлення з конструкцією та принципом роботи вібраційного лотка і дослідження факторів що впливають на його продуктивність. Зміст роботи. Ознайом