- •Коммерциялық емес акционерлік қоғам
- •Операциялық жүйелер
- •5В070200 - Автоматтандыру және басқару мамандығының студенттері үшін зертханалық жұмыстарды орындауға арналған әдістемелік нұсқаулар
- •1 Зертханалық жұмыс №1. Windows операциялық жүйесі. Командалық жол режимі
- •1.1 Зерханалық жұмыс тапсырмасы
- •1.2 Жалпы мәлімет
- •1.3 Есептемеге қойылатын талаптар
- •1.4 Бақылау сұрақтары
- •2 Зертханалық жұмыс №2. Windows операциялық жүйесі. Файлдық жүйенің командаларын зерттеу
- •2.1 Зертханалық жұмыс тапсырмасы
- •2.2 Жалпы мәлімет
- •2.3 Бақылау сұрақтары
- •3 Зертханалық жұмыс №3. Windows операциялық жүйесі. Пакеттік файлдар командалары
- •3.1 Зертханалық жұмыс тапсырмасы
- •3.2 Жалпы мәлімет
- •3.3 Бақылау сұрақтары
- •4 Зертханалық жұмыс №4. Есептеуіш процестер және ресурстары, компоненттері
- •4.1 Зертханалық жұмыс тапсырмасы
- •4.2 Жалпы мәлімет
- •4.3 Жадыны қолдану туралы толық мәлімет
- •4.4 Бақылау сұрақтары
- •5 Зертханалық жұмыс №5. Құрылғылар бақылаушысы
- •5.1 Зертханалық жұмысқа тапсырма
- •5.2 Жалпы ақпарат
- •5.3 Бақылау сұрақтары
- •6 Зертханалық жұмыс №6. Ресурстар, олардың процестер арасында бөлінуі
- •6.1 Зертханалық жұмысқа тапсырма
- •6.2 Жалпы ақпарат
- •6.3 Бақылау сұрақтары
- •7 Зертханалық жұмыс №7. Ағымдардың өзара блокталуы және оларды табу
- •7.1 Зертханалық жұмысқа тапсырма
- •7.2 Жалпы ақпарат
- •7.3 Бөлінетін ресурстар. Қауіпсіз және қауіпті күйлер
- •7.4 Бақылау сұрақтары
- •8 Зертханалық жұмыс №8. Ағындарды синхрондау құралдары, критикалық секциялар және тығырықтар. Есептеуіш ағындарды MatLab ортасында құру
- •8.1 Зертханалық жұмысқа тапсырма
- •8.2 Тапсырмаларды орындау реті
- •8.2 Жалпы ақпарат
- •8.3 Бақылау сұрақтары
- •9 Зертханалық жұмыс №9. Операциялық жүйеде процессорлық уақытты тарату әдістері
- •9.1 Зертханалық жұмысқа тапсырма
- •9.2 Жалпы ақпарат
- •9.3 Бақылау сұрақтары
- •10 Зертханалық жұмыс №10. Жадыны басқару
- •10.1 Зертханалық жұмысқа тапсырма
- •10.2 Жалпы ақпарат
- •10.3 Бақылау сұрақтары
- •8.1.1 Тапсырмасының программасының листингі
- •8.1.2 Тапсырмасының программасының листингі
- •10.1.1 Тапсырмаға арналған программа листингі
- •10.1.8 Тапсырмасына программа листингі
8.2 Жалпы ақпарат
Егер глобалады айнымалыны бірнеше ағындармен өзгерткенде, онда орындалған өзгертулер жоғалып кетуі мүмкін. Қосымшалардың бірнеше ағындар кезіндегі жұмысы дұрыс болуы үшін ағындардың программа операторларына (айнымалылардың мәнін өзгертетін және жадыға жазатын операторларға) қол жеткізуін кезекпен орындалатындай қылу керек.
Тек бір процестің ғана глобалды айнымалылардың мәндерін жазу және өзгерту мүмкіндігі болуы керек.
Бұл есепті шешу үшін қарапайым құралдар – бір процестің критикалық бөліктеріне кезекпен қол жеткізуді қамтамасыз ететін критикалық секциялар және күрделі құралдар - Mutex (mutually exclusive – взаимно-исключающий) қолданылады. Жай тілмен айтқанда мьютекстер, олар әртүрлі процестер тудырған ағындар үшін тура сондай есептерді шешеді. Сонымен қатар критикалық бөліктерге кезекпен қол жеткізуді қамтамасыз ету есептері семафорлар және оқиғалар – әмбебап синхрондау құралдарының көмегімен де шешіледі.
8.2.1 Ағымдар.
Windows ОЖ көп есепті (многозадачный) болып табылады, яғни бір уақытта бірнеше есептерді орындайды.
Бір бағдарлама кодтары бір уақытта орындалатын бірнеше тәуелсіз блоктарынан тұра алады. Әрбір блок ағын деп аталады.
Жаңа қосымша қосылғанда ол үшін бағдарлама коды орындалатын негізгі 1 ағым пайда болады. Сонымен бірге кез келген уақытта негізгі ағыммен параллель орындалатын қосымша ағымдар құруға болады.
Осылай көп есептікті бағдарлама ішінде де құруға болады. Мысалы егер өте көп уақыт алатын есеп шығару қажет болса, онда қосымша ағым құру ыңғайлы. Негізгі бағдарламаны екі ағымға бөледі, біреуінде есептеу орындалады, екіншісінде қажетті жұмыс орындалады.
8.2.2 Ағымдар синхронизациясы.
Есептеу жүйесінің аппараттық және информациялық ресурстарын қоса қолданумен байланысты ағымдар синхронизациясының қажеттелігі тек мультипрограммалық операциялық жүйелерде пайда болды. Ағымдар арасында мәліметтер алмасу, мәліметтерді бөлу, процессорға және енгізу-шығару құрылғыларына қол жеткізу жағдайында тығырықтарды болғызбау үшін синхронизация қажет.
Ағымдардың өзара байланысының негізінде синхронизация жатыр. Мысалы, қабылдаушы-ағым тек жіберуші-ағым мәліметті буферге салған соң ғана ол мәліметті шақыра алады. Егер де қабылдаушы-ағым мәліметті буферге түскенге дейін шақырып қойса, онда ағым тоқтатылады.
8.3 Бақылау сұрақтары
8.3.1 Синхрондау не үшін керек?
8.3.2 Семафор және оқиғалар дегеніміз не?
8.3.3 Мьютекс қандай қызмет атқарады?
8.3.4 Критикалық секциялармен қалай жұмыс істелінеді?
8.3.5 ThreadObject не үшін арналған?
8.3.6 Матрицамен жұмыс істейтін функциялар тізімі қандай?
8.3.7 Матрицаны Excel файлына жазу үшін қандай функциялар қажет?
8.3.8 numThreads нені көрсетеді?
9 Зертханалық жұмыс №9. Операциялық жүйеде процессорлық уақытты тарату әдістері
Жұмыстың мақсаты – қадағалау (диспетчеризация) тәртіптерімен танысу және оларды процессорлық уақытты таратуда қолдануға дағдылану.
9.1 Зертханалық жұмысқа тапсырма
Тапсырмаларды орындамас бұрын 9.2 тармақта көрсетілген әдістемелік нұсқауларды оқыңыз.
9.1.1 0-2pi интервалында cos(x) функциясының мәндерін МАТЛАБ бір немесе бірнеше ағымын қолданып әртүрлі қадамдарда есептеңіз. Орындалу ұзақтықтарын салыстырыңыз, графиктерін тұрғызыңыз, уақыт мәндерін MS Excel кестесініне жазыңыз.
9.1.2 0-2pi интервалында sin(2x)+cos(x) функциясының мәндерін МАТЛАБ бір немесе бірнеше ағымын қолданып әртүрлі қадамдарда есептеңіз. Орындалу ұзақтықтарын салыстырыңыз, графиктерін тұрғызыңыз, уақыт мәндерін MS Excel кестесініне жазыңыз.
9.1.3 №8.1.1 тапсырманы қолданып уақыт санаңыз. Gettickcount функциясын қолдану керек.
9.1.4 А, В,С үш есеп жуықпен бір уақытта компьютерлік орталыққа келіп түседі. Оларды орындау уақыты 1, 2, 4 минут деп болжануда. Процестердің арасында ауысу уақыты (контексті ауыстыру уақыты) – 2 мс, ал процессордың квант уақыты 20 мс деп санап, есептерді орындаудың орташа уақытын табу керек. Циклдық жоспарлау (RR) - әрбір есепке өзіне тиісті уақыт бөлігі беріледі.
9.1.4 A, B, C, D төрт пакеттік есеп екіпроцессорлық компьютерге жуықпен бір уақытта келіп түседі. Оларды орындау уақыты 7, 4, 6, 2 минут деп болжануда. Орнатылған басымдылық реті (приоритет) 3, 2, 1, 4, жоғарғысы 4. «Бірінші келді, бірінші кетті» алгоритмі үшін орташа уақытты анықтаңыз, жіберілген есеп соңына дейін орындалады. Процестер арасындағы ауысуларға кеткен уақыт ескерілмесін.