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 років.

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


 

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

12958. Познайте тайны собственного Я. Классный час (4 класс) 160 KB
  Классный час 4 класс Тема: Познайте тайны собственного Я Цель: способствовать раскрытию внутреннего мира ребенка его индивидуальных качеств; формировать у учащихся нравственные нормы жизни. Оборудование: страницы устного журнала; виз
12959. Внеклассного мероприятия на тему «Белка и Стрелка - первые космонавты» 18.83 KB
  Планконспект пробного урока Внеклассного мероприятия на тему Белка и Стрелка первые космонавты проведенного студентом Трифоновой Евгенией Валерьевной в 1 Б классе 16 апреля 2013 г. Цель: познакомить детей с первыми космонавтами Белкой и Стрелкой. Задач
12960. Классный час «Приходи, Масленица!» 31 KB
  Классный час Приходи Масленица Цели: познакомить учащихся с основными традициями празднования Масленицы в разных странах создать условия для: расширения з наний учащихся об окружающем мире; развития интереса к истории представлений о народных обрядах разн...
12961. Классный час Давайте знакомиться 121.31 KB
  Классный час Дата: 01.04.2013 Тема: Давайте знакомиться Задачи: раскрыть личностные особенности детей познакомиться с их интересами и увлечениями формировать навыки самодисциплины содействовать созданию сплоченного классного коллектива. Оборудов...
12962. Расчет плоских стержневых систем с применением ПК SCAD 348 KB
  Лабораторная работа № 3 Тема: Расчет плоских стержневых систем с применением ПК SCAD Расчетная схема : плоская рама при соотношении жесткостей J2 = 2 J1. ДOKУMEHT 03 ...
12963. Расчет плоских стержневых систем по ПК SCAD 229.5 KB
  Лабораторная работа № 1 Тема : расчет плоских стержневых систем по ПК SCAD Задана многопролетная железобетонная балка постоянного прямоугольного сечения 40х60 см; материал бетон тяжелый класса В30. Результаты расчета по ПК SCAD Деформированная схема
12964. Методы и средства контроля параметров точности цилиндрических зубчатых колес 602.5 KB
  Лабораторная работа № 6 Методы и средства контроля параметров точности цилиндрических зубчатых колес Задание 1. Измерить величину радиального биения зубчатого колеса. Результаты занести в таблицу 1. Определить используя приложение 2 какой степени точности соотве
12965. МЕТОДЫ И СРЕДСТВА КОНТРОЛЯ ПАРАМЕТРОВ ТОЧНОСТИ ЦИЛИНДРИЧЕСКИХ ЗУБЧАТЫХ КОЛЕС 1.01 MB
  Методы и средства контроля параметров точности цилиндрических зубчатых колес Методические указания к лабораторной работе по дисциплине Метрология стандартизация и сертификация ЛАБОРАТОРНАЯ РАБОТА № 6 Методы и средства контроля параметров точности ...
12966. Измерение отклонений формы поверхностей типовых деталей машин 1.95 MB
  Измерение отклонений формы типовых поверхностей деталей машин Методические указания к лабораторной работе по дисциплине Метрология стандартизация и сертификация Лабораторная работа №1. Измерение отклонений формы поверхностей типовых деталей машин. Ц...