Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






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

Програма — це деяка послідовність машинних команд, що зберігається на диску, в разі необхідності завантажується у пам’ять і виконується. Можна сказати, що під час виконання програму представляє процес. Однозначна відповідність між програмою і процесом встановлюється тільки конкретний момент часу: один процес у різний час може виконувати код декількох програм, код однієї програми можуть виконувати декілька процесів одночасно. Для успішного виконання програми потрібні певні ресурси. До них належать:

• ресурси, необхідні для послідовного виконання програмного коду (передусім процесорний час);

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

Ці групи ресурсів визначають дві складові частини процесу:

• послідовність виконуваних команд процесора;

• набір адрес пам’яті (адресний простір), у якому розташовані ці команди і дані для них.

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

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

Адресний простір процесу не завжди відповідає адресам оперативної пам’яті. Наприклад, у нього можуть відображатися файли або регістри контролерів введення-виведення, тому запис за певною адресою в цьому просторі призведе до запису у файл або до виконання операції введення-виведення. Таку технологію називають відображенням у пам’ять (memory mapping).

4. Операційна система MS DOS. Склад операційної системи. Функції BIOS та БПЗ.

Операційна система MS DOS з'явилась в 1981 р. одночасно з комп'ютерами типу IВМ РС і стала для них домінуючою. Популярність цієї операційної системи була такою великою, що основні її компоненти, такі як базова система введення-виведення та файлова система, використовуються і досі в сімействі операційних систем Windows.

 

Серед позитивних якостей MS DOS слід відзначити:

розвинену командну мову;

можливість організації багаторівневих каталогів;

роботу з усіма послідовними пристроями як із файлами;

можливість під'єднання користувачем додаткових драйверів зовнішніх пристроїв;

можливість запуску фонових задач одночасно з діалоговою роботою користувача.

Найважливішою характерною особливістю MS DOS є її модульність. Основними модулями системи є:

базова система введення-виведення BIOS (Basic Input Output System);

блок початкового завантаження Boot Record;

модуль розширення базової системи введення-виведення IO.SYS;

модуль обробки переривань MSDOS.SYS;

командний процесор COMMAND.COM;

До складу операційної системи входять:

· ядро операційної системи, що забезпечує розподіл та управління ресурсами обчислювальної системи;

· базовий набір прикладних програм, системні бібліотеки та програми обслуговування.

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

· управління введенням-виведенням інформації (підсистема вводу-виводу ядра ОС);

· управління оперативною пам'яттю (підсистема управління оперативною пам'яттю ядра ОС);

· управління процесами (підсистема управління процесами ядра ОС).

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.