Системи з розподілом часу між завданнями. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Системи з розподілом часу між завданнями.



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

Системи з пакетною обробкою завдань у свою чергу поділяються на два типи:

з послідовною обробкою завдань;

з паралельною обробкою завдань.

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

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

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

Системи з розподілом часу також виконують декілька завдань одночасно, але кожному завданню видається на здійснення обробки квант (фіксований проміжок) часу, після чого провадиться обробка наступного завдання і т. д., поки всі завдання не будуть виконані.

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

Вищеописана операційна система MS DOS підтримує як однозадачний режим роботи, так і пакетний режим з послідовною обробкою завдань. Операційна система Microsoft Windows сполучила в собі можливості MS DOS і підтримку графічного інтерфейсу і може працювати в усіх перелічених режимах роботи.

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

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

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

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

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

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

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

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

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

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

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

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

Управління персональним комп’ютером здійснює дискова операційна система (Disk Operating System), яка забезпечує:

 управління зовнішніми запам’ятовувальними пристроями (НГМД, НМД типу «вінчестер»);

 виконання прикладних і системних програм (наприклад, програма сортування, програма-інтерпретатор Basic і т. ін.);

 організацію обміну даними між блоками персонального комп’ютера (дисплеєм — диском, диском — диском, диском — оперативною пам’яттю тощо).

Операційна система MS DOS підтримує 2 вищезгадані режими: однопрограмний режим та пакетну обробку файлів з послідовним виконанням завдань (файли пакетної обробки мають розширення ВАТ).

У загальному випадку DOS — це комплекс програм, організований у вигляді файлів.

19. Діалоговий режим — це режим виконання операцій з обробки даних безпосередньо користувачами з допомогою дисплеїв, підключених у локальному чи віддаленому варіанті до ЕОМ. Технологія в обох варіантах практично однакова, але реакція системи у віддаленому варіанті дещо більша.
Діалоговий режим обробки економічної інформації використовується на всіх типах ЕОМ, але більше він властивий комп’ютерним технологіям на основі ПЕОМ.
Технологічний процес виконується в діалозі «людина-ЕОМ» і людина переважно відіграє головну роль у такому інтерактивному процесі. При цьому можуть бути три типи схем взаємодії:
«монолог ЕОМ», коли машина відіграє роль ведучого і регламентуєŸ поводження користувача;
«монолог користувача», коли ініціатива належитьŸ користувачу, який видає накази системі, керуючи тим самим її роботою;
Ÿ «власне діалог» — це комбінація двох попередніх, коли управління процесом розв’язування задачі надається почергово користувачу і ЕОМ.
Для організації діалогового режиму попередньо записуються спеціальні програми чи використовуються ППП, системні програмні засоби. Основні елементи діалогу — «вибір із меню», «робота за підказкою», «заповнення шаблону», «питання – відповідь».
Діалог типу «вибір із меню» вимагає попереднього індиціювання на екран дисплея переліку рядків. У рядок часто включають два елементи, один з яких є ключовим словом (фразою), а інший його кодовою ознакою (порядковий номер рядка, перший символ ключового слова). Уведення кодової ознаки приводить систему до відповідного стану: виходу на режим, запуску програми, заповнення документа і т. ін. Останнім часом частіше використовується варіант вибору необхідного рядка безпосередньо з допомогою інверсного (протилежного основному фону екрана) рядка-курсора (див. рис. 14.4). При цьому самі меню часто будують на екрані програмними засобами у вигляді дерева меню, що дозволяє користувачу послідовно переходити від одного меню до іншого.
Діалог типу «робота за підказкою» розрахований на неознайомленого з проблемою користувача, чи того, що не має спеціальної підготовки, і система підказує наступний крок.
Діалог типу «заповнення шаблону» використовується для введення форматованої інформації за вказаним на екрані шаблоном, частіше аналогічно заповненню паперового первинного документа. При цьому курсор послідовно зупиняється в тих полях, куди потрібно вносити інформацію (див. рис. 14.6).
Діалог типу «питання-відповідь» базується на жорсткому розмежуванні дій користувача і системи. Система запитує, користувач мусить ввести з клавіатури (переважно) у межах дозволених відхилень відповідну інформацію.
Оскільки в процесі діалогу можуть виконуватися як функціонально незалежні, так і залежні види робіт, то використовується таке поняття як «крок діалогу», що дозволяє будувати діалог у визначеній послідовності.
Під час роботи в діалоговому режимі можна використовувати такі переваги комп’ютерних технологій, як використання тимчасово випливаючих (рис. 8.1 і 8.2) чи випадаючих (рис. 14.7) меню, що дозволяють у поєднанні з маніпулятором «миша» суттєво прискорити технологічний процес; можливість розміщення на екрані багатьох каскадних меню (послідовно розміщених і, можливо таких, що частково перекривають одне одного вікон з певною інформацією в них) для кращого візуального сприймання дерева послідовностей чи залежностей (рис. 8.3); можливість збільшення екранних форм документів, переміщення їх в різні боки, а також на передній чи задній плани; виділення кольорами та напівтонами важливих елементів екранних форм; на відміну від пакетної обробки є можливість децентралізувати діалоги між різними спеціалістами та ЕОМ і потім здійснити завершальну обробку даних і т. ін.

