• III – BOSQICH KI-13-20 GURUH TALABASI ASLANOV SHOHJAHON UZOQOVICHNING OPERATSİON TİZİMLAR FANIDAN TAYYORLAGAN
  • QARSHI-2022
  • Kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti qarshi filiali




    Download 248.14 Kb.
    Pdf ko'rish
    Sana24.12.2022
    Hajmi248.14 Kb.
    #36907
    Bog'liq
    Operatsion tizimlar 4 - Mustaqil ishi
    OPERATSİON TİZİMLAR 1- mustaqil ish


    O‟ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA 
    KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI 
    MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT 
    TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI 
     
     
     
     
     
    “ KI ” FAKULTETI 
    III – BOSQICH KI-13-20 GURUH TALABASI 
    ASLANOV SHOHJAHON UZOQOVICHNING 
    OPERATSİON TİZİMLAR 
    FANIDAN TAYYORLAGAN 
     
     
     
    4-Mustaqil ishi 
     
     

    Bajardi
    Sh.U.Aslanov
    Qabul qildi M.F.To„rayev
     
    QARSHI-2022 


    Mavzu: 
    Zamonaviy operatsion tizimlar ilovalari.Operatsion tizimlarda virtual xotira 
    tushunchasi.Operatsion tizimlarda hisoblash jarayoni. ―Tupiklar‖ muammosi va ular bilan kurashish 
    usullari.Multidasturlash.Ajratilgan vaqt tizimlarida ko‘p foydalanuvchi rejimi. 
    Reja: 
    1. Zamonaviy operatsion tizimlar ilovalari.Operatsion tizimlarda virtual xotira 
    tushunchasi 
    2. Operatsion tizimlarda hisoblash jarayoni. ―Tupiklar‖ muammosi va ular 
    bilan kurashish usullari. 
    3. Multidasturlash.Ajratilgan vaqt tizimlarida ko‘p foydalanuvchi rejimi. 
    4. Foydalanilgan adabiyotlar. 
    Zamonaviy kompyuter tarmog‗i har bir kompyuterga o‗rnatilgan bir qator tarmoq 
    operatsion tizimlari nazorati ostida ishlaydi. Ushbu operatsion tizimlar bir xil yoki 


    boshqacha bo‗lishi mumkin. Masalan, bir xil Unix operatsion tizimlar tarmoqdagi 
    barcha kompyuterlarda ishlashi mumkin. Yana ham aniqroq variant - bu turli xil 
    operatsion tizimlarga ega tarmoqdir, masalan, ba‘zi kompyuterlar Unix FreeBSD, 
    boshqalari CentOS, qolganlari Windows Server-da ishlaydi. Ushbu operatsion 
    tizimlarning barchasi bir-biridan mustaqil ravishda ishlaydi, ularning har biri o‗z 
    jarayonlarini yaratish, yakunlash va mahalliy resurslarni 210 boshqarish bo‗yicha 
    mustaqil qarorlar qabul qiladi. Ammo har qanday holatda ham, tarmoq orqali 
    ishlaydigan kompyuterlarning operatsion tizimlari tarmoqdagi turli xil 
    kompyuterlarda ishlaydigan jarayonlarning o‗zaro ta‘sirini tashkil qilish va ushbu 
    kompyuterlarning resurslarini tarmoq foydalanuvchilari o‗rtasida almashish uchun 
    o‗zaro kelishilgan aloqa protokollar to‗plamini o‗z ichiga olishi kerak. 
    Farzand jarayon resurslari ajratilgandan so‗ng unga dasturiy kod manzili, 
    ma‘lumot belgilari, dastur hisoblagichni o‗rnatish kerak bo‗ladi. Bu yerda ikki xil 
    yechim mavjud. Farzand jarayon birinchi Jarayon 2 Jarayon 4 Jarayon 23 Jarayon 
    1 Jarayon 12 Jarayon 255 Jarayon 3 Jarayon 14 Jarayon 15 Jarayon 24 Jarayon 128 
    59 holatida registr va foydalanuvchi konteksti bo‗yicha ona jarayon nusxasi bo‗lib 
    shakllanadi, shu sababli qaysi biri ona jarayoni nusxasi ekanligini aniqlash kerak 
    bo‗ladi. Ikkinchi holatda farzand jarayon istalgan biror fayli yangi dasturni 
    yuklaydi. Unix operatsion tizimi faqat birinchi usuldagi jarayon tug‗ilishiga ruhsat 
    beradi; ya‘ni ona jarayon nusxasini yaratish uchun dastlab yangi dasturni yuklaydi, 
    so‗ng farzand jarayoni maxsus chaqiriq tizimi yordami bilan o‗zining 
    foydalanuvchi kontekstini almashtirishi kerak bo‗ladi. VAX/VMS operatsion 
    tizimi faqat ikkinchi usuldan foydalanadi. Windows NT ikki xil rejimdan ham 
    foydalanadi (API turlariga qarab). Ona jarayon nusxasiga o‗xshab yangi jarayonni 
    paydo bo‗lishi bittadan ko‗proq jarayonni tashkil qilishda ishlatish uchun mavjud 
    dastur imkoniyatlaridan foydalanadi. Uning ishi bo‗yicha foydalanuvchi kontekst 
    jarayonini almashtirishi mumkin. Ya‘ni bir jarayon doirasida turli xil bir nechta 
    dasturlarni bajarilish ketmaketligiga o‗tkazish mumkin. Jarayonlar taqsimlanib 
    berilgandan so‗ng, PCBda qolgan axborotlar yozib qo‗yiladi va yangi jarayon 
    holati tayyorlilik holatiga o‗tkaziladi. Endi farzand jarayonlari paydo bo‗lgandan 


    so‗ng ona jarayoni holatini aytib o‗tish qoldi. Ona jarayoni farzand jarayonlarini 
    bajarish bilan bir vaqtda o‗z ishini ham bajarishi mumkin, ayrim ishlarni 
    yakunlashni yoki barcha farzand jarayonlarning paydo bo‗lishini kutishi mumkin. 
    Biz jarayon hayot davrini tugashini batafsil ko‗rib chiqmaymiz. Jarayon o‗z ishini 
    tugatgandan so‗ng operatsion tizim uni bajarish yakunlangan holatga o‗tkazadi va 
    jarayon boshqaruv blokidagi yozuvlarga muvofiq u bilan bog‗liq barcha resurslarni 
    bo‗shatadi. Bu yerda PCB yo‗q qilinmaydi, tizimda ma‘lum bir vaqtgacha 
    saqlanadi. Bu ona jarayonidan farzand jarayoni tug‗ilishi yakunlangandan so‗ng 
    operatsion tizim jarayonning tugallanishi ―o‗limi‖ to‗g‗risida va/yoki uning 
    ishlashi to‗g‗risida statistik axborotlarni so‗rashi mumkin. Ona jarayoni 
    so‗rovigacha qayta ishlovchi jarayonlar yoki uning faoliyatining oxirigacha, ya‘ni 
    tizimda jarayonlarning tugashigacha bo‗lgan batafsil axborot PCB da saqlanadi. 
    Unix operatsion tizimlarida jarayonlar bajarilishi tugallangan holatida bo‗ladi. 
    Shuni aytib o‗tish kerakki ko‗plab operatsion tizimlarda (masalan, VAX/VMS da) 
    ona jarayonlari o‗zining ―farzandlari‖ uchun yakunlangan ko‗rinishga o‗tadi. 
    Boshqa operatsion tizimlarda 60 (masalan, Unix) ona jarayon vazifasi tugagandan 
    so‗ng farzand jarayonlari o‗zining mavjudligini davom etiradi. Shu sababli farzand 
    jarayon o‗z ishini davom ettirishi uchun PCB da axborotlarni o‗zgartirish zarurati 
    paydo bo‗ladi. 20 raqamli jarayondan 25 raqamli jarayon tug‗ilgan bo‗lsin, va 
    uning vazifasi tugagandan so‗ng uzoq vaqt hisoblash tizimida saqlanib qoladi. 20 
    raqamli jarayon operatsion tizimda boshqa jarayonda qatnashishi bundan mustasno 
    emas. Agar 25 jarayonining ona jarayoni to‗g‗risida axborot o‗zgartirilmasa, u 
    holda jarayon geneologik daraxti noto‗g‗ri deb hisoblaniladi – 25 jarayoni yangi 20 
    jarayonini o‗zining onasi deb hisoblaydi, 20 jarayon ochilganda esa kutilmagan 
    holat yuz beradi. ―Yetim qolish‖ jarayonini ―asrab qolish‖ qoidasi bo‗yicha 
    operatsion tizim ishini davom ettiradi va butun vaqt davomida ishlaydi. Ko‗p 
    marotabalik operatsiyalar Bir martalik operatsiyalar operatsion tizim boshqaruvi 
    ostida joylashgan jarayonlar sonining o‗zgarishiga olib keladi va har doim 
    ajratilgan yoki belgilangan resurslarni ozod qilish jarayonlariga bog‗liq bo‗ladi. 
    Ko‗p martalik operatsiyalar operatsion tizimlarda jarayonlar sonini o‗zgartirmaydi 


    va ajratilgan yoki bo‗shatilgan resurslarga bog‗liq emas. Jarayonni ishga tushirish. 
    Operatsion tizim tayyorlilik holatida bo‗lgan jarayon sonlaridan birini keyingi 
    vazifani bajarish uchun tanlab oladi. Operatsion tizim tanlagan jarayonlar 
    axborotlarni tezkor xotirada mavjud bo‗lishini ta‘minlaydi. So‗ng jarayon holati 
    ushbu jarayon uchun registr belgilarini tiklaydi, bajarilishini o‗zgartiradi va 
    jarayon buyruqlarini hisoblagich ko‗rsatishiga muvofiq boshqaruv buyruqlarini 
    uzatadi. Kontekstni qayta tiklash uchun kerakli barcha ma‘lumotlar, operatsiyani 
    amalga oshiradigan PCB jarayonidan olinadi. Jarayonni ma‘lum bir vaqtga 
    to‗xtatish. Bajarish holatida bo‗lgan jarayon ishini istalgan biror bir uzilish 
    natijasida to‗xtatish mumkin. Protsessor buyruq hisoblagichini avtomatik ravishda 
    saqlaydi va bajarilayotgan jarayonda bir yoki bir nechta registr bo‗lishi mumkin, 
    so‗ng esa joriy uzilishni qayta ishlash uchun maxsus manzil bo‗yicha boshqaruvga 
    uzatiladi. Uzilishni qayta ishlash bo‗yicha ishni qurilma (hardware) oxiriga 
    yetkazadi. Odatda ko‗rsatilgan manzilda operatsion tizimning bir qismi joylashgan 
    61 bo‗ladi. U tayyorlilik holatidagi jarayonga o‗tkazishda uning PCB da tizimli va 
    registrli kontekst jarayoni dinamik qismida saqlanadi va uzilishlarni qayta ishlaydi, 
    u holda paydo bo‗lgan uzilish bilan bog‗liq belgilangan ishlar bajariladi. Jarayonni 
    bloklash. Jarayon biror bir hisoblash tizimlarida paydo bo‗lishi kutilmayotganda va 
    ishini davom ettirish mumkin bo‗lmaganda bloklanib qo‗yiladi. Buning uchun 
    belgilangan chaqiriq tizimi yordami bilan operatsion tizimga murojaat qiladi. 
    Operatsion tizim chaqiriq tizimini qayta ishlaydi (kiritish/chiqarish operatsiyalarini 
    nomlaydi, jarayonlar navbatiga jarayonni qo‗shadi, qurilmada kutayotganlarni 
    bo‗shatadi va boshqalar) va bajarish holatidan kutish holatiga o‗tkazib uning PCB 
    si kontekst jarayoni kerakli qismiga yozib qo‗yadi. Jarayonni qayta ochish. Istalgan 
    biron bir operatsion tizimda paydo bo‗lgan biror bir holatda aynan qanday hodisa 
    yuz berganini aniqlash zarur bo‗ladi. So‗ng operatsion tizim ushbu holat uchun 
    kutish holatida ayrim jarayonlar joylashganmi yoki yo‗qligini tekshiradi va agar 
    topilsa, hodisa bilan bog‗liq bo‗lgan ishlarni bajarish uchun uni tayyorlilik holatiga 
    o‗tkazadi. Jarayonni yaratish Jarayonni yaratish – jarayonlardagi asosiy 
    operatsiyalardan biridir. Ona jarayoni farzand jarayonlarini yaratadi, bu esa o‗z 


    navbatida boshqa jarayonlarni keltirib chiqaradi va shu bilan jarayon daraxtini 
    shakllantiradi. Jarayonlarni yaratishda turli xil yondashuvlar mavjud, ona va 
    farzand jarayoni tomonidan resurslardan birgalikda foydalanish (almashish), ularni 
    parallel ravishda bajarish va manzillar va xotiradan foydalanish. Resurslarni 
    taqsimlash Quyidagi yondashuvlar bo‗lishi mumkin: 

    Ona va farzand jarayoni 
    barcha resurslarni almashadi (bo‗lishadi); 

    Farzand jarayonlari ona jarayonlari 
    resurslarining bir qismini almashadi; 

    Ona va farzand jarayonlari umumiy 
    resurslarga ega emas. Bajarish Quyidagi yondashuvlar bo‗lishi mumkin: 62 

    Ona 
    jarayoni va farzand jarayonlari birgalikda bajariladi; 

    Ona jarayoni farzand 
    jarayonining tugashini kutmoqda. Manzil va xotiradan foydalanish Quyidagi 
    yondashuvlar bo‗lishi mumkin: 

    Farzand jarayonining manzil maydoni ona 
    jarayonining manzil maydonidan nusxa ko‗chiradi; 

    Farzand jarayoni unga 
    yuklangan dasturga ega. 

    Farzand jarayoni ona jarayoni (yengil jarayon) bilan bir 
    xil xotira maydonida ishlaydi. Unix operatsion tizimda bu quyidagicha amalga 
    oshiriladi: fork – bu yangi jarayonni yaratadigan tizim chaqiruvi. Ona jarayonining 
    xotirasini nusxalashtiradi va farzand jarayoni uchun yangi virtual manzillar 
    maydonini yaratadi. Shundan so‗ng, tizim xotirasida yangi dastur bilan 
    almashtirish uchun yana bir tizim chaqiruvi amalga oshiriladi - exec (execve) tizim 
    chaqiruvi. Farzand jarayoni ona jarayonining o‗rniga davom etadi. 
    Jarayon - bu foydalanuvchi tomonidan ishga tushurilgan dastur, jarayon 
    buyruqlarni bajaruvchi to‗plam majmui (xotirani bajarish uchun ajratish va fayllar 
    va kiritish/chiqarish qurilmalaridan foydalaniladigan manzil va boshqalar) va 


    operatsion tizim boshqaruvida joylashgan joriy vaqtda uni bajarilishini (registr, 
    dastur hisoblagich, stek holati va qo‗llash belgilari) tavsiflaydi. Ish paytida 
    operatsion tizim ko‗plab dasturlarni bajaradi: paketli vazifalar, vaqtni taqsimlash 
    rejimida foydalanuvchi dasturlari, tizim dasturlari va jarayonlari. Foydalanuvchi 
    dasturlarini tavsiflovchi bir nechta o‗xshash atamalar (terminlar) mavjud: jarayon 
    (process), vazifa (job), 37 topshiriq (task). Ushbu atamalarni sinonim deb 
    hisoblashimiz mumkin. Jarayonning muhim xususiyati: bu ketma-ket bajarilishi 
    kerak bo‗lgan hisoblash birligi, ya‘ni, har bir jarayon o‗zining ketma-ket 
    boshqarish oqimiga (control flow) ega - bu jarayon tomonidan bajariladigan 
    buyruqlar 
    ketma-ketligidir. 
    Operatsion 
    tizim 
    tomonidan 
    yaratilgan 
    va 
    boshqariladigan jarayon quyidagi asosiy ma‘lumotlarni o‗z ichiga oladi: 

    dastur 
    hisoblagichi (program counter - PC) - bajarilayotgan joriy buyruq manzili; odatda 
    qurilmalarning maxsus tizim registrida saqlanadi; 

    Stek - bu operatsion tizim 
    tomonidan jarayon protseduralarining lokal ma‘lumotlari, ularning parametrlari 
    (argumentlari) va hisob-kitoblarni tashkil qilish uchun zarur bo‗lgan ma‘lumotlar 
    o‗rtasida saqlanadigan, jarayonni yaratishda operatsion tizim tomonidan ajratilgan 
    asosiy xotiraning doimiy maydoni. Keyingi protsedurani ishga tushirishda, 
    faollashtirish 
    yozuvi 
    (activation 
    record) 
    stekda 
    beriladi, 
    shuningdek, 
    protseduraning hozirgi avlodining lokal ma‘lumotlarini saqlash uchun stek kadri 
    (stack frame) va lokal ma‘lumotlar maydoni (local data area) deb ataladi. 

    Ma‘lumotlar bo‗limi (data section) – bu operatsion tizim tomonidan global 
    o‗zgaruvchilar, massivlar, tuzilmalar, obyektlar saqlanadigan jarayonga ajratilgan 
    asosiy xotiraning statik (doimiy ravishda ajratilgan, doimiy o‗lchamdagi) maydoni. 
    Jarayonning bajariladigan kodi (buyruqlar) dastlab ikkilamchi xotirada (diskda) 
    saqlanadi va unga kirishda to‗liq yoki qisman asosiy xotiraga yuklanadi. Jarayon 
    holatlari Jarayon ishga tushganda, jarayon o‗z holatini quyidagicha o‗zgartirishi 
    mumkin: 

    Yangi (new): jarayon operatsion tizim tomonidan yaratilgan, ammo 
    hali ishga tushmagan; 

    Bajarish (running): Jarayon buyruqlari protsessorda 
    bajariladi yoki OT ishlaydigan kompyuter tizimining protsessorida; 

    Kutish 
    (waiting): jarayon qandaydir hodisa sodir bo‗lishini kutmoqda, masalan, 


    kiritish/chiqarishni (I/O) tugallanishini. Kutish holatida jarayon protsessorni 
    egallamaydi; 38 

    Tayyorlilik (ready):jarayon bajarilishi uchun protsessor 
    resurslarini olishni kutmoqda. Jarayon odatda u yaratilganda ham, yoki 
    kiritish/chiqarish (I/O) tugagandan so‗ng ham (kutish holatidan) bajarilishga tayyor 
    holatga keladi; 

    Tugatish (finished): Jarayonni bajarish tugallandi. Jarayon holat 
    diagrammasi Kiritilgan topshiriqlarni hisoblash tizimlarda bajarilishi (faqat 
    foydalanuvchi dasturlari emas, balki operatsion tizimning belgilangan qismi 
    bo‗lishi mumkin) jarayon majmuini tashkil qiladi. Shubxasiz, har bir vaqt 
    momentida bir protsessorli kompyuter tizimida faqat bitta jarayon bajarilishi 
    mumkin. Multidasturli hisoblash tizimlarida protsessordagi bir jarayonni 
    boshqasiga ulash orqali bir nechta jarayonlarni parallel qayta ishlanadi. Bitta 
    jarayon bajarilgunga qadar qolganlari o‗z navbatini kutadi. Har bir jarayon kamida 
    ikki holatdan iborat bo‗lishi mumkin: bajariluvchi jarayonlar va bajarilmaydigan 
    jarayonlar. 2.1- rasmda jarayon holat diagrammasi modeli ifodalangan. 2.1- rasm. 
    Jarayon holat diagrammasi modeli Bajariluvchi jarayon holatida joylashgan 
    jarayon ma‘lum vaqtdan so‗ng operatsion tizimni tugatishi yoki ma‘lum vaqtga 
    to‗xtashi va bajarilmaydigan jarayon holatiga o‗tishi mumkin. Ma‘lum vaqtga 
    to‗xtash jarayoni ikki sabab tufayli yuz berishi mumkin: ishni davom ettirish uchun 
    qandaydir harakat (masalan, kiritish/chiqarish operatsiyasini yakunlash) yoki 
    ushbu jarayonda ishlash uchun operatsion tizimda ajratilgan vaqt oralig‗ining 
    tugashi. Shundan so‗ng belgilangan algoritm bo‗yicha operatsion tizim 
    bajarilmaydigan jarayon holatida joylashgan jarayonlardan birini bajarish uchun 
    Bajarishga olindi Jarayon bajarilmayapti Jarayon bajarilmoqda To‗xtatildi 39 
    bittasini tanlaydi. Va uni bajariluvchi jarayon holatiga o‗tkazadi. Tizimda paydo 
    bo‗lgan yangi jarayon dastlab bajarilmaydigan jarayon holatida joylashadi. Bu juda 
    ham qo‗pol model bo‗lib bajarish uchun jarayonlarni tanlashda u ma‘lum vaqtga 
    to‗xtashi va real holatda bajarish uchun tayyor bo‗lmasligi bois kutish holatida 
    bo‗lishi mumkin. Bajarilmaydigan jarayon holatidan chiqib ketish uchun ikkita 
    yangi holatdan foydalaniladi: tayyorlilik va kutish (2.2- rasm). 2.2- rasm. 
    Tayyorlilik va kutish holatlari Tizimda paydo bo‗lgan har qanday jarayon 


    tayyorlilik holatida bo‗ladi. Operatsion tizim tayyor jarayonlardan birini tanlab 
    foydalanadigan algoritmni rejalashtiradi va uni bajarish holatiga o‗tkazadi. 
    Bajarish holatida jarayonni dasturiy kodini bevosita bajarishga o‗tkaziladi. Bu 
    jarayon holatidan chiqish uchun uchta sabab bo‗lishi mumkin: 

    operatsion tizim 
    uning mavjudligini tugatishi; 

    ayrim voqealar sodir bo‗lmasligi uchun u o‗z ishini 
    davom ettirmasligi mumkin va operatsion tizim uni kutish holatiga o‗tkazadi; 

    uni tayyorlilik holatiga qaytishda hisoblash tizimlarida uzilishlarning paydo 
    bo‗lishi natijasida (masalan, bajarilish uchun ajratilgan vaqtni tugab qolishi sababli 
    vaqtni uzilishi). Jarayon kutish holatidan tayyorlilik holatiga o‗tgandan so‗ng u 
    qaytadan bajarish uchun tanlanishi mumkin. 2.3- rasmda yana ikkita jarayon holati 
    kiritilgan: yangi (jarayon tug‗ilishi) va tugatish (bajarishni tugallanishi). 
    Tayyorlilik Bajarish Kutish Kirish Uzilish Bajarish uchun tanlandi K/Ch yoki 
    hodisani kutish K/Ch yoki hodisani yakunlash 40 2.3- rasm. Tug‗ilish va bajarishni 
    yakunlash Endilikda jarayon hisoblash tizimida paydo bo‗lishi uchun tug‗ilish 
    holati orqali o‗tishi kerak bo‗ladi. 2.3- rasmdan ko‗rinib turibdiki, tizimda 
    yaratilgan yangi jarayon rejalash-tirishga ruhsat etish bosqichidan o‗tadi. OT 
    tizimdagi barcha jarayonlarning navbatiga kiradi, shundan so‗ng OT uni bajarishga 
    tayyor holatga keltiradi. Shuni belgilaymizki, bajarishga tayyor bo‗lgan jarayonlar 
    navbati – jarayonlarni boshqarish uchun eng ko‗p ishlatiladigan tizim 
    tuzilmalaridan biri. Bajarilishga tayyor holatdan bajarilish holatiga o‗tish jarayoni 
    rejalashtirish asosida protsessorga vaqt kvantini ajratish natijasida OT 
    rejalashtiruvchisi tomonidan uzatiladi. Jarayon bajarilish paytida to‗xtatilishi 
    mumkin (taymer tomonidan, xatolik natijasida va hokazo) va uzilishni qayta 
    ishlaganidan so‗ng, operatsion tizim yana ishlashga tayyor holatga qaytadi. Agar 
    jarayonda sinxron kiritish-chiqirish amalga oshirilsa yoki jarayon biron bir hodisa 
    sodir bo‗lishini kutishi kerak bo‗lsa (masalan, ma‘lum bir vaqtda), jarayon kutish 
    holatiga o‗tadi. Kiritish/chiqarish (I/O) tugallanganda yoki kutilayotgan hodisa yuz 
    berganda, protsessor vaqt kvantini darhol qabul qilmaydi, lekin bajarishga tayyor 
    holatga o‗tadi. Jarayon dasturi tugashi bilan jarayon tugallangan holatga kiradi, 
    masalan, exit(c) tizim chaqirig‗ining natijasida, c - chiqish kodi. Agar c=0 bo‗lsa, 


    jarayon muvaffaqiyatli yakunlandi deb hisoblanadi. Masalan, Windows NT 
    operatsion tizimi Yangi Tayyorlilik Tugatish Bajarish Kutish Rejalashtirishga 
    ruhsat etildi Chiqish Uzilish Bajarish uchun tanlandi K/Ch yoki hodisani kutish 
    K/Ch yoki hodisani yakunlash 41 uchun jarayon holati modeli 7 ta, Unix 
    operatsion tizimi esa 9 ta turli xil jarayon holati modelini o‗z ichiga oladi. Jarayon 
    ichidagi operatsiyalar va ular bilan bog‗liq tushunchalar Jarayon bir holatdan 
    boshqa bir holatga mustaqil ravishda o‗ta olmaydi. Jarayon holatlarini o‗zgartirish, 
    operatsion tizimga kiradigan operatsiyalarda amalga oshiriladi. Bizning modelimiz 
    bunday operatsiyalarning soni hozirchalik holat diagrammasidagi strelkalar soniga 
    teng. Operatsiyani uchta juft bilan bog‗lash mumkin: 

    jarayonni yaratish – 
    jarayonni 
    tugatish; 

    jarayonnima‘lumbirvaqtgato‗xtatish 
    (bajarilishholatidantayyorlilikholatigao‗tish 

    – 
    jarayonniishgatushirish 
    (tayyorlilikholatidanbajarilishholatigao‗tish). 

    Jarayonni bloklash (bajarilish 
    holatidan kutish holatiga o‗tish) – bloklangan jarayonni ochish (kutish holatidan 
    tayyorlilik holatiga o‗tish).
    Many to one modeli ko‗p foydalanuvchi darajasidagi oqimlarni bitta yadro 
    darajasidagi oqimlar bilan taqqoslaydi. Oqimlarni boshqarish foydalanuvchi 
    maydonida oqimlar kutubxonasi tomonidan amalga oshiriladi. Agar oqim bloklash 
    tizim chaqiruvini amalga oshirsa, butun jarayon bloklanadi. Bir vaqtning o‗zida 
    faqat bitta oqim yadroga kirishi mumkin, shuning uchun ko‗p protsessorli 
    tizimlarda bir nechta oqimlar parallel ravishda ishlay olmaydi. Agar foydalanuvchi 
    darajasidagi oqimlar kutubxonalari operatsion tizimda tizim ularni 49 qo‗llab-
    quvvatlamaydigan tarzda amalga oshirilsa, unda yadro oqimi many to one modelini 
    qo‗llaydi. 2.8- rasm. Many to One modeli One to One Modeli Foydalanuvchi 
    darajasidagi oqim va yadro darajasidagi oqim o‗rtasida one to one munosabatlar 
    mavjud. Ushbu model many to one modelga qaraganda ko‗proq parallellashni 
    ta‘minlaydi. Bundan tashqari, u bloklash tizim chaqirig‗i amalga oshirilganda, 
    boshqa oqimni ishga tushirishga imkon beradi. Mikroprotsessorlarda parallel 
    bajarilishi uchun bir nechta oqimlarni qo‗llab-quvvatlaydi. Ushbu modelning 


    kamchiligi shundaki, foydalanuvchi oqimini yaratish uchun yadroga mos keladigan 
    oqim kerak bo‗ladi. OS/2, Windows NT va Windows 2000 OTlari one to one 
    modelidan foydalanadi. 50 2.9- rasm. One to One modeli Foydalanuvchi darajasi 
    va yadro darajasidagi oqim o‗rtasidagi farq 2.2- jadval № Foydalanuvchi 
    darajasidagi oqimlar Yadro darajasidagi oqimlar 1 Foydalanuvchi darajasidagi 
    oqimlar 
    tezroq 
    yaratiladi 
    va 
    boshqariladi 
    Yadrodarajasidagioqimlars 
    ekinroqyaratiladivaboshqari ladi 2 Foydalanuvchi darajasidagi oqim kutubxonasi 
    tomonidan amalga oshiriladi Operatsion tizim yadro oqimlarini yaratishni qo‗llab-
    quvvatlaydi 3 Foydalanuvchi darajasidagi oqim umumiydir va har qanday 
    operatsion tizimda ishlashi mumkin Operatsion tizim uchun o‗ziga xos yadro 
    darajasidagi 
    oqim 

    Ko‗poqimliilovalarko‗pprotsessorliqa 
    ytaishlashimkoniyatidanfoydalanaolm 
    aydi 
    Yadromodulinio‗ziko‗poqi 
    mlibo‗lishimumkin 51 2.3. Operatsion tizimda vazifalar va jarayonlarni 
    rejalashtirish Bir jarayondan boshqasiga o‗tish Jarayonlarni boshqarishda 
    operatsion tizim ularning ketma-ket bajarilishini ta‘minlaydi. Ushbu vazifa OT 
    rejalashtiruvchisi tomonidan hal qilinadi. Protsessorni bir jarayondan boshqa 
    jarayonga o‗tkazish sxemasi 2.10- rasmda keltirilgan. Rasmda ikkita jarayon 
    ko‗rsatilgan - J0 va J1. J0 jarayonida uzilishlar yoki tizim chaqirig‗i bo‗lsa, 
    operatsion tizim o‗z holatini PCBda saqlaydi va protsessorni J1 jarayoniga 
    o‗tkazadi (J1 jarayoni ham shunga o‗xshash tarzda ishlanadi). Har bir jarayonning 
    bajarilish va to‗xtash muddatlari ko‗rsatilgan. 2.10- rasm. Protsessorni bir 
    jarayondan boshqa jarayonga o‗tkazish sxemasi Jarayonlarni rejalashtirish bilan 
    bog‗liq navbatlar Jarayonlarni boshqarish uchun OT quyidagi navbatlarni tashkil 
    qiladi: 52 

    Vazifalar navbati (job queue) – tizimdagi barcha jarayonlar to‗plamini 
    o‗z ichiga oladi. Har bir yangi jarayon unga kelib tushadi va butun tizim davomida 
    unda qoladi. 

    Tayyor jarayonlar navbati (ready queue) – asosiy xotirada 
    joylashgan, tayyor va bajarilishini kutayotgan barcha jarayonlar to‗plamini o‗z 
    ichiga olgan, eng ko‗p ishlatiladigan va o‗zgartiriladigan navbat. Unga har bir 
    yangi jarayon, shuningdek, kiritish/chiqarishni tugallanishini kutayotgan har bir 
    jarayon kelib tushadi. 

    Qurilmalar navbati (device queue) – kiritish/chiqarish 


    qurilmalarini ishini tugallanishini kutayotgan jarayonlar navbati (har bir qurilma 
    o‗z navbatiga ega). Operatsion tizim tomonidan jarayonlarni boshqarish va 
    tizimdagi jarayonlarning xatti-harakatlari turli navbatlar orasidagi ko‗chish sifatida 
    ko‗rib chiqilishi mumkin. 2.11- rasmda tayyor jarayonlar va kiritish/chiqarish 
    qurilmalari uchun navbat-ning diagrammasi ko‗rsatilgan. 2.11- rasm. Tayyor 
    jarayonlar navbati va kiritish/chiqarish qurilmalari navbati 53 Jarayonlarni 
    rejalashtirish va navbatlar bilan ishlashi quyidagi 2.12- rasmda keltirilgan. Har bir 
    to‗rtburchak navbatni anglatadi. Ikki turdagi navbatlar mavjud: tayyor jarayonlar 
    navbati va qurilmalar navbati. Doiralar navbatlarga xizmat qiladigan resurslarni 
    anglatadi va strelkalar tizimdagi jarayonlar oqimini ko‗rsatadi. Dastlab yangi 
    jarayon tayyorlilik navbatiga qo‗yiladi. U bajarilgunga qadar yoki ubajarilish 
    uchun yuborilgunga qadar u yerda kutadi. Jarayon protsessor (CPU) bajarilgandan 
    so‗ng, bir nechta hodisalardan biri sodir bo‗lishi mumkin: 

    Jarayon so‗rovni 
    K/Ch qurilmasiga yuborishi, va keyin uni K/Ch navbatiga qo‗yishi mumkin. 

    Jarayon yangi farzand jarayonini yaratishi va uning tugatilishini kutishi mumkin. 

    Jarayon uzilishlar natijasida protsessordan majburiy ravishda olib tashlanishi va 
    yana tayyorlilik navbatiga qo‗yilishi mumkin. 2.12- rasm. Jarayonni 
    rejalashtirishning grafik ko‗rinishi 54 Tayyor jarayonlarning navbatidan boshlab, 
    har bir jarayon oxiroqibat protsessorga kelib tushadi va bajariladi. Bajarishda 
    quyidagi holatlar yuzaga kelishi mumkin, ya‘ni, bajarilish to‗xtatilishi mumkin: 
    sinxron kiritish/chiqarish so‗rovi, jarayonga ajratilgan vaqt miqdorining tugashi, 
    uzilish yoki farzand jarayonini yaratilishi. Klassik UNIX sxemasida, farzand 
    jarayoni tizimni fork bilan chaqirish orqali yaratilganda, farzand jarayoni uchun 
    yangi virtual xotira maydoni yaratiladi, unga ona xotirasi tarkibi ko‗chiriladi. 
    Shundan so‗ng, ona jarayoni farzand jarayoniga yo‗l beradi. Farzand jarayonini 
    yaratish uchun bunday sxema, albatta, har doim ham qulay emas. Jarayonlarni 
    rejalashtirishni amalga oshiradigan rejalashtiruvchilar Operatsion tizimda 
    jarayonlarni rejalashtirish odatda bir nechta rejalashtiruvchilar tomonidan amalga 
    oshiriladi, ularning har biri o‗z chaqiruvlar davriga va o‗zi hal qiladigan o‗ziga xos 
    vazifasiga ega. Rejalashtiruvchi (scheduler)bu – maxsus tizim dasturi bo‗lib, 


    jarayonlarni turli usullar bilan rejalshtirishni amalga oshiradi. Asosiy maqsadi 
    vazifani tizimga taqdim qilish uchun tanlash va qaysi jarayonlarni bajarishni hal 
    qiladi. Rejalashtiruvchilar 3 turda bo‗ladi: 

    Uzoq muddatli rejalashtiruvchi 
    (Long-Term Scheduler); 

    O‗rta muddatli rejalashtiruvchi (Medium-Term 
    Scheduler); 

    Qisqa muddatli rejalashtiruvchi (Short-Term Scheduler). Uzoq 
    muddatli rejalashtiruvchi (vazifalarni rejalashtiruvchi) – qaysi jarayonlarni tayyor 
    jarayonlar navbatiga o‗tkazish kerakligini belgilaydi 
    Qisqa muddatli rejalashtiruvchi (protsessorni rejalashtiruvchi) – keyingi bajarilishi 
    kerak bo‗lgan jarayon va qaysi jarayonlar protsessor bilan ta‘minlanishi kerakligini 
    belgilaydi. O‗rta muddatli rejalashtiruvchi (jarayonlarni almashtirishni 
    rejalashtiradi) – vaqtni taqsimlash rejimini amalga oshirish uchun tizimga yozishni 
    va almashtirishni rejalashtiruvchi qo‗shilishi mumkin, u qaysi foydalanuvchi 
    jarayonlarini xotiraga va diskka ko‗chirish (swapping) kerakligini belgilaydi. 55 
    Rejalashtiruvchilar va jarayonlarning xususiyatlari. Har bir rejalashti-ruvchining, 
    shuningdek har bir jarayonning o‗ziga xos xususiyatlari bor. Qisqa muddatli 
    rejalashtiruvchi juda tez-tez chaqiriladi, masalan, kamida keyingi protsessor kvant 
    vaqtining tugashi, shuning uchun u juda tez va samarali amalga oshirilishi kerak. 
    Uzoq muddatli rejalashtiruvchi nisbatan kamdan-kam hollarda chaqiriladi, chunki 
    tizim jarayonni tayyor jarayonlar holatiga o‗tkazish to‗g‗risida qaror qabul 
    qilmaydi. Shuning uchun u nisbatan sekin bajarilishi mumkin, unchalik samarali 
    amalga oshirilmaydi. Bunday rejalashtiruvchini o‗z ichiga olgan tizimning sxemasi 
    quyidagi 2.13- rasmda keltirilgan. 2.13- rasm. Foydalanuvchi jarayonlarini 
    xotiraga va diskka ko‗chirish sxemasi Ammo, umuman olganda tizimning asosiy 
    vazifasi - iloji boricha ko‗proq jarayonlarga xizmat ko‗rsatish, aynan uzoq 
    muddatli rejalashtirish multidasturlash darajasini (koeffisientini) – tizimning vaqt 
    birligida xizmat qiladigan jarayonlar sonini aniqlaydi. Jarayonlarning o‗zi ham 
    ularni rejalashtirish nuqtai nazaridan boshqacha harakat qilishi mumkin. Jarayonlar 
    quyidagicha bo‗lishi mumkin: 56 

    Kiritish/chiqarishga yo‗naltirilgan (I/O bilan 
    bog‗langan - (I/O bound)) – hisoblashga qaraganda kiritish/chiqarishga ko‗proq 


    vaqt sarflaydigan jarayonlar. Bunday jarayonlar odatda protsessor vaqtining 
    ko‗pgina qisqa kvantlarini sarflaydi. 

    Protsessordan foydalanishga yo‗naltirilgan 
    (CPU bilan bog‗langan – CPU bound) - bu ko‗p vaqtini hisoblash uchun 
    sarflaydigan
    Har qanday tarmoq tizimidagi saytlar ma‘lum bir topologiyada, tugunlarni 
    bog‗laydigan ulanishlarning (kabellar, simsiz tarmoqlar yoki ikkalasi) geometrik 
    joylashuvida bir-biriga fizik yoki mantiqan ulanishi mumkin. Eng keng tarqalgan 
    topologiyalar shina, yulduz, xalqa, daraxtdir. Har bir topologiyada barcha saytlar 
    o‗rtasida tezkor aloqa zarurligi, sayt yoki aloqa liniyasi ishlamay qolish 
    (nosozliklar tufayli) holatlari, uzun aloqa liniyalarining narxi va bitta saytni boshqa 
    ko‗plab saytlarga ulashning qiyinligi o‗rtasida o‗zaro bog‗liqliklar mavjud. 
    Tarmoqni loyihalashtiruvchisi uchun juda ko‗p yechimlar mavjud va ularning 
    barchasi mijozning talablariga javob berishi mumkin. Loyihalashtiruvchilar qaysi 
    konfiguratsiyani ishlatishni tanlashda to‗rtta mezonni hisobga olishlari kerak: 

    Asosiy xarajat - tizimdagi turli saytlarni bog‗lash uchun zarur bo‗lgan xarajatlar; 

    Aloqa narxi - xabarni bir saytdan boshqasiga yuborish uchun ketadigan vaqt; 

    Ishonchlilik - tizimda havola yoki sayt ishlamay qolgan taqdirda ham ko‗plab 
    saytlar bir-biri bilan aloqada bo‗lishining kafolati; 

    Foydalanuvchi muhiti - 
    biznesni muvaffaqiyatli investitsiyalash uchun tarmoq javob berishi kerak bo‗lgan 
    muhim parametrlar. Har bir mijoz uchun bir nechta yechimlar bo‗lishi mumkin. 
    Eng yaxshi tanlov barcha to‗rtta mezonni hisobga olishi kerak. Shina topologiyasi 
    Shina topologiyasida barcha tugunlar 6.1- rasmda ko‗rsatilga-nidek tarmoqning 
    butun uzunligi bo‗ylab ishlaydigan bitta aloqa liniyasiga 211 ulanadi. Qurilmalar 
    kabellar bilan fizik bir-biriga bog‗langan, lekin kabellar markazlashtirilgan 
    boshqaruv mexanizmi orqali o‗tmaydi. Barcha topologiya oxirida signallarni 
    ifodolovchi terminatorlar joylashadi. Xabarlar bitta mashina orqali hammaga 
    jo‗natiladi va faqat u kimga mo‗ljallangan bo‗lsa o‗sha uni qabul qiladi. Bunday 
    tarmoq juda arzon va sozlash oson hisoblanadi. Kamchiligi umumiy kabel va 


    terminator tizimidan chiqishda ishni rad etishi hisoblanadi. Shuningdek tarmoqni 
    shikastlangan joyini topish qiyin. 
    FOYDALANILGAN ADABIYOTLAR 
    1. Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. Operating system 
    concepts Ninth edition, 2013. – 944 p. ISBN: 9781118063330, ISBNBRV: 
    9781118129388. 2. Ann McIver McHoes Ida M. Flynn. Understanding operating 
    systems. Sixth edition, 2011. – 591 p. Library of Congress Control Number: 
    2010920344. 3. Э.Таненбаум, Х.Бос. Современные операционные системы 4-е 
    издание — СПб.: Питер, 2015. — 1120 с.: ил. — (Серия «Классика computer 
    science»). 4. В.Г.Олифер, Н.А.Олифер. Сетевые операционные системы: 
    Учебник для вузов. 2-е изд. — СПб.: Питер, 2009. — 669 с.: ил. 5. С.В. 
    Назаров, А.И. Широков. Современные операционные системы Учебное 
    пособие — М.: Национальный Открытый Университет «ИНТУИТ», 2012. — 
    367 с.: ил., табл. — (Основы информационных технологий)., 2012. 

    Download 248.14 Kb.




    Download 248.14 Kb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti qarshi filiali

    Download 248.14 Kb.
    Pdf ko'rish