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

Информатика и компютърни науки Тема

Въведение. Структура на компютърната система. Същност и функции на операционните системи.
ОС е комплекс от програми, които са важна съставна част от комп.с-ма. ОС е съвкупност от програми, предназначени да организират изчислителния процес и да направят удобно общуването на потребителите с комп.с-ма.
Операционната система може да се разглежда като: програма, която управлява и разпределя ресурсите на компютърната система; слой, който предоставя абстрактен интерфейс към хардуерните компоненти на компютъра.
Структура на ОС: Комппонентите на ОС могат да се рзделят в три групи. С-ма за упр.на входа и изхода става най-голямата част на ОС. Тя се грижи за упр.набуферите, з планирането на заявките, за блокуване на записите и др. Друга категория компоненти на ОС са процесорите , които обработват данните, преобразуват фи и дават резултати. Трета категория са супервайзорните с-ми, които осигоряват интерфейса м/у апаратното и програмното осигуряване.
Основни елементи : Процесор, Основна памет, I/O модули, System Bus
Процесор : Контрол на операции, извършва обработка на данни. Има вътрешни регистъри: Memory address register (MAR), Memory buffer register (MBR). I/O адресен регистър, I/O буферни регистри.
ОС функции: Програма, която контролира изпълнението на програми. Връзка между приложения и хардуер. Основни цели на ОС : Удобство, Ефективност, Способност да се развива.
Роля на ОС: Компютърът е набор от средства за преместването, съхраняването и обработката на данни .ОС е отговорна за управлението на тези ресурси .

Развитие на операционните системи (ОС). Основни типове и поколения – ОС с отворен режим, пакетни ОС, ОС с времеделене, ОС за реално време, други ОС. Принципни особености. Сравнителен анализ.

Развитие на ОС: ОС могат да бъдат класифицирани по различни признаци: -според броя на едновременно изпълняваните програми еднопрограмни и мултипрограмни, по предназначение универсални и специализирани.Ос се създават, за да улеснят използването на апаратурата. След създаването им става очевидно, че въвеждането на нови апаратни средства може да опрости реализацията на ОС и да даде възможност за разширяване на функциите им.
Очаквания и изисквания към системите и развитието им.
Етапи:
 Серийна обработка
 Опростени системи (партидни)
 Мултипрограмни системи (партидни)
 Системи с времеделене
Еволюция на ОС : ОС се и ще се развиват във времето: Хардуерно обновяване , както и развитието на нов тип хардуер. Нови услуги
Опростени системи: Ранните компютри са изключително скъпи. Важно е да се увеличи използването процесора (производителността му).
Мониторинг (наблюдение): Софтуер контролиращ последователност от събития, Програма връщаща контрол при преустановяване на действие.
Пакетни с-ми: При пакетната обработка потребителите се отделят от комп. чрез оператор. Потребителят предоставя задание, състоящо се от програма и данни, предшествано от описание. Описанието включва една или няколко управляващи карти. Така възникват езиците за управление на заданията. Заданията се събират в пакети, образувайки т.нар. поток от задания. За да се осигури последователната обработка, с автоматичен преход от едно към друго задание се създават управляващи програми наречени монитори. Мониторите са резидентни. Мониторът чете управляващите карти, определящи каква програма да бъде изпълнена ( компилатор, асемблер), зарежда я и й предава управлението, след нейното изпълнение управлението се връща към монитора.
Системи с времеделене.
ОС с времеделене осигуряват едновременно обслужване на много потребители, имащи пряк достъп до комп. система с терминал. Прекият достъп предполага въвеждането на информация в диалогов режим. При тези ОС се прилага мултипрограмиране и планиране на процесора, така че всеки потребител циклично получава ресурсите на компютъра в продължение на кратък интервал от време.
ОС за реално време характеризират се с това, че действията им се управляват от външни събития, постъпващи в предварително неизвестни моменти. Обработката на всяко събитие трябва да е бърза в рамките на точно определен интервал от време. Външните събития са заявки от асинхронно работещи устройства. Поради това тези ОС се наричат ОС за управление на процеси. Обикновено се предвижда вмешателство на оператор само при непредвидени операции или възникване на грешки. Тъй като този тип ОС са за изпълнение на паралелни процеси, много често те се означават с многозадачен процес

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

3. Взаимодействие между процесите. Процеси. Паралелни процеси. Взаимодействие между процесите. Взаимно изключване. Синхронизация. Комуникация. Примери.

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

Състояния на процеса
По време на съществуването си всеки процес може да преминава през различни състояния. За много ОС са характерни следните три състояния:
• Изпълняван - процесорът е предоставен на процеса.
• Готов - процесът би могъл да се изпълни, ако му се разпредели процесор.
• Блокиран - процесът не може да се изпълни, докато не получи сигнал,
съобщение или ресурс.
При реализацията на модела може да възникне потенциален проблем - не е желателно да се въведе отново в паметта все още блокиран процес. Възможно е процес да се блокира за неопределено време, очаквайки настъпване на събитие или вход/изход и да заема излишно памет. Проблемът може да се реши с въвеждането на две състояния на преустановяване: блокиран-преустановен и готов-преустановен.
Изпълнението на процесите може по-добре да се управлява, ако се въведат в двата модела още две състояния: нов и завършил. Новият процес е току-що създаден, но не е включен в опашката за изпълнение. ОС създава процеса на два етапа: най-напред тя изпълнява действия, като присвояване на идентификатор, оформяне на блок за управление и др. Това е състоянието нов. По-нататьк, в подходящ момент (например, когато системата не е натоварена), процесът ще бъде включен в опашката на готовите процеси.
Паралелни процеси.
Паралелни процеси - когато изпълнението на два или повече последователни процеса се припокрива във времето се говори за паралелно изпълнение на процеси. Паралелните процеси могат да бъдат независими или взаимодействащи.
Независимите процеси работят с множества независими променливи и работата на такъв процес не оказва влияние върху резултата от изпълнението на друг независим процес и обратно.
Взаимодействащите процеси имат достъп до общи променливи и изпълнението нас един процес влияе върху резултата от изпълнението на друг.

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

Синхронизация
Взаимодействието, управлявано с критични секции, е непряко – всеки процес може да игнорира съществуването и функциите на другите процеси, стига те взаимно да се изключват във времето и да запазват инварианти на общите променливи. Между процесите, коопериращи се за изпълнение на общата работа, взаимодействието е пряко. На тях им е нужно не само да се изключат при работа с общи ресурси, но и да си разменят информация, за да синхронизират работата си във времето. Минималната единица предавана информация е прост времеви сигнал. Взаимодействие на процесите като “производител-потребител” е пример за такъв, т.е. единия процес произвежда ресурс, а другия го използва. Пр. процес-производител изработва информация, която записва в буфер, а процес-потребител чете буфера. Тези действия се извършват асинхронно, поради различната скорост на работа на двата процеса, затова има опасност от запис на процеса-производител в пълен буфер, и съответно четене на процеса-потребител от празен буфер. За правилна работа двата процеса трябва да си обменят информация, за да синхронизират действията си.

Комуникация - по – тясното взаимодействие м/у процесите изисква специално средства за комуникация, които осигурват предаването и получаването на произволни данни. Принципно съществуват две схеи за комуникация – използване на обща памет и системи със съобщения. При общата памет комуникиращите процеси обменят данни чрез общи променливи. При другия начин процесите могат да обменят съобщения, без да е необходимо да се обръщат към общи променливи, при което ОС е отговорна за организацията на ко

Преглед на началото - целият файл след изтегляне

Описание

Развити теми по ОС. Дисциплина: Операционни системи

0 коментара

Все още няма коментари. Бъдете първият, който ще коментира.

За да коментирате, трябва да сте влезли в профила си.

Влезте