Пищов тема 1 - Развитие на ОС. Основни типове
| Информационни технологии | 2009-12-04 | 124 сваляния |
-
Развитие на ОС. Основни типове.
ОС могат да бъдат класифицирани по различни признаци: -според броя на едновременно изпълняваните програми еднопрограмни и мултипрограмни, по предназначение универсални и специализирани.
Ос се създават, за да улеснят използването на апаратурата. След създаването им става очевидно, че въвеждането на нови апаратни средства може да опрости реализацията на ОС и да даде възможност за разширяване на функциите им.
1.1. Ранни системи- Първите компютри не са имали ОС и потребителите са програмирали на машинен език, като са разполагали с цялата машина, управлявайки я от операторската конзола. Установява се, че е удобно комп. да се снабди с прости програмни средства с помощта, на които да се улесни въвеждането на програмата, а по-късно с развитието на асемблерните езици, да се изпълнява програма за: четене на асемблера, транслация на програмата, запис в/у перфокарти, четене и зареждане на изпълнимата програма в паметта и накрая изпълнение. Всяка от тези стъпки е изисквала обмисляне и извършване на определени операции от програмиста. Такъв режим на работа, при който потребителя получава на разположение комп. система и има пряк достъп до нея, се нарича открит режим (режим на отворения магазин).
Следващият етап на автоматизацията на програмирането е появяването на сложни асемблерни езици и езици от високо ниво като FORTRAN. Широко започват да се използват библиотеки от програми. Най-важни са били процедурите по организиране на входа и изхода, т.нар. драйвери за устройства. Разширява се наборът от периферни устройства, започват да се използват магнитни ленти за съхранение на транслаторите, обслужващите програми, междинните резултати. За припокриване на работата на процесора и входа/изхода се използва буфериране.
Съвместното използване на подпрограми на системна основа прави неудобно, дори изключва, използването на перфокарти с първоначалния текст на подпрограмите и многократната транслация след всяка грешка. Възниква нужда от използване на общи подпрограми в обектна форма.
От друга страна, необходимостта една и съща подпрограма да се включва в различни по структура програми, прави неудобна абсолютната форма. Появява се преместваемата форма на програмите, като всеки модул се транслира с относителен начален адрес.
Разгледаните средства значително улесняват програмирането, но оперирането с комп. се усложнява. Изпълнението на една програма включва изпълнението на много стъпки и всяка от тях се управлява ръчно, като се поставят или свалят перфоленти и магнитни карти. Това е и основният недостатък твърде малкото използване на процесора (около 7%).
-
Пакетни системи.
При пакетната обработка потребителите се отделят от комп. чрез оператор. Потребителят предоставя задание, състоящо се от програма и данни, предшествано от описание. Описанието включва една или няколко управляващи карти. Така възникват езиците за управление на заданията. Заданията се събират в пакети, образувайки т.нар. поток от задания. За да се осигури последователната обработка, с автоматичен преход от едно към друго задание се създават управляващи програми наречени монитори. Мониторите са резидентни. Мониторът чете управляващите карти, определящи каква програма да бъде изпълнена ( компилатор, асемблер), зарежда я и й предава управлението, след нейното изпълнение управлението се връща към монитора.
Мониторът се състои от няколко части: - интерпретатор на управляващите карти, който използва зареждащата програма за зареждане на системни и приложни програми. Интерпретаторът и зареждащата програма имат нужда от входно-изходни операции и за това мониторът включа драйвери за устройства.
Може да се каже, че основните функции на ОС от първо поколение са били автоматизация на операторската дейност. Работата на оператора се е свеждала до стандартни манипулации. Като се вземе предвид времето, загубено от оператора при работа с устройствата, времето на използване на процесора е нараснало до 55%.
Поради бавните периферни устройства, процесорът принудително е стоял. За това започва да се прилага автономна работа на четеца на перфокарти, разработват се устройства които директно извеждат/въвеждат от/на магнитна лента, която е била по бърза от перфокартите. Така загубите се намаляват и използването на процесора достига 90%.
-
Развита пакетна обработка.
Това са входно изходния процесор (каналът за данни) и механизмът за прекъсване, които дават възможност за едновременно извършване на входно-изходни операции с дейността на процесора. Синхронизацията е решена със сигнал за прекъсване, изпращан от канала. При този сигнал процесорът прекъсва изпълнението на текущата програма и започва изпълнението на системна програма отговаряща на функция от ОС. След приключване на работа ОС връща управлението в прекъснатата програма. Така се поставят основите на мултипрограмирането.
Структура на ОС.
Може да се раздели на три групи. Вместо физически адреси на устройства започват да се използват символни имена. Системата за управление на входа и изхода става най-голямата част на ОС. Системата се състои от две част логическа и физическа. Логическата включвана към потребителската програма, а физическата е резидентна в областта на ОС. Друг компонент са процесорите, които обработват данните, преобразуват ги и дават резултати това са компилаторите и приложните програми. Трета категория са супервайзорните системи, който осигуряват интерфейса м/у апаратното и програмното осигуряване. Сложността на ОС, налага една част от нея да бъде непрекъснато заредена в паметта т.нар. ядро. То се зарежда с процедура за начално зареждане, останалата част от ОС съдържа транзитните програми, който се зареждат временно.
Спулинг.
За да се съгласува бързодействието на процесора с бавната работа на периферните у-ва, започва да се използва т.нар спулинг. От SPOOL- (Simultaneous Peripheral Operation On Line). При спулинга се използва междинен носител, върху който предварително се записват подлежащите за обработка задания, но с помощта на процесора. Докато буферирането позволява припокриване на входно/изходните операции с изчисленията в заданието, то спулинга позволява припокриването на входа/изхода на едно задание с изчислението на други. Така се осигурява много по-голямо натоварване на процесора, което увеличава производителността.
Системи с пряка връзка.
Друг подход е физическото свързване на две машини основна и сателитна, чрез дисково у-во. Такава система е предшественик на присъединения процесор.
Присъединен спомагателен процесор. Той представлява сателитна машина, управляваща периферните у-ва, външната памет, буферирането, блокуването на записи и др. Основната и сателитната машина се свързват чрез бързодействаща линия.
-
Мултипрограмиране и времеделене.
1.4.1. Мултипрограмни пакетни системи. Идеята е да се подържат в активно състояние няколко програми в оперативната памет.
Д![]()
окато едното задание А, чака изпълнението на входно-изходна операция, другото задание Б се изпълнява. След завършване на входно-изходната операция управлението отново се предава на А. Мултипрограмирането се базира на разделяне на времето на процесора и разделяне на пространството на паметта. Реализирането на вътрешната опашка на заданията е важен етап към прехода към ОС с мултипрограмиране. Заданията се въвеждат и записват, след това се планира реда на изпълнението им. Планиращата програма избира задание с най-висок приоритет въвежда се параметър определящ приоритета. Някои ОС подържат няколко опашки. За програмите които се намират едновременно в паметта при мултипрограмен режим, може предварително да бъде фиксирана памет или да се определя динамично. Повишеното бързодействие изисква и по голяма памет, но тъй като паметта не може да нараства неограничено, изход е намерен в създаването на виртуална памет.
Многозадачен режим. Разбира се асинхронно изпълнение на съвкупност от програми, разглеждани от ОС, като една програма, а под мултипрограмен асинхронно изпълнение на независими програми. Разликата е, че при първия за планирането и синхронизацията следи програмиста, а при втория за това се грижи ОС.
Отдалечено въвеждане на заданията. Възможно е отдалечено въвеждане на заданията, управлявано от потребителя. Програмиста работи на терминална станция, която е снабдена с у-ва за четене на перфокарти и др. Чрез протокол за връзка, може да се активира модул от ОС, който да възприеме заявката от терминала, резултатите могат по същия начин и да се върнат в терминала.
Диалогово (интерактивно) въвеждане на заданията. Заявките за обслужване се формират динамично и отделно от програмирането. Чрез терминал потребителя осъществява диалог с елементите на системата. Потребителя има средства за управление на архива и съответната библиотека. След оформяне на заданието, изпраща се заявка и то става част от общия входен поток на системата. Подсистемата осигуряваща диалогова работа с терминала, предава заданието на ОС в пакетен режим и от този момент потребителя няма достъп до него.
1.4.2. Системи с времеделене.
ОС с времеделене осигуряват едновременно обслужване на много потребители, имащи пряк достъп до комп. система с терминал. Прекият достъп предполага въвеждането на информация в диалогов режим. При тези ОС се прилага мултипрограмиране и планиране на процесора, така че всеки потребител циклично получава ресурсите на компютъра в продължение на кратък интервал от време.
Преминаването на заданията в ОС с времеделене и в пакетните ОС е аналогично, но при ОС с времеделене те не минават през фазата на входния спулинг. При пакетната обработка информацията се въвежда на порции по инициатива на ОС, при времеделението това се извършва по инициатива на потребителя. Пакетните системи са удобни за дълги задания, докато с времеделене се изисква заданието да е кратко за да бъде малко и времето за отговор. ОС с времеделене работят по-добре, когато отделните задания са близки по характеристики, и използват едни и същи функции на ОС.
1.4.3. ОС за реално време характеризират се с това, че действията им се управляват от външни събития, постъпващи в предварително неизвестни моменти. Обработката на всяко събитие трябва да е бърза в рамките на точно определен интервал от време. Външните събития са заявки от асинхронно работещи устройства. Поради това тези ОС се наричат ОС за управление на процеси. Обикновено се предвижда вмешателство на оператор само при непредвидени операции или възникване на грешки. Тъй като този тип ОС са за изпълнение на паралелни процеси, много често те се означават с многозадачен процес
1.4.4. ОС за обработка на транзакции заемат междинно положение между ОС с времеделене и ОС за реално време. Подобно на ОС за реално време работят на принципа за управление от събития и имат примитиви за гъвкаво управление на ресурсите, но нямат строги изисквания по отношение на времето за реакция. Допускат участие на оператор в процес на обработка. Всички заявки се формират от потребител в диалогов режим чрез терминали.
1.4.5. ОС за мултипроцесорни системи в тях едновременно могат да се изпълнят няколко програми на различни физически процесори. Обикновено включват повече от един процесори с приблизително еднаква производителност, които имат обща памет и периферни устройства, и се управляват от една ОС. Съществуват три най-общи организации за мултипроцесорни системи: 1.главен-подчинен - ОС се изпълнява само на главния процесор, докато подчинените изпълняват потребителски програми; 2.отделни монитори-всеки процесор изпълнява своя ОС, която управлява собствените му ресурси. Всяка програма се изпълнява само на един от процесорите, който й е определен; 3.симетрична организация-ОС управлява група идентични процесори и се премества от един процесор на друг. Потребителска програма може да се изпълни от различни процесори в различните моменти от врмето.
-
Съвременни ОС. ОС в настоящия момент е от четвърто поколение. Известност
придобива концепцията виртуална машина. Мрежа от компютри са компютри свързани чрез комуникационни линии. Разделят се по географски признак на глобални мрежи (WAN) и локални мрежи (LAN). При отдалечения достъп възникват проблеми с осведомеността на потребителя относно мястото на изпълнение на програмата му, кога данните се прехвърлят към програмите и обратно, и как се организира общуването между различните ОС.
Въпросът за взаимодействието м/у отделните компютри се решава по два начина. Първия е създаване на мрежова ОС, като се разширява съществуващото немрежово програмно осигуряване със средства за връзка. С тяхна помощ ОС общува с други подобни или специални системи. Всяка машина е със своя собствена ОС и потребители, които знаят за съществуването на други отдалечени машини, и могат да влизат в тях.
При другия подход се изгражда една хомогенна разпределена ОС, която се изпълнява на множество машини. Потребителите не знаят къде се изпълняват програмите им или къде се намират файловете им, това се подържа автоматично от ОС.
Виртуална машина. Създава се със средствата на ОС и се възприема от потребителя, като реална машина. Такава ОС представя една реална машина във вид на няколко виртуални машини и управлява едновременната работа на няколко различни ОС, като всяка от тях се изпълнява на собствена виртуална машина и предоставя на потребителя пълния си набор от функции.
Тагове от реферата: сифирани, пищов, ипове, витие, основни, Според











