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

  •  

    1.ОС-общи понятия.Класификация-ОС се нар.организирана съвкупност от пр-ми, която действа като интерфейс м/у потр.и апаратурата на рс и осигурява възможност за мах ефективно изп.мощностите на КС.ОС изп.2 осн.задачи-1)да осигурява на потр. удобен интерфейс за работа със с-мата и удобни средства за разработване, тестване,настройване,съпровождане на прогр.продукти.;2)да организира ефективно използване на ресурсите на КС.Класификация-А)според времето за реакция: 1)ОС за пакетна обработка-заданията на потр.се изразяват в:команди на ОС,програми и данни.Заданията постъпват като последов.записи от вх.уст-во,а резултатите се пол.във вид на разпечатка на принтер и т.н.;2)Интерактивни(Диалогови)ОС-Потр.контактува директно с ОС чрез мишка,kbd.Времето за отг=времето на изп.на вс.една команда;3)ОС за реално време-ОС които управляват външни обекти(процеси),които поставят стриктни огранич-я в/у времето за отг.на с-мата.Б)според степента на съвм.използване на ресурсите-*)в зависимост от бр.едновременно работещи със с-мата потр.- 1)еднопотребителска ОС-ОС се предоставя на изп.на зад на 1 потр.,което задание изп. моноплно ресурсите на ОС(МsDos)(бързодействие,неефективно изп.на ресурсите); 2)многопотребителски ОС-В ОП на рс са зададени множество независими пр-ми, пуснати от много и разл.потребители;*)бр.изп.задачи едновременно-1)еднозначни ОС (втората зад.може да се стартира когато 1вата приключи);2)многозадачниОС (мултипроцеси)-Потр.могат да пуснат няколко задачи,като 1 зад.може да стартира преди да е приключило изп.на предходната;(На база на тези клас-ции можем да отделим 4 варианта ОС-еднопотр еднозначна;едно- много-;много- едно;много-много;); В)според сложност на апаратната конфигурация-1)ОС за микрорс(Intel,P4)-малък обем ОП,ОС са еднопотр.с интерактивно взаимодействие с потр.);2)ОС за минирс (VAX 11,MVAX 12,Alpha)-трябва да работят бързо,да обслужват много потр.,адресират голям обем памет;3)Универсални ОС(Mainframe pc)-мощни рс с мощни CPUs.Имат няколко CPU,работещи едновременно;4)Паралелни-множество CPUs свързани с обща памет;5)Разпределени-мощта се повишава като свържем няколко рс и разпределим работата м/у тях;

    2.Архитектура на ОС.Осн.модули и техните ф-ии-Подсистеми на ОС-1)Езикова-вкл. Средства за подготовка,тестване и изпълнение;2)Упр-е на паметта-*)разпределение на ОП м/у отделните потр.изисквания;*)защита на ОП;*)упр-е на вирт.памет;3)Упр-е на изп.(на процесите)-*)времеделение;*)взаимодействие м/у зад.4)Упр-е на вх-изх.- Управлява вх/изх устр-ва на рс.Осн цел:да скрие от програмиста конкретните х-ки на устр-то.Данните минават през междинна памет-буфер;5)Упр-е на файлова с-ма-най- видимата част от ОС.Вкл.се ф-ии по логич.орг-я на файловете и защитата на областите от файлове в/у външните носители;6)Команден интерпретатор-реализира интерфейса м/у потр.и с-мата.Трябва да е удобен за широк кръг потр.да могат да контактуват с ОС.7)Упр-е на комуникацията-упр-е на мрежовите ф-ии на с-мата (мрежови протоколи)-защита на ресурсите на ОС;8)Упр-е на привилегиите и защитите-реализира защитен механизъм за достъп на процесите и потр.до ресурсите на с-мата с цел преодоляване на неравномерното им изп.;Различават се 2 осн.стр-ри на ОС:1)Монолитна-състои се от пр-ми,които се изп.директно от апаратурата.Вс. потреб. Процес използва механизма на прекъсване;2)Йерархична-предполага отделни компоненти на ОС да работят на разл.йерархични нива;Йер.стр-ра е осн.на разделяне на ф-иите вертикално на нива(кръговата диаграма).

     

     

     

     

     

     

    Вс.ниво може да се разглежда като абстрактна машина.Абстр.машина от вс.ниво се базира на възможностите й от по-долно ниво и го разширява като възможности.Тази връзка се нар.интерфейс.2 осн.принципа- 1)прогр-те от по-горните нива могат да ползват усл.от по-долните нива;2)при преход към по-долните нива съотв.ф-ии да се изп.все по-бързо;Ф-иите на ядрото се реализират директно в/у Апаратурата.Те се изп.с най-гол.честота и бързина.(примитивни ф-ии-реализират се като подпр-ми или макроопр-я).В ядрото се реализират:упр-е на паметта,на процесите,на ресурсите, механизма за реализация на времеделението;Ядрото предоставя на по-горните нива виртуален CPU,защото то създава илюзията,че вс.процес в с-мата работи самостоят.с този вирт.CPU.Мех.на по-горните нива се различават от ядрото в това,че в с-мата се интерпретират като процеси.Най-високо в йерархията са потреб.пр-ми.Предоставт се от ОС.Удобна среда за изпълнение;тя изолира напълно апаратните особ.на рс.VM (Virtual Machine)-реализира се от Windows.VM разполага със собствени вирт.ресурси- CPU,памет,вх/изх.устр-ва.Вирт.ресурси се проектират от ОС с реалните ресурси на рс.

    3.Историческо развитие на ОС.Алгоритъм за първонач.зареждане-ОС датират от 1949-1956год.-фон Нойман

     

     

     

     

     

     

     

     

     

     

     

    1.L.A.-Load Address-за зареждане на 1я В на P/D на текущата перфокарта;2.COUNT-бр. байтове от полето P/D;3.P/D-програми данни-съдържат се операнди и инструкции на ОС.;М[0],M[1]-отбелязваме паметта като масив; extern Transfer To(char);//char M[80];// int i;//main()//{//IPL:for(i=0;i=79;i++)}//read(M[i]);//transfer to (M[0]); Алгоритъм на абсол.зареждаща се програма:extern Transfer To(char);//char M[80];//int i,r,n,LA;//main() {//{Load;//for (i=0;i=79;i++){//read (M[r+1]);//}//LA=M[r];//n=M[r+1]//if(n==0)Transfer To(LA);//for(i=0;i=n-1;i++){//M[LA+i]=M[r+2+i];//};//goto Load; Буфер,в който 1о се чете вс.перфокарта(M[r],M[r+1],..,M[r+79];M[r]-1я байт от прочетената перфокарта;M[r+1]- 2я байт от буфера,колко байта от тази перфокарта трябва да се заредят;Перфокарта,при която Count=0 то това е посл.перфоката.Bootstraping(boot)=>процес на предварително зареждане на ОС.3о поколение ОС-Мултипрограмиране;Защита на паметта;4о поколение-Мултипотреб.ОС и мрежова ОС.Разпределени ОС-услугите на 1 ОС могат да се изп.на разл.CPU създавайки илюзията,че много рс работят като 1;Свързващи ОС- свързващи редактори;1те компилатори са компилирали пр-те до абсолютен код. Различаваме статично(извън процеса) и динамично(по време на процеса)преместване:

     

     

     

     

     

     

     

     

     

     

     

    При статичното преместване нашите модули се състоят от записи в този вид: LOC KOП a1,a2,..,al(Операнди),където LOC(адрес на инстр.);КОП(код на операции);к=α-β-отместване на новия адрес от базовия адрес;α-адреса,на който трябва да се преместят от β в α-базов адрес на 1та инструкция;Вс.инструкции се преместват със стъпка к. LOC+k;add[16],8(8-непосредствен операнд;имаме операция събиране)