20. При розробці ОС широко застосовується абстрагування, що є важливим методом спрощення й дозволяє сконцентруватися на взаємодії високорівневих компонентів системи, ігноруючи деталі їхньої реалізації. У цьому змісті ОС являє собою інтерфейс між користувачем і комп'ютером.
Архітектура більшості комп'ютерів на рівні машинних команд дуже незручна для використання прикладними програмами. Наприклад, робота з диском припускає знання внутрішнього пристрою його електронного компонента – контролера для уведення команд обертання диска, пошуку й форматування доріжок, читання й записи секторів і т.д. Ясно, що середній програміст не в змозі враховувати всі особливості роботи встаткування (у сучасній термінології – займатися розробкою драйверів пристроїв), а повинен мати просту високорівневу абстракцію, скажемо представляючи інформаційний простір диска як набір файлів. Файл можна відкривати для читання або запису, використати для одержання або скидання інформації, а потім закривати. Це концептуально простіше, ніж піклуватися про деталі переміщення головок дисків або організації роботи мотора. Аналогічним образом, за допомогою простих й ясних абстракцій, ховаються від програміста всі непотрібні подробиці організації переривань, роботи таймера, керування пам'яттю й т.д. Більше того, на сучасних обчислювальних комплексах можна створити ілюзію необмеженого розміру оперативної пам'яті й числа процесорів. Всім цим займається операційна система. Таким чином, операційна система представляється користувачеві віртуальною машиною, з якої простіше мати справу, чим безпосередньо з устаткуванням комп'ютера.

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

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

Дані на диск записуються в особливу тимчасову область, відому як файл підкачки. У міру того, як дані стають потрібні, вони прочитуються назад в пам'ять. Таким чином, в кожний окремий момент у фізичній пам'яті перебуває лише частина ваших програм і даних. Вся ця робота по підкачці залишається невидимою для користувача, який лише чує, як клацає дисковод. MS Windows перекачує фрагменти пам'яті, звані сторінками, використовуючи алгоритм заміщення LRU (найбільш давно використаних сторінок). Це означає, що першими виявляться скинені на диск сторінки, доступ до яких здійснювався найбільш давно. Такий підхід передбачає, що в більшості випадків ризик того, що секретні дані виявляться скиненими на диск, невідчутно малий, оскільки PGP не залишає їх в пам'яті надовго.

До цього файлу підкачки може дістати доступ кожний, кому фізично доступний ваш комп'ютер. Якщо вас турбує ця проблема, можливо, вам вдасться її вирішити, встановивши спеціально програмне забезпечення, що стирає дані у файлі підкачки (наприклад чудова програма Kremlin 2.21). Іншим можливим засобом є відключення механізму віртуальної пам'яті в операційній системі. Це дозволяє зробити і MS Windows, і MacOS. Відключення віртуальної пам'яті означає, що вам буде потрібно більше фізично встановлених мікросхем оперативної пам'яті.

Таким чином, віртуальна пам'ять є методом бездоганного поєднання доступу до оперативної пам'яті і диска; до основної і зовнішньої пам'яті. Додатки мають доступ до всієї оперативної пам'яті, неначе вона дійсно існує. Ми знаємо, що її насправді немає і тому називаємо її "віртуальною", але завдяки ядру додатку цього не помічають. З погляду додатків, віртуальна пам'ять рівносильна наявності величезного об'єму оперативної пам'яті, яка на практиці іноді просто повільно працює.

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

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

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

Захищений режим з'явився в мікропроцесорах Intel починаючи з 80286, але остаточний вигляд знайшов в 80386. Як випливає з своєї назви, захищений режим надає механізм захисту – тобто процесор може дозволити або не дозволити виконувати яку-небудь дію (доступ до певної ділянки пам'яті, запис в регістр і т. п) залежно від поточного рівня привілеїв. Механізм захисту застосовується головним чином при багатозадачності для забезпечення захисту виконуваних програм один від одного. Існує чотири рівні привілеїв ("кільця") в якому може виконуватися програма, при цьому 0 позначає щонайвищі привілеї, а 3 – якнайменші. В сучасних ОС ядро системи виконується на 0 рівні, а призначені для користувача програми на третьому.

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

 

 



Поделиться:


Последнее изменение этой страницы: 2016-06-19; просмотров: 685; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.148.102.90 (0.015 с.)