Автор работы: Пользователь скрыл имя, 10 Марта 2013 в 18:44, курс лекций
Операциялық жүйе (ОЖ), жүйелік программалық қамтаманың негізгі құраушысы. ОЖ-ні құрған кезде, ОЖ-ні оңайлатудың маңызды әдісі болатын және олардың детальдарының таратылуын елемей, желінің жоғарғы деңгейдегі құрауыштарымен өзара әсерін бір жерге жинауға мүмкіншілік беретін абстракциялау тең қолданады. Бұл мағынада ОЖ қоданушы мен компьютер арасындағы интерфейсті көрсетеді.
1 дәріс. Кіріспе. Операциялық жүйелердің даму бағыттары. Операциялық жүйенің функциялары және міндеттері. Нақты уақыт режимі.
Операциялық жүйе (ОЖ) – дегеніміз компьютер құрылғыларын қолданушы үшін ыңғайлы пайдалану мүмкіншіліктерін қамтамасыздандыруға арналып жазылған программа.
Операциялық жүйе (ОЖ), жүйелік программалық қамтаманың негізгі құраушысы. ОЖ-ні құрған кезде, ОЖ-ні оңайлатудың маңызды әдісі болатын және олардың детальдарының таратылуын елемей, желінің жоғарғы деңгейдегі құрауыштарымен өзара әсерін бір жерге жинауға мүмкіншілік беретін абстракциялау тең қолданады. Бұл мағынада ОЖ қоданушы мен компьютер арасындағы интерфейсті көрсетеді.
Көптеген компьютерлердің
архитектурасы машиналар
ОЖ компьютердің өте күрделі архитектурасының барлық бөліктерін басқаруға арналған. Мысалға, егер бір компьютерде жұмыс істейтін бірнеше программа, бір мезгілде нәтижені басқа құрылғысына (принтерге) шығаруға әрекеттенсе не болатынын елестетейік. Біздер әр-түрлі программалар шығарған араласқан жолдар мен беттер алатын едік. ОЖ бұл сияқты хаосты баспаға арналған, дисктегі және баспаға кезекті ұйымдастыру ақпараттарын буферлеу арқылы болдырмайды. Көп қолданушыға арналған компьютерлердің ресурстарын басқару және оларды қорғаудың қажеттілігі өте анық. Демек, операциялық жүйе, ресустар менеджері сияқты, процессырлардың таралуын, жадының және әртүрлі програмалар арасында басқа русуртардың ретелгенін және бақыланғандығын іске асырады.
Егер есентеу жүйесі бірнеше қолданушының ортақ жүмысынан рұқсат етсе, онда олардың қызметінің қауіпсіздігін ұйымдастыру проблемасы шығады. Дискте ақпараттың сақталуын ешкімнің басқа адамдардың бөтен райларын жоймауын және бүлдірмеуін қамтамасыз ету керек. Бір қолданушылардың программаларына, екінші қолданушылардың программаларының ерікті түрде араласуына рұқсат етпеу керек. Есептеу жүйесін рұқсатсыз пайдалану әрекетін тыю керек. Осы әрекеттің бәрін, қолданушының және оның программаларының қауіпсіз жұмыс істеуін ұйымдастырушы ретінде, ОЖ іске асырады. Осы тұрғыдан қарағанда, ОЖ полициялық және қарсы шолу (барлаушы) функциясы жүктелген мемлекеттік қауіпсіздік жүйесін көосетеді.
Бір жағынан компьютердің аппаратурасы мен пайдаланушының есептері арасындағы интерфейс болып табылатын , ал екінші жағынан есептеуіш жүйесінің қорын тиімді қолдану және сенімділік есептеу ұйымдастыруына арналған басқарушы және өңдеу программаларының комплексін операциялық жүйе дейміз.
194 жылы программаны
есте сақтайтын бірінші сандық
есептеу машинасы іске
Символдық программалаудың маңыздылығы мойындалғанда және ассемблерлеу жүйелері кең тараған кезде, стандартты операциялық процедура өндірілді: ассемблер жүктеуішпен оқылады; ассемблер қолданушының стандартты программалар кітапханасы қосылған бастапқы программасын «символикалық колодалар» абсолюттік формасына түрлендіреді; ассемблерленген программа лентаға немесе картаға жазылады, ал жүктегіш осы программаны картадан негізгі жадыға енгізу үшін тағы да қайтадан пайдаланылады; содан кейін абсолютті программа орындалады. Әсіресе, осы қадамда карталарды өңдеу үшін ЭЕМ қажет ететін уақытпен салыстырғанда әрбір қадам оператор жағынан манипуляцияны қажет етеді және көп уақыт алады.
ОЖ-нің «1-ші буыны (ұрпағы)» өмірге жоғарыда айтылған тиімсіздіктермен, сонымен қатар басқа да пікірлемен келтірілген. Бұл қосымша факторларда: құрал-жабдықтарды басқаруға шығатын шығын; басқа тілдердің болуы; кітапханалық программалардың дамуы және құрылғылар, әсіресе, енгізу-шығару операцияларына қатысты ерекшеліктер; абсолюттік программаның орындалуына қажет баолық программалар секциялары және бағыныңқы программаларды аударудың (трансляциялаудың) ыңғайсыздығы, ең басында барлығы бірге және барлық уақытта кез келген программаларға өзгертулер енгізілген кезде таратылуы келтірілген. Алғашқы жүйелік дестелер (пакеттер) стандартты тізбекті «жүктеу/аудару (трансляция)/жүктеу/ орындау» қажетті жүйелік программаларды (ассемблер, компилятор, жүктеуіш немесе кітапханалық бағыныңқы программалар) табатын және жүктейтін, сонымен қатар бірінші тапсырмадан екінші тапсырмаға өтуді басқаратын, орталық басқару программасының көмегімен автоматтандырылады. Тілдік аударулар (трансляторлар) программаларды абсолюттік емес, жылжымалы пішінде (формада) құру үшін қайта көшірілген. Қалыпты (колоданы) араластыруға рұқсат ететін бастапқы және жылжымалы объекті пішінде (формада) программалары бар байланыстырғыш жүктемелер жасалған содан кейін кітапханалық программаларды жылжымалы объекті пішінінде (формасында) сақтау мүмкіндігі пайда болды. Операторға (оператор-аламға) енгізу-шығару дестелеріне (пакеттеріне) арналған, стандартты емес тапсырмаларды күтуші (обслуживание) және қабылданбаған кезде жүйелерді қалпына келтіретін физикалық жабдықтарды басқару қажет. Тапсырма авторының, тапсырманың орындалу процессіне тікелей қатынасы жоқ. Бұл ОЖ-де қауіпсіздік ең қиын және нақтылы проблема: жүйе өздігінен немесе қолданушы арқылы жеңіл бүлінуі мүмкін, одан басқа, кез келген қолданушы өз тапсырмасының ішінен дестедегі (пакеттегі) келесі тапсырманы оңай оқуы мүмкін. Ресурстарды ең бірінші негізгі жадыны және енгізу-шығару құрылысын үлестіру, ОЖ-ге қарағанда, үлкен дәрежелі тіл процессорларының және қолданушылар программасының таныстырмасы болды. Аппаратураның архитектурасы және программалық айқындалушылығына қарағанда, ОЖ-нің болашақта даму көзқарасынан айырмашылық аппараттық қамтамада уақыт периоды шамамен ЭЕМ-нің буындарының (ұрпақтарының) даму периодымен түйіседі.
1959 жылдан 1963 жылдардағы
периодта бірнеше маңызды
Бұл жаңа архитектураның артықша тиімділік мүмкіндігін пайдалану мақсатымен күрделірек енгізу-шығару программалары жазылған. Оның құрамына деректерді автоматты түрде оқуды қамтамасыз ететін буферлеу программалық құралы кірді. Олар программаға қажет болғанға дейін және олардың шыуын кейінірекке қалдыратын, шығу деректерін кезекке оналастыру үшін, сонымен қатар енгізу-шығару үзілісін сезінетін және басқаруды үзілген программаға қайтаратын өңдеуді үзу стандартты программалары бар.
Ерекше ішкі жағдайлар туралы сигнал беру, мұндағы, арифметикалық толып кету және таңдап қосу үшін командалар қосылды, тыйым салу (сөндіру) және үзіліс механизмінің (іс-әрекетінің тоқтатылуы) тоқтатылуы пайдалана бастады.
ОЖ есептерінің күрделенуі және толықтырылуына қарай (жай қолданушы нақты аппаратурадан көбірек қашықтайтын) тапсырмаларының сипаттамаларын және оларға қойылатын талаптарды жүйелі әдіске келтірудің қажеттілігі туындады. Осы мақсат үшін тапсырмаларды басқару тілдері енгізілген. Бірақ, тапсырманы әр уақыт моментінде жеке (бір-бірінен) өңдеу, үдемелі (интенсивный) есептеу тапсырмасын орындау үшін, бұрынғыдай каналдарды өте төмен белсенділікке (активности) келтірді. Сонымен қатар, үдемелі енгізу шығару тапсырмалары үшін, егер каналдың және ОӨҚ-ның операциялары максимальды қиюласқан (совмещение) деңгейге жеткен кезде, ОӨҚ және канал өте төмен белсенділікке (активность) келтіріледі.
1962 жылдан 1969 жылдар аралығында үлкен ОЖ-лердің тегіс барлығында тапсырмаларды өңдеудің жаңа әдісі – мультипрограммалау қолданыла бастады. Сонымен қатар, дестелік өңдеуге альтернатива ретінде, уақытты бөліктегіш, есептеулерді орындаудың жаңа әдісі жасалды, жүйә үшін нақты басқарылатын жадыны және қолданушылардың кітапханалық программаларын, сол сияқты қолданушының тапсырмаларын өңдеді күтушілер үшін тез қатынасты үлкен дискілік құрылғылар қамтамасыз етті. Көптеген ЭЕМ-на жадыны және командаларды қорғайтын аппараттық құралдар енгізілген. Кейбір үлен машиналарда адрестерді баптайтын аппараттық құралдары бар, үлкен «виртуалды» жадына жүзеге асыруға мүмкіндік берген негізгі жады жүйесі пайда болды. Мультипроцессорлық конфигурациялар көбірек таратылған. Ресурстарды тарату және қорғау мультимедиялық орташа қиын шешілетін және өте қажетті проблема. Онда көп процесстер бір мезгілде бірігіп және жеке (монопольно) жүйе ресурстарын сұрап пайдалануы мүмкін. Көбінесе олар сигналдарды бір-біріне жиі беруі керек және ол сигналдар шамасы (потенциал) «қастандық» немесе қате болуы мүмкін. Тура осы периодта ОЖ-ні зерттеу есептеу техникасы аймағындағы ең басты бағыт болды.
Осы уақытта ЭЕМ-ның үлкен желілері, байланыс тізбегі негізінде салынған, қызмет ұсына бастайды. Желілер жүйелік программалық қамтамаға одан да үлкен талаптар ұсынады. Аппаратық микропрограммаларды қайта жазу мүмкіндігі бар басқару жадысының пайда болуы, ақпаратты автоматты түрде деңгейлер арасында беретін негізгі жадының иерархиялық құрылымы, ассоциотивті есте сақтау құрылғыларының өнімділігі сияқты өзгерістер бар.Сол сияқты өңдеу құрылғыларындағы, оның ішінде программаланатын «параллельизмнің» тереңдеуі, программалық қамтамаға қатысты жаңа талаптар әкелді және ОЖ принциптерін түсіндіреді. Қазіргі заманғы программалық қамтамалар жүзеге асуы мүмкін болатын процесстерді және ресурстарды жобалау үшін, ОЖ қарапайымдылығын анықтау:
Есептеу машинасының дамуының маңызды периоды 1960-1980 жылдарға жатады. Процессор уақытын тиімді пайдалануды жоғарылату үшін деректерді, тербелістен-тербеліс арасында тәсілдерді немесе spooling (Simultaneous Peripheral Operation On Line сөзінен қысқартылған) енгізіледі. Жүйелік дестелерге (пакеттерге) тербелістен-тербеліс астында техникасының енгізілуі бір тапсырманың енгізу-шығару операцияларын нақты басқа тапсырманың орындалуымен бірлестіруге рұқсат етті. Бірақ, бұл операциялардың аяқталғаны туралы процессорға хабар жеткізу үшін үзу аппаратын жетілдіруді (жасауды) талап етті.
Процессорды пайдаланудың
тиімділігінің әрі қарай
Әрбір программалық жасау құрауыштары операциялық жүйенің басқаруымен жұмыс жасайды.
ЭЕМ аппаратурасына
операциялық жүйеден басқа
Пайдаланушының өз программаларымен әрекеттестігі операциялық жүйенің интерфейсі арқылы өтеді. Олардың әрбір командалары қолданбалы прграммаларға өту үшін операциялық жүйеден өтеді.
Операциялық
жүйенің орындайтын негізгі
1. пайдаланушыдан қабылдайтын командалар және олардың өңдеуі;
2. басқа программаларды іске қосу, тоқтату, кідіру үшін қабылданатын және орындалатын программалық сұраныс;