Computer Science တွင် Operating Systems ကိုနားလည်ခြင်း။
ကွန်ပြူတာတိုင်း၏ လုပ်ဆောင်နိုင်စွမ်း၏ အဓိကမှာ Operating System (OS) ဖြစ်သည်။ ၎င်းသည် ဟာ့ဒ်ဝဲကို ထိန်းချုပ်ရန်၊ စနစ်ရင်းမြစ်များကို စီမံခန့်ခွဲကာ သုံးစွဲသူ၊ အပလီကေးရှင်းများနှင့် စက်အကြား အပြန်အလှန် ဆက်သွယ်မှုကို လွယ်ကူချောမွေ့စေသည့် မာစတာဆော့ဖ်ဝဲဖြစ်သည်။ ကွန်ပြူတာသိပ္ပံနယ်ပယ်အတွင်း ၎င်းတို့၏ အစိတ်အပိုင်းများ၊ အမျိုးအစားများနှင့် လုပ်ဆောင်ချက်များကို နားလည်သဘောပေါက်ပြီး Operating System ၏ အခြေခံများကို စူးစမ်းလေ့လာကြပါစို့။
Operating System ဆိုတာ ဘာလဲ။
Operating System (OS) သည် ကွန်ပြူတာ ပရိုဂရမ်များအတွက် ဘုံဝန်ဆောင်မှုများကို ပံ့ပိုးပေးသည့် ကွန်ပြူတာ ဟာ့ဒ်ဝဲနှင့် ဆော့ဖ်ဝဲအရင်းအမြစ်များကို စီမံခန့်ခွဲသည့် အားကောင်းပြီး မရှိမဖြစ်လိုအပ်သော ဆော့ဖ်ဝဲတစ်ခုဖြစ်သည်။ အခြားပရိုဂရမ်များကို လုပ်ဆောင်ရန် ကွန်ပျူတာတိုင်းတွင် အနည်းဆုံး OS တစ်ခုရှိရမည်။ OS သည် သုံးစွဲသူများနှင့် ကွန်ပျူတာ ဟာ့ဒ်ဝဲကြားတွင် ကြားခံအဖြစ် လုပ်ဆောင်သည်။ လူကြိုက်များသောလည်ပတ်မှုစနစ်များ ဥပမာများတွင် Microsoft Windows၊ macOS၊ Linux နှင့် Android တို့ပါဝင်သည်။
Operating System တစ်ခု၏ အဓိကလုပ်ဆောင်ချက်များ
လည်ပတ်မှုစနစ်တွင် ကျယ်ပြန့်သော လုပ်ဆောင်ချက်များစွာ ပါရှိပြီး ကွန်ပျူတာစနစ်၏ လုပ်ဆောင်မှုတွင် အဓိကကျသည်။ ၎င်း၏ အဓိကလုပ်ဆောင်ချက်အချို့ ပါဝင်သည်။
- လုပ်ငန်းစဉ်စီမံခန့်ခွဲမှု- ၎င်းသည် ဖန်တီးမှု၊ အချိန်ဇယားဆွဲခြင်းနှင့် လုပ်ငန်းစဉ်များကို ရပ်ဆိုင်းခြင်းတို့ကို ကိုင်တွယ်သည်။ လုပ်ငန်းစဉ်တစ်ခုသည် လည်ပတ်လုပ်ဆောင်နေသည့် ပရိုဂရမ်တစ်ခုဖြစ်ပြီး OS သည် ဤလုပ်ငန်းစဉ်များကို ချောမွေ့သောစနစ်စွမ်းဆောင်ရည်သေချာစေရန်အတွက် ထိရောက်စွာစီမံခန့်ခွဲပါသည်။
- Memory Management- OS သည် ၎င်းကို လိုအပ်သည့်အခါ လုပ်ငန်းစဉ်များဆီသို့ ခွဲဝေခြင်းနှင့် ခွဲဝေပေးခြင်းတို့ ပါဝင်သော စနစ်၏ memory ကို စီမံခန့်ခွဲပါသည်။
- ဖိုင်စနစ်စီမံခန့်ခွဲမှု- ၎င်းသည် သိုလှောင်မှု၊ ပြန်လည်ရယူမှု၊ အမည်ပေးခြင်း၊ မျှဝေခြင်းနှင့် ဖိုင်များကို အကာအကွယ်ပေးခြင်းတို့နှင့် ပတ်သက်သည်။ OS သည် ဖိုင်အဆင့်များကို ထိန်းသိမ်းထားပြီး ဖိုင်တည်နေရာ၊ အရွယ်အစားနှင့် အမျိုးအစားကဲ့သို့ အချက်အလက်များကို ခြေရာခံသည်။
- စက်ပစ္စည်းစီမံခန့်ခွဲမှု- OS သည် သက်ဆိုင်ရာ ဒရိုက်ဗာများမှတစ်ဆင့် စက်ပစ္စည်းဆက်သွယ်မှုကို စီမံခန့်ခွဲသည်။ ၎င်းသည် ပရင့်တာသို့ ပရင့်အမိန့်များ ပေးပို့ခြင်း၊ ကီးဘုတ်မှ အချက်အလက်ဖတ်ခြင်းနှင့် CPU လုပ်ဆောင်ချက်များကို စီမံခန့်ခွဲခြင်းစသည့် အလုပ်များကို လုပ်ဆောင်သည်။
- လုံခြုံရေးနှင့် ဝင်ရောက်မှု ထိန်းချုပ်ရေး- OS သည် ခွင့်ပြုချက်မရှိဘဲ အသုံးပြုသူများ စနစ်ကို ဝင်ရောက်ခြင်း မပြုရန်နှင့် အန္တရာယ်ရှိသော ခြိမ်းခြောက်မှုများမှ ကာကွယ်ပေးကြောင်း သေချာစေပါသည်။ ၎င်းသည် အသုံးပြုသူအကောင့်များ၊ စကားဝှက်များနှင့် ဒေတာများကို ကာကွယ်ရန် အမျိုးမျိုးသော ခွင့်ပြုချက်များကို စီမံခန့်ခွဲသည်။
Operating Systems အမျိုးအစားများ
Operating Systems များကို ၎င်းတို့၏ လုပ်ဆောင်နိုင်စွမ်းများနှင့် ၎င်းတို့ပေးဆောင်သော ဝန်ဆောင်မှုများအပေါ် အခြေခံ၍ အမျိုးအစားခွဲခြားနိုင်သည်။ အဖြစ်အများဆုံးအမျိုးအစားများပါဝင်သည်-
- Batch Operating Systems- ဤ OS များသည် ကွန်ပျူတာနှင့် တိုက်ရိုက် အကျိုးသက်ရောက်မှုမရှိပါ။ ဤတွင်၊ အလုပ်များကို အသုံးပြုသူကြားဝင်စွက်ဖက်မှုမရှိဘဲ တစ်ကြိမ်လျှင် စုဆောင်း၊ အစုလိုက်လုပ်ကာ စီမံဆောင်ရွက်ပါသည်။
- Multi-tasking/Time-sharing Operating Systems- ၎င်းတို့သည် CPU ၏ အချိန်ပိုင်းများကို မျှဝေခြင်းဖြင့် ပရိုဂရမ်များစွာကို တစ်ပြိုင်နက် လုပ်ဆောင်နိုင်စေပါသည်။ ဥပမာများတွင် Linux နှင့် Windows တို့ပါဝင်သည်။
- အချိန်နှင့်တပြေးညီ လည်ပတ်မှုစနစ်များ (RTOS)- RTOS များကို ထည့်သွင်းထားသော စနစ်များကဲ့သို့ အချိန်ကန့်သတ်ချက်များ တင်းကျပ်သည့် ပတ်ဝန်းကျင်များတွင် အသုံးပြုပါသည်။ ၎င်းတို့သည် ကြားခံနှောင့်နှေးမှုမရှိဘဲ ဝင်လာသည့်အတိုင်း ဒေတာကို စီမံဆောင်ရွက်သည်။
- ကွန်ရက်လည်ပတ်မှုစနစ်များ- ၎င်းတို့သည် ဆာဗာများပေါ်တွင် လည်ပတ်ပြီး သုံးစွဲသူများစွာကို ဝန်ဆောင်မှုပေးခြင်း၊ ဒေတာ၊ အသုံးပြုသူများ၊ အုပ်စုများ၊ လုံခြုံရေးနှင့် ကွန်ရက်တစ်ခုရှိ အပလီကေးရှင်းများကို စီမံခန့်ခွဲရန် စွမ်းဆောင်ပေးပါသည်။
- ဖြန့်ဝေထားသော Operating Systems- ၎င်းတို့သည် သီးခြားလွတ်လပ်သော ကွန်ပျူတာအုပ်စုကို စီမံခန့်ခွဲပြီး ၎င်းတို့ကို အသုံးပြုသူအတွက် တစ်ခုတည်းသော ကွန်ပျူတာအဖြစ် ပေါ်လွင်စေသည်။ လုပ်ဆောင်ချက်ကို ရုပ်ပိုင်းဆိုင်ရာ စက်အများအပြားတွင် ဖြန့်ဝေထားသည်။
မှတ်ဉာဏ်စီမံခန့်ခွဲမှု
Memory Management သည် စနစ်၏ OS မှ လုပ်ငန်းစဉ်တစ်ခုစီသို့ သီးခြားမှတ်ဉာဏ်ပိတ်ဆို့ခြင်းများကို ခွဲဝေချထားခြင်းနှင့် ခွဲဝေခြင်းတို့ ပါဝင်သည်။ မှတ်ဉာဏ်စီမံခန့်ခွဲမှု၏ အရေးကြီးသော ကဏ္ဍတစ်ခုမှာ ရုပ်ပိုင်းဆိုင်ရာနှင့် virtual memory အကြား ခြားနားချက်ဖြစ်သည်။
- Physical Memory- ဤသည်မှာ စနစ်တွင် ရရှိနိုင်သော တကယ့် RAM (ကျပန်းအသုံးပြုမှုမှတ်ဉာဏ်) ဖြစ်သည်။
- Virtual Memory- ၎င်းသည် အပို RAM ကို အတုယူရန် အသုံးပြုသည့် ဟာ့ဒ်ဒစ်ပေါ်တွင် နေရာလွတ်တစ်ခုဖြစ်သည်။ ၎င်းသည် ရုပ်ပိုင်းဆိုင်ရာမှတ်ဉာဏ်တစ်ခုတည်း၏စွမ်းရည်ထက်ကျော်လွန်၍ ကြီးမားသောအက်ပ်လီကေးရှင်းများ သို့မဟုတ် အပလီကေးရှင်းများစွာကို တစ်ပြိုင်နက်တည်းလုပ်ဆောင်နိုင်စေသည်။
အရိုးရှင်းဆုံး မှတ်ဉာဏ်စီမံခန့်ခွဲမှုနည်းပညာမှာ လုပ်ငန်းစဉ်တစ်ခုစီကို မှတ်ဉာဏ်၏ ဆက်စပ်နေသောအပိုင်းတစ်ခုတွင် ပါ၀င်သည့် ဆက်တိုက်ခွဲဝေမှု ဖြစ်သည်။ သို့သော် ဤနည်းလမ်းသည် အကွဲကွဲအပြားပြားဖြစ်ခြင်းကဲ့သို့သော ဆုတ်ယုတ်မှုများရှိသည်။ ဒါကို ကျော်လွှားဖို့၊ ခေတ်မီ OS တွေက pageaging နဲ့ segmentation ကို သုံးပါတယ်။
လုပ်ငန်းစဉ်ဇယားရေးဆွဲခြင်း။
လုပ်ငန်းစဉ်ဇယားဆွဲခြင်းဆိုသည်မှာ အဆင်သင့်တန်းစီတွင် မည်သည့်လုပ်ငန်းစဉ်ကို ပရိုဆက်ဆာက လုပ်ဆောင်ရမည်ကို OS က ဆုံးဖြတ်သည့်နည်းလမ်းဖြစ်သည်။ အဓိကရည်ရွယ်ချက်မှာ CPU အသုံးချမှုကို မြှင့်တင်ရန်ဖြစ်သည်။ အချိန်ဇယားဆွဲခြင်းဆိုင်ရာ အယ်လဂိုရီသမ်များတွင်-
- ပထမဦးစွာ၊ ပထမဦးစွာ တာဝန်ထမ်းဆောင်ခြင်း (FCFS)- ၎င်းတို့ရောက်ရှိသည့်အစီအစဥ်အတိုင်း လုပ်ငန်းစဉ်များကို တက်ရောက်ပါသည်။
- အတိုဆုံးအလုပ် နောက်တစ်ခု (SJN)- ဤ အယ်လဂိုရီသမ်သည် နောက်တစ်ကြိမ် အတိုဆုံးလုပ်ဆောင်မှုအချိန်နှင့်အတူ လုပ်ငန်းစဉ်ကို ရွေးချယ်သည်။ ၎င်းသည် ပိုမိုကောင်းမွန်သော စွမ်းဆောင်ရည်ကို ဖြစ်ပေါ်စေနိုင်သော်လည်း အကောင်အထည်ဖော်ချိန်ကို ကြိုတင်သိရှိထားရန် လိုအပ်သည်။
- Round Robin (RR)- လုပ်ငန်းစဉ်တစ်ခုစီကို ပုံသေအချိန်အထိုင်တစ်ခု သတ်မှတ်ပေးပြီး အလှည့်အပြောင်းဖြင့် လုပ်ဆောင်သည်။ ဤနည်းလမ်းသည် လုပ်ငန်းစဉ်များအကြား တရားမျှတမှုကို အာမခံပါသည်။
- ဦးစားပေး အစီအစဉ်ဆွဲခြင်း- လုပ်ငန်းစဉ်တစ်ခုစီကို ဦးစားပေးအဖြစ် သတ်မှတ်ပေးထားပြီး အကောင်အထည်ဖော်မှုသည် ဦးစားပေးအစီအစဉ်အပေါ် အခြေခံထားသည်။ ဦးစားပေးအဆင့်များ မတိုင်မီ ပိုမိုမြင့်မားသော ဦးစားပေးလုပ်ငန်းစဉ်များကို လုပ်ဆောင်ပါသည်။
ဖိုင်စနစ်များ
ဖိုင်စနစ်သည် ဒစ်ခ်တစ်ခုပေါ်ရှိ ဖိုင်များကို သိမ်းဆည်းရန်၊ စုစည်းရန်နှင့် စီမံခန့်ခွဲရန် OS အသုံးပြုသည့် စနစ်တကျဖွဲ့စည်းထားသော နည်းလမ်းတစ်ခုဖြစ်သည်။ ၎င်းသည် အပလီကေးရှင်းများအား ဒစ်ခ်သိုလှောင်မှုသို့ ဖတ်ရှုရန်နှင့် စာရေးရန် နည်းလမ်းကို ထောက်ပံ့ပေးသည်။ အသုံးများသော ဖိုင်စနစ်အမျိုးအစားများတွင် FAT32၊ Windows အတွက် NTFS နှင့် Linux အတွက် Ext3၊ Ext4 တို့ ပါဝင်သည်။ ဖိုင်စနစ်သည် ဖိုင်အမည်၊ အရွယ်အစား၊ ဖန်တီးမှုနှင့် ပြုပြင်မွမ်းမံသည့် ရက်စွဲများအပါအဝင် ဖိုင်များအကြောင်း မက်တာဒေတာကို စီမံခန့်ခွဲသည်။
နိဂုံး
Operating System သည် ကွန်ပျူတာများနှင့် ကွန်ပြူတာ စက်ပစ္စည်းများ၏ လုပ်ဆောင်မှုတွင် ပါ၀င်သည်။ ၎င်းသည် အသုံးပြုသူနှင့် ဟာ့ဒ်ဝဲကြားရှိ မရှိမဖြစ်လိုအပ်သော အင်တာဖေ့စ်ကို ပံ့ပိုးပေးကာ အရင်းအမြစ်များကို ထိရောက်စွာ စီမံခန့်ခွဲကာ စနစ်၏ အလုံးစုံလုံခြုံရေးနှင့် ထိရောက်မှုကို သေချာစေသည်။ လည်ပတ်မှုစနစ်များ၏ လုပ်ဆောင်နိုင်စွမ်း၊ အမျိုးအစားများနှင့် အစိတ်အပိုင်းများကို နားလည်ခြင်းသည် ကွန်ပျူတာသိပ္ပံနယ်ပယ်တွင် အခြေခံကျသည်။