Основни понятия в операционните системи


Категория на документа: Информатика


виртуална памет
сегменти от памет
четене, запис, извличане
6
локална памет
блокове от данни, канали на устройства
четене, запис, заделяне, освобождаване
5
първични процеси
процеси, семафори, списъци
чакане, сигнал, спиране
4
прекъсвания
програми за обработка на грешки
извикване, маска, сваляне на маска, повтаряне
3
процедури
сегменти от процедури, стек
извикване, връщане, писане в стека
2
инструкции
стек за пресмятане, данни
преход, събиране, зареждане
1
електронни схеми
регистри, вентили
нулиране, прехвърляне, активиране
Фиг.1. Тринайсет слоен структурен модел на ОС.

Тази схема не моделира определена ОС, а по-скоро обединява идеите на много системи. Всяко ниво управлява "обекти", които могат да бъдат софтуерни или хардуерни и чиято природа за различните нива съвсем не е една и съща. Всяко ниво определя и операциите, които могат да се извършват с тези обекти.

Ниво 1 е нивото на електронните схеми и устройства, където обектите са регистри, клетки от паметта, логически вентили и др. Операциите, определени за тези обекти, са действия като установяване на даден регистър в дадено състояние (например нулиране).

Ниво 2 е нивото на инструкциите на процесора, които могат да боравят с по-абстрактни величини - като например стек за пресмятания (редица от регистри или клетки от паметта, където се пазят числови стойности по време на извършвани с тях действия). Операциите от това ниво са инструкциите, които самият процесор може да изпълнява - събиране, изваждане, зареждане, записване и т. н.

Ниво 3 прибавя понятието процедура или подпрограма. Това е самостоятелен фрагмент от програма, който може да бъде извикван в рамките на по-голяма програма и който връща управлението в точката, от която е бил извикан.

Ниво 4 въвежда прекъсвания, които могат да накарат процесора да запази запис за текущото си състояние и след това да се обърне към нова задача. Събитията, които предизвикват прекъсване, включват състояния на грешка (такова е например препълването на аритметичен регистър) и по-обикновени събития - например получаване на знаков код от терминал. Първите четири нива отговарят на базовия компютър така, както е получен от производителя (въпреки, че и тук има непосредствено взаимодействие с елементи от ядрото на ОС). Например, прекъсванията се генерират от хардуерен елемент, но извикваните при прекъсване на процесора стандартни програми са част от ядрото.

Ниво 5 - понятията, свързани по явен начин с координацията на много задачи, се появяват за пръв път на това ниво - ниво на "първичните процеси" или на единични програми в процес на изпълнение. Тъй като първичния процес може да бъде прекъснат по всяко време, необходим е механизъм, който едновременно да спре един процес и след това да го възстанови. Този процес се състои от "дума на състоянието" - структура от данни, в която може да се запази информация зa състоянието на всички регистри в централния процесор, и операция за превключване на контекста. Когато един процес временно трябва да спре, операцията за превключване на контекста приписва съдържанието на регистрите в думата на състоянието на този процес. При възобновяване на процеса тя възстановява съдържанието на регистрите. Ако всички извършващи се в компютъра действия бяха съвършенно независими помежду си, за създаването на ОС за много процеси едва ли щеше да бъде необходимо нещо повече от понятието дума на състоянието. В действителност обаче един процес често зависи от резултатите от друг процес, така че те трябва да бъдат синхронизирани. Работата на механизмите за синхронизация - семафорите са предмет на отделно обсъждане.

Ниво 6 в йерархията на ОС се занимава с достъпа до външните запамнящи устройства на даден компютър. Програмите на това ниво отговарят на такива операции като позициониране на глава на дисково устройство и прочитане на блок от данни. Софтуерът от по-високо ниво само определя положението на данните върху диска и дава съответната заявка; тя се нарежда на опашката от заявки за предстоящи "работи" с устройството. След това процесът, който е дал заявката чака пред семафора, докато завърши прехвърлянето на данните.

Ниво 7 - функцията на ниво 7 е поддържане на виртуална памет; това е такава схема за управление на оперативната и външната памет на компютъра, която дава на програмиста илюзията, че притежава достатъчно оперативна памет (ОП) за своята програма и нейните данни - дори ако наличният капацитет на паметта е много по-малък. Адресите могат да бъдат произволно големи, а програмите, които работят паралелно, могат да използват едни и същи адреси; противоречие не възниква, тъй като ОС превръща всеки виртуален адрес в хардуерен. Ако даден опит за превръщане не успее поради това, че търсената информация не се намира в ОП, управлението на виртуалната памет автоматично я извлича от дисковата памет. Евентуално може да се наложи предварително да се освободи място в ОП, като се отстранят други данни. Както и преди, заявяващия процес се прекъсва, докато стане достъпна необходимата информация. До ниво 7 ОС борави изключително с ресурсите на една машина. От следващото ниво нататък програмите на ОС обхващат един по-голям свят, който включва такива периферни устройства като терминали и печатащи устройства, а така също и други компютри съединени в мрежи.

Ниво 8 се занимава с комуникацията между процесите; те могат да бъдат подредени с помощта на механизъм наречен "тръба". Тръбата представлява еднопосочен канал: поток от данни влиза в единия му край и излиза от другия. Потокът има указател за писане, който следи броя на записаните в тръбата елементи, и указател за четене, който записва броя на елементите, пточетени на другия край. С тръба могат да се свържат два процеса, които се изпълняват на един комлютър - стига изходът на едната програма да е означен като вход на другата. По същия начин тръбата може да предава информация между компютри.

Ниво 9 - файловата система, която осигурява дълготрайно запазване на именовани файлове, се поддържа на ниво 9. Докато ниво 6 борави с паметта на диска в термините на пътечки и сектори - фиксирани по размер части на хардуера, то ниво 9 се обръща към по-абстрактни величини с променлива дължина, чиито граници евентуално не съвпадат с известните физически пътечки и сектори.

На практика един файл може да бъде разпръснат между много несъседни сектори. Тук са валидни такива операции като съдаване (CREATE), разрушаване (DESTROY), отваряне (OPEN), затваряне (CLOSE) и други. Ако файлът се съхранява на друг компютър, софтуерът от ниво 9 може да създаде тръба до машината на този файл като използва ниво 8.




Сподели линка с приятел:





Яндекс.Метрика
Основни понятия в операционните системи 9 out of 10 based on 2 ratings. 2 user reviews.