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


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


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

Софтуерът като съвкупност от всички програми в един компютър може да бъде разделен на три основни типа: езици за програмиране, приложни програми, и операционни системи. Всички те могат лесно да бъдат разграничени като за всеки вид от тях е характерно:

Среди за програмиране- това е съвкупността от софтуера, благодарение на който се създава друг такъв.

Приложни програми- всички останали програми с изключение на средите за програмиране и операционните системи.

Операционни системи- вид софтуер, който осигурява "връзката" между хардуера и потребителя от една страна и на хардуера и останалите два вида софтуер.

На операционните системи често се приписват функции и свойства на приложния софтуер, но макар и изолирани функциите които изпълняват операционните системи, както и техните цели изобщо не са малко. Най- грубо те могат да се разделят на следните няколко групи: Интерфейс между потребителя и хардуера на компютъра Осигуряване на достъп до входно-изходни устройства Осигуряване среда за изпълнение на приложен софтуер Контрол на достъп, управление и съхранение на файловете Управление на системата и backup Статистика

Управлението на хардуера е една от най-значимата дейност на операционната система.Към нея спадат управлението на паметта, периферията и процесите както и обработка на прекъсванията.

Управлението на паметта се изразява в заделянето и адресирането на блоковете от паметта за дадено приложение. Паметта бива два вида- оперативна (RАМ) и вторична-външна. Проблемите които се решават при управлението на паметта са следните: колко програми ще се разположат в паметта. Ако са повече от една, колко място да се заделя за всяка от тях. Пространството за всяка програма прекъснато ли да бъде или не. Процесорът работи само с кеш паметта и с RАМ паметта. Това означава че за да може той да работи с дадено приложение, то трябва да бъде заредено в RАМ паметта. Поради големия размер на приложенията се налага да се търси решение на въпроса как една програма може да функционира на компютър, който има памет по-малко от размера на дадената програма. Съвременните операционни системи (без МS-DОS) използват т. нар виртуална памет. При този начин на управляване на паметта ОС използва част от дисковото пространство за временен файл, който изпълнява функцията на "допълнителна" памет. Има специални таблици с адресите на паметта, в които се записва кои адреси от виртуалната памет са физически. В даден момент само част от работещата програма се намира в RАМ-а. Останалата част е върху диска. Операционната система управлява това прехвърляне на порции памет от виртуалната във физическата и обратно.

Управлението на периферията е не по-лесна задача на операционната система. Периферията като цяло се дели на четима за човека (принтер, мишка) и четима за машината (НDD, FDD) и комуникационни (модеми,мрежи). При по-старите компютри процесора директно управлява периферията. При съвременните работата на централния процесор е опростена благодарение на контролерите, които взаимодействат с устройствата. Тези контролери работят с прекъсвания, които ще разгледаме по-късно.

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

Управление на процесите. Процесът най-общо казано е програма в момент на изпълнение. Състои се от самата програма, данните, обработвани от програмата и данни свързани с режима на работа на тази програма. Всеки един процес се намира в едно от тези състояния:

1. Изпълнение- процесът се намира в такова състояние, когато процесорът му е
предоставен изцяло.

2. Готов- процесът е готов да използва процесорът веднага щом му бъде
предоставен.

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

5. Изход- процесът спира да се изпълнява поради 2 причини- или е завършил или е
прекъснат поради друга причина.

Предоставянето на процесора на един процес зависи от програма, която е част от операционната система и се нарича диспечер.

Възниква въпроса как се изхвърлят процесите. Това става с помощта на т. нар. timeout За да се предотврати монополизирането на един процес ОС определя единица време, която се заделя за всеки процес и този интервал се заделя в таймера. Когато това време изтече се подава сигнал и ОС привежда активния процес в състояние готов.

Диспечерът освен контролиране работата на процесите се занимава и със тяхното създаване, унищожаване, възобновяване и блокиране.

Прекъсване- събитие, при което се нарушава нормалната последователност на командите, използвани на процесора. При настъпване на прекъсване управлението на хардуера се предава на ОС като тя запазва процеса, който е прекъснат и се заема с обработката на прекъсването. Прекъсванията биват няколко вида, а именно: за входно-изходни операции, програмни, хардуерни, от таймера.
Прекъсванията се обработват на 2 нива- хардуерно и софтуерно
На хардуерно ниво се осъществяват следните действия:
1. Устройството изпраща сигнал за прекъсване на процесора.

2. Процесорът извършва текущата инструкция, приема сигнала за прекъсване и връща
обратен сигнал на устройството да прекрати сигнала си за заявка за прекъсване.

3. Процесора предава управлението на програмата за прекъсвания, като запазва
данните за изпълнение на процеса с т. нар. дума за състоянията на процеса.



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





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