Adsense

OUO Banner

Latest Posts

Linux ရဲ့ သမိုင်းကြောင်း

History Of Linux

Linux လို့ ဆိုလိုက်ရင် အများစုက Windows, MacOS တို့လို့ Operating System တစ်ခုခုလို့ မြင်တတ်ကြပါတယ်။ Operating System ဆိုတာက System Software တစ်မျိုးဖြစ်ပြီးတော့ သက်ဆိုင်ရာကိရိယာကို အသုံးပြုမယ့် user တွေ သုံးရလွယ်ကူအဆင်ပြေအောင် မောင်းနှင်ပေးတဲ့ ပင်မစနစ်တစ်ခု လို့ဆိုနိုင်ပါတယ်။ Linux က အဲသည်လို Operating System တွေ အတွက် မရှိမဖြစ် လိုအပ်တဲ့ Core Component တစ်ခုဖြစ်တဲ့ Kernel ပါ။ 

ဒီတော့ Linux ဆိုတာ Operating System မဟုတ်ဘူးဆိုတာလောက်တော့ သိနိုင်ပါပြီ။ ဒါဆိုရင် ဘယ်လိုခေါ်မလဲ လို့ မေးစရာရှိကောင်းရှိနိုင်ပါတယ်။ ဒီအကြောင်းကို history နဲ့ ယှဥ်ပြီး ပြောပြရင် ပိုမြင်သာမယ်လို့ ယူဆလို့ ရှေးဟောင်းနှောင်းဖြစ်လေး နည်းနည်း ထည့်ပြော   ခွင့်ပြုပါ။ 

ကွန်ပျူတာ ဆိုတဲ့စကားလုံးကို စတင်သုံးစွဲခဲ့တဲ့ Physical record အဖြစ် ၁၆၁၃ မှာ Richard Braithwaite ရေးတဲ့ The Young Mans Gleanings ဆိုတဲ့ စာအုပ်မှာ စတင် တွေ့ရှိခဲ့ပါတယ်။ စာအုပ်ထဲမှာတော့ အတွက်အချက်တွေလုပ်ဆောင်တဲ့ လူကို computer လို့ သုံးခဲ့တာ ဖြစ်ပြီးတော့ ၁၉ ရာစုထိ definition ကို သယ်သွားနိုင်ခဲ့ပါတယ်။ 


၁၈၂၂ ခုနှစ်လောက်မှာ Charles Babbage ဆိုသူက Ada Lovelace ရဲ့ အကူညီနဲ့ Analytical Engine ကို တီထွင်ခဲ့ပါတယ်။ 


အဲဒါကပဲ Physical Computar တွေရဲ့ တကယ့် အစ လို့ ဆိုရမှာ ဖြစ်ပါတယ်။ Ada Lovelace ဆိုတာ နှယ်နှယ်ရရတော့ မဟုတ်ပါဘူး။  ကမ္ဘာ့ ပထမဆုံး ကွန်ပျူတာ ပရိုဂရမ်မာ ဖြစ်သလို ကွန်ပျူတာတွေရဲ့ မိခင် လို့ တင်စားခဲ့ရတဲ့ အာဂ အမျိုးသမီးတစ်ယောက်ပါ။ machine တွေက process လုပ်နိုင်တဲ့ ပထမဆုံးသော algorithm ကို ဖန်တီးပုံဖော်ခဲ့တာ ဖြစ်ပါတယ်။ စိတ်မကောင်းစရာတစ်ခုကတော့ ၁၈၁၅ ဒီဇင်ဘာ ၁၀ ရက်မှာ မွေးခဲ့တဲ့ သူမက အသက် ၃၆နှစ်အရွယ် ၁၈၅၂ နိုဝင်ဘာ ၂၇ မှာ သေဆုံးသွားခဲ့ပါတယ်။ အတော့်ကို ထူးချွန်တဲ့ အမျိုးသမီးတစ်ယောက်ပါပဲ။ 


၁၈၂၂ မှာ စတင်ခဲ့တဲ့ Charles Babbage ရဲ့ ကွန်ပျူတာပရောဂျက်က ၁၅ နှစ် အကြာ ၁၈၃၇ မှာ အောင်မြင်ခဲ့ပြီးတော့ ကမ္ဘာ့ ပထမဆုံးသော General Machenical  Computer အဖြစ် မှတ်တမ်းတင်နိုင်ခဲ့ပါတယ်။ သို့သော်လည်း ငွေကြေးမလုံလောက်မှုကြောင့် တန်ဖိုးရှိလှတဲ့ ဒီ machine project ကို သူ့တစ်သက် ထပ်မလုပ်နိုင်ခဲ့တော့ပါဘူး။ နှစ်ပေါင်းများစွာ ကြာခဲ့ပြီး ၁၉၁၀ ရောက်တော့မှ Charles Babbage ရဲ့ အငယ်ဆုံးသားဖြစ်သူ Henry Babbage က အဆိုပါ Analytical Engine ရဲ့ အဆုံးသတ် အစိတ်အပိုင်းကို တပ်ဆင်နိုင်ခဲ့ပြီး basic calculation တွေကို စတင်လုပ်ဆောင်ပြနိုင်ခဲ့တာ ဖြစ်ပါတယ်။ 

အဲသည်နောက်မှာတော့ ၁၉၃၆ နဲ့ ၁၉၃၈ ကြားမှာ ဂျာမန်လူမျိုး Konard Zuse ဆိုသူက သူ့မိဘတွေရဲ့ ဧည့်ခန်းထဲမှာ Z1 ဆိုတဲ့ ကမ္ဘာ့ ပထမဆုံးသော electromagnetical computer တစ်လုံးကို တည်ဆောက်နိုင်ခဲ့ပြီး ပထမဆုံးသော binary programmable computer တစ်လုံးလည်းဖြစ်သလို ကမ္ဘာ့ပထမဆုံးသော functional modern computer တစ်လုံးလည်း ဖြစ်ခဲ့ပါတယ်။ သူကပဲ ကမ္ဘာ့ပထမဆုံးသော algorithm အသုံးချ programming language တစ်ခုကိုပါ ဖန်တီးခဲ့ပြီးတော့ ‘Plankalkül' လို့ နာမည်ပေးခဲ့ပါတယ်။ နောက်ပိုင်းမှာ Z3 & Z4 စတဲ့ကွန်ပျူတာတွေ ကိုလည်း ဆက်ထုတ်နိုင်ခဲ့ပါတယ်။ Z2 တော့ မှတ်တမ်းတွေထဲမှာ မတွေ့မိခဲ့ပါဘူးဗျ။ 



Z1 computer

နောက်တစ်ယောက်ကတော့ ကွန်ပျူတာသိပ္ပံနဲ့ ဒီနေ့ခတ် နာမည်ကြီးတဲ့ AI ရဲ့ ဖခင်ကြီးလို့ တင်စားထိုက်တဲ့ Alan Mathison Turing ပါ။ mathematician, logician, cryptanalyst, and computer scientist  လည်း ဖြစ်တဲ့ Alan Turing ကိုတော့ နာမည်အတိုနဲ့ အတော်များများ ရင်းနှီးဖူးပြီးသား ဖြစ်နိုင်ပါတယ်။ သူဖန်တီးခဲ့တဲ့ Turing Machine တွေနဲ့ သင်္ကေတတွေကို စက္ကူတိပ်ပေါ်မှာ print ထုတ်ပြနိုင်ခဲ့ပါတယ်။ အဲသည်အတွက် သူက Turing Machine မှာ logical instruction တွေကို အများကြီး အသုံးပြုခဲ့ပါတယ်။ ဒါကပဲ ဒီဘက်ခေတ် ကွန်ပျူတာတွေအတွက် အခြေခံအချက်တွေ ဖြစ်စေခဲ့ပါတယ်။ အဲဒါက ၁၉၃၆ မှာပါ။



အဲသည်နောက် ၁၉၃၇ မှာ ပရော်ဖက်ဆာ John Vincent Atanasoff နဲ့ သူ့တပည့်တွေက Atanasoff-Berry Computer (ABC Computer) ကို ဖန်တီးခဲ့ကြပါတယ်။ Boolean logic တွေကို သုံးထားခဲ့တဲ့ အဆိုပါ ကွန်ပျူတာမှာတော့ လေပြွန်ချောင်း ၃၀၀ ကျော် ကို အသုံးပြုဖန်တီးထားပြီးတော့ program တွေတော့ အသုံးမပြုနိုင်ခဲ့ပါဘူး။ ဒါပေမယ့် electrical computar တွေရဲ့ လမ်းစ တော့ ဖြစ်စေခဲ့ပါတယ်။ အဲသည်နောက်မှာ ENIAC တွေ ပေါ်ပေါက်လာတာမို့ပါ။ 



ကမ္ဘာ့ပထမဆုံး ကွန်ပျူတာတွေခေတ်ကို ပြောတဲ့အခါ ENIAC machine ကြီးတွေကို ချန်ထားခဲ့လို့ မရနိုင်ပါဘူး။ Electrical Numerical Integrator And Calculator ဆိုတဲ့ နာမည်ကို အတိုကောက်ခေါ်သုံးထားတာပါ။ Giant ENIAC တွေလို့ခေါ်ရင် ပိုမှန်နိုင်ပါတယ်။ binary တွေကို မသုံးသေးဘဲနဲ့ 10 decimal digits တွေကို သုံးခဲ့တာပါ။ အရွယ်အစား ကြီးလွန်းတာကြောင့် အိမ်တစ်လုံးစာလောက်ကို နေရာယူထားနိုင်တဲ့ machine တွေ ဖြစ်ခဲ့ကြပါတယ်။


အီလက်ထရောနစ်ကို အသုံးချပြီး ဒေတာတွေသိမ်းတာရယ်၊ ပရိုဂရမ်တွေကို ဖွင့်နိုင်တာရယ်ကို ပထမဆုံးလုပ်ဆောင်ပေးနိုင်ခဲ့တဲ့ ကွန်ပျူတာကတော့ ၁၉၄၈ မှာ ပေါ်ပေါက်ခဲ့တဲ့ SSEM (Small Scale Experimental Machine) ပါပဲ။ သူ့ကို Manchester Baby လို့လည်း ခေါ်ခဲ့ကြပါသေးတယ်။ အင်္ဂလန်က မန်ချက်စတာ တက္ကသိုလ်မှာ မွေးဖွားခဲ့တာမို့ပါ။ 



အဲသည်နောက်မှာတော့ အင်္ဂလန်ကိန်းဘရစ် တက္ကသိုလ်က ၁၉၄၉ မှာ  EDSAC (Electronic Delay Storage Automatic Calculator) ဆိုတဲ့ machine ကို ဖန်တီးနိုင်ခဲ့ပါသေးတယ်။ data store လုပ်နိုင်တဲ့ ဒုတိယမြောက် လို့ ဆိုရမှာပါ။ OXO လို့ခေါ်တဲ့ GUI game ကို ပထမဆုံး run နိုင်ခဲ့တဲ့ ကွန်ပျူတာဖြစ်ပြီး display အတွက်တော့ 6 လက်မရှိတဲ့ cathode ray tube ကို သုံးခဲ့ပါတယ်။ တစ်ချိန်တည်းမှာပဲ မန်ချက်စတာတက္ကသိုလ်ရဲ့ Manchester Mark 1 computer လည်း ပေါ်ထွက်ခဲ့ပါတယ်။ 


EDSAC

Mark 1

ကမ္ဘာ့ပထမဆုံးသော ကွန်ပျူတာကုမ္ပဏီကိုတော့ J. Presper Eckert နဲ့ John Mauchly ဆိုသူတို့က တည်ထောင်ခဲ့ပြီးတော့ Electronic Controls Company လို့ နာမည် ပေးခဲ့ပါတယ်။ နောက်ပိုင်းမှာတော့ EMCC (Eckert-Mauchly Computer Corporation) လို့ နာမည်ပြောင်းခဲ့ပြီးတော့ UNIVAC ကွန်ပျူတာတွေကို ထုတ်လုတ်ခဲ့ကြပါတယ်။ နာမည်က  UNIVAC (Universal Automatic Computer) ကို ခေါ်ဆိုတာ ဖြစ်ပြီး main frame computer အမျိုးအစားတွေပါပဲ။



memory ပေါ်မှာ သိမ်းထားတဲ့ ကွန်ပျူတာပရိုဂရမ်ပါတဲ့ ပထမဆုံးသော ကွန်ပျူတာ က UNIVAC 1101 ဆိုတဲ့ ကွန်ပျူတာ ဖြစ်ခဲ့ပါတယ်။ ၁၉၅၀ မှာပါ။ 


commercial အနေနဲ့ကတော့ အပေါ်မှာ ပြောခဲ့ဖူးတဲ့ Konrad Zuse ရဲ့ Z4 ကွန်ပျူတာ ဖြစ်ပြီးတော့ ၁၉၅၀ မှာ ဇူးရစ်က ဆွဇ်ပြည်ထောင်စုနည်းပညာကျောင်းကို ရောင်းချခဲ့တာပါ။ ထုတ်လုပ်ပြီး နှစ်ကြာမှ ရောင်းဖြစ်ခဲ့တာပေါ့။ 



၁၉၅၃ မှာတော့ အားလုံးသိကြတဲ့ IBM company ကနေ 701 ဆိုတဲ့ ကွန်ပျူတာကို စတင် မိတ်ဆက်လာခဲ့ပါတယ်။ သိပ္ပံနည်းကျ တွက်ချက်မှုတွေအတွက် အဓိကရည်ရွယ်ထုတ်လုပ်တဲ့ ပထမဆုံးသော လျှပ်စစ်ကွန်ပျူတာ ဖြစ်လာခဲ့ပြီးတော့ အလုံးရေ ၁၉၇၀၁ လုံးထိ ထုတ်လုပ်ရောင်းချခဲ့တာကြောင့် mass production အဖြစ် ထုတ်လုပ်ခဲ့တဲ့ ပထမဆုံးသော ကွန်ပျူတာလည်း ဖြစ်ခဲ့ပါသေးတယ်။ 701 ဆိုတာက အမေရိကန်ပြည်ထောင်စုရဲ့ ဧရိယာကုဒ် ပါ။ 


CPU Core နဲ့ RAM စပြီး ပါလာတဲ့ ကွန်ပျူတာကတော့ ၁၉၅၅ မှာ MIT က မိတ်ဆက်လိုက်တဲ့ Whirlwind machine ဖြစ်ပါတယ်။ ကွန်ပျူတာခေတ်ကို တစ်ခေတ် ဆန်းစေခဲ့တဲ့ ပထမဆုံးသော ကွန်ပျူတာလည်းဖြစ်ပါတယ်။ ပြီးတော့ transistor တွေပါဝင်တဲ့ ပထမဆုံးသော ကွန်ပျူတာကိုလည်းပဲ ၁၉၅၆ မှာ MIT (Massachusetts Institute of Technology) ကပဲ ဖန်တီးခဲ့ပါတယ်။



အရွယ်အစားအားဖြင့် ပိုမိုသေးငယ်တဲ့ ကွန်ပျူတာကိုတော့ ၁၉၆၀ မှာ DEC (Digital Equipment Corporation) က Programmable Data Processor (PDF) computer ဆိုပြီးတော့ ထုတ်လုပ်ခဲ့ပါတယ်။ PDP-1 ကနေ PDP-15 အထိ ထွက်ခဲ့ပါတယ်။ 



Desktop Computer တွေရဲ့ အစ ကတော့ 1964 New York World’s Fair မှာ ပြသခဲ့တဲ့ Programma101 ဖြစ်ပါတယ်။ Olivetti company က ထုတ်လုပ်ခဲ့တာ ဖြစ်ပြီးတော့ တစ်လုံးကို $3200 နှုန်းနဲ့ အလုံးရေ ၄၄၀၀၀ ရောင်းချနိုင်ခဲ့ပါတယ်။ 



William Hewlett နဲ့ David Packard တို့က ၁၉၃၉၊ ဇန်နဝါရီ ရက်နေ့မှာ တည်ထောင်ခဲ့တဲ့ Hewlett-Packard (HP) ကလည်း ကွန်ပျူတာစျေးကွက်ထဲကို ၁၉၆၈ မှာ HP9100A ကွန်ပျူတာနဲ့ ဝင်ရောက်လာခဲ့ပြီး ကွန်ပျူတာထုတ်လုပ်တဲ့ အကြီးဆုံး ကုမ္ပဏီကြီး ဖြစ်လာခဲ့ပါတယ်။ ဒီလိုနဲ့ပဲ ကွန်ပျူတာတွေဟာ အရှိန်အဟုန်နဲ့ ဆက်လက်ပေါ်ထွက်ခဲ့ပါတယ်။


၁၉၇၄ ကို ရောက်တဲ့အခါမှာတော့ ကွန်ပျူတာတွေ နောက်ထပ် တစ်ခေတ်ဆန်းစေခဲ့ တဲ့ mouse, display စတာတွေ ပူးတွဲပါဝင်တဲ့ GUI ကို အခြေပြုတဲ့ ကွန်ပျူတာတွေ စတင်ပေါ်ထွက်လာခဲ့ပါတယ်။ Operating System တွေလည်းပဲ အဲသည်မှာ စတင်တွင်ကျယ်လာတယ်ပေါ့။

၁၉၇၁ မှာ Intel ရဲ့ Intel 4004 microprocessor ကို မိတ်ဆက်နိုင်ခဲ့တဲ့နောက် ၁၉၇၃ မှာ ဗီယက်နမ်လူမျိုး André Truong Trong Thi နဲ့ ပြင်သစ်လူမျိုး Francois Gernelle ဆိုသူတို့နှစ်ဦးက Micral Computer ကို တီထွင်ခဲ့ပြီးတော့ Intel 8008 processor ကို သုံးလိုက်ခြင်းအားဖြင့် ကမ္ဘာ့ပထမဆုံး မိုက်ခရိုကွန်ပျူတာတွေကို ထုတ်လုပ်နိုင်ခဲ့ကြပြီး $1750 နှုန်းနဲ့ ရောင်းချနိုင်ခဲ့ကြပါတယ်။ 



Personal Computer (PC) ဆိုတဲ့ အသုံးနှုန်းကို 1975 မှာ စတင်တွေ့ရှိခဲ့ရပြီး အဲသည်နှစ် စက်တင်ဘာလမှာပဲ Laptop လို့ ခေါ်ရမယ့် ပထမဆုံးသော portable computer ကို ဖန်တီးနိုင်ခဲ့ကြပါတယ်။ 1.9MHz PALM Processor ကို သုံးခဲ့ပြီး RAM ကတော့ 64KB ပဲ ပါပြီး Display ကတော့ 5 လက်မပဲ ရှိပါသေးတယ်။ CPM (Characters Per Minute) ဆိုတဲ့ Operating System ကို သုံးလာခဲ့ပါတယ်။ ၂၄ပေါင်ခွဲ အလေးချိန်ရှိတဲ့ အဆိုပါ laptop ကို $1795 နှုန်းနဲ့ ရောင်းချခဲ့တာပါ။ 

Apple ရဲ့ ပထမဆုံး မျိုးဆက် Apple I ကွန်ပျူတာကိုတော့ ၁၉၇၆ မှာ $666.66 နဲ့ ရောင်းချခဲ့ပါတယ်။ 8 bit processor နဲ့ 4KB RAM ကို သုံးထားပါတယ်။ ခုခေတ်ကွန်ပျူတာတွေနဲ့ ယှဥ်ရင်တော့ ရယ်စရာပေါ့။ အဲသည်နောက်မှာတော့ 8088 processor ကို သုံးပြီး 16KB ရှိတဲ့ RAM နဲ့ IBM ရဲ့ PC တွေ ၁၉၈၁ မှာ ထွက်ရှိလာခဲ့ပါတယ်။ MS-DOS Operating System ကို သုံးထားပါတယ်။ 



ပြန်ခြုံပြောရရင် ၁၉၅၀ မှာ main frame computer တွေ ပေါ်လာခဲ့ပြီးတော့ ၁၉၅၀ အလယ်လောက်မှာ IBM  ရဲ့ GMOS by General Motor for IBM ဆိုပြီး Operating System တစ်ခု စတင်ပေါ်ပေါက်ခဲ့ပါတယ်။ အဲမတိုင်ခင်ကဆိုရင် ENIAC & Main Frame computer တွေမှာ သီးသန့် Operating System မရှိခဲ့ပါဘူး။ program တစ်ခုချင်းစီကိုပဲ တိုက်ရိုက် run နိုင်တဲ့ machine တွေအဖြစ်သာ ရှိခဲ့ပါတယ်။ Operating System ပေါ်ပေါက်လာပြီးတဲ့နောက်မှာ Application တွေကို တစ်ကြိမ်မှာ တစ်ခုထက်ပိုပြီး လုပ်ဆောင်နိုင်လာကြပါတယ်။ 

အစောပိုင်းကလ programming မှာ machine တွေရဲ့ circuitry system ကို physical manipulate လုပ်ပြီးတော့ လုပ်ဆောင်ခဲ့ကြရတာ ဖြစ်ပါတယ်။ နောက်ပိုင်းမှာတော့ Assembly language ကို တီထွင်နိုင်လာကြပြီး Physical Manipulation လုပ်ဆောင်ရာမှာ အသုံးပြုနိုင်မယ့် ကုဒ်တွေကို ရေးနိုင်လာကြပါတယ်။ ပြီးတော့ Assembly language ကိုပဲ သုံးရတာ ပိုလွယ်ကူအောင် ကြိုးစားရင်းနဲ့ compiler ကို တီထွင်နိုင်ခဲ့ပြီးတော့ C Programming language ကို အသုံးပြုနိုင်လာတဲ့အထိ တိုးတက်လာခဲ့တာပါ။ Operating System အကြောင်းကနေ language တွေ ရောက်ကုန်ပြီ။ ပြန် တည့်ရအောင်။ 

အဲသည်နောက်မှာတော့ SCOPE လို Control Data Corporation ကို အခြေပြုတဲ့ Operating System တွေ ပေါ်ထွက်လာခဲ့ပါတယ်။ အဲကာလတွေအထိ ကွန်ပျူတာကြီးတွေက အရွယ်အစားအားဖြင့်လည်း ကြီးမားလှပါသေးတယ်။ လူတိုင်းသုံးနိုင်ဖို့လည်း မလွယ်ကူသေးတာကြောင့်မို့ Operating System တွေနဲ့ပတ်သက်ပြီး သိပ်သတိမထားမိခဲ့ကြပါဘူး။ 

ကွန်ပျူတာသမိုင်းကြောင်းတွေကို ပြန်လှန်သုံးသပ်ကြည့်တဲ့အခါ ၁၉၆၀ နှောင်းပိုင်း ကာလတွေမှာ Operating System တွေ ထွန်းကားလာခဲ့ကြောင်း တွေ့နိုင်ပါတယ်။ Bell Lab ကနေ UNIX ဆိုတဲ့ Operating System တစ်ခု ပေါ်ထွက်လာခဲ့ပါတယ်။ command line based ဖြစ်တဲ့ Unix OS မှာ GUI (ထိုစဥ်က Graphic Oriented Os လို့ခေါ်) ကို support လုပ်နိုင်ဖို့အတွက် X Windows System ဆိုတဲ့ app တွေပါ ပါဝင်ခဲ့ပါတယ်။ Unix OS မှာ သူ့ရဲ့ အထူး add-on လို့ ဆိုရမယ့် Shell တွေ အများကြီး ပါဝင်ပြီးတော့ အဲသည်ကနေ command line ကို မကြာခဏ သုံးရပါတယ်။ 

ဒီဘက်ခေတ်မှာ သိဖူးကြတဲ့ Solaris, BSD, FreeBSD, OpenBSD, စတာတွေသည် Unix distro တွေ ဖြစ်ပါတယ်။ ထိုစဥ်က Unix သည် သုံးရတာ ကောင်းမွန်တဲ့ OS တစ်ခုအဖြစ် ရှိခဲ့ပြီး အခမဲ့မရနိုင်ပါဘူး။ ဝယ်ဖို့ကလည်း စျေးကြီးလှပါတယ်။ ၁၉၈၃ မှာတော့ Richard Stallman ဆိုသူက GNU (GNU is Not Unix) လို့ နာမည်ပေးထားတဲ့ Free Software Project တစ်ခုကို စတင်ခဲ့ပါတယ်။ 

GNU ရဲ့ အဓိကရည်ရွယ်ချက်က ကွန်ပျူတာအသုံးပြုသူတွေကို copy, distribute, modify & develop စတာတွေကို လွတ်လပ်စွာ လုပ်ဆောင်နိုင်စေဖို့ နဲ့ Operating System ကို အတွင်းကျကျ လေ့လာနိုင်စေပြီး distro တွေ ဖန်တီးချင်ရင်လည်း လွယ်ကူစေဖို့ ဖြစ်ပါတယ်။ GNU ကို Free Software Foundation (FSF) က develop လုပ်ထားပါတယ်။ GNU သည် Unix မဟုတ်ပေမယ့် Unix-like Operating System တစ်ခု ဖြစ်ပါတယ်။ 

GNU မှာ Unix လိုပဲ command line utilities, system libraries နဲ့ ကွန်ပျူတာ လုပ်ဆောင်နိုင်ဖို့အတွက် လိုအပ်တဲ့ အခြား tool တွေ ပါဝင်နေပါတယ်။ Operating System မှာ အချက်အချာကျတဲ့ အစိတ်အပိုင်းတွေ ရှိပါတယ်။ အဲထဲက တစ်ခုက Kernel ပါ။ GNU ကို ဖန်တီးခဲ့စဥ်က သူ့ရဲ့ Kernel ဖြစ်တဲ့ Hurd က အသင့်မဖြစ်ခဲ့သေးပါဘူး။ 

အဲချိန်မှာပဲ အသက် ၂၁ နှစ်အရွယ် ကွန်ပျူတာသိပ္ပံကျောင်းသားလေး Linux Torvalds က ၁၉၉၁ ဧပြီလမှာ Unix လို OS တစ်ခု ဖန်တီးမယ်ဆိုပြီး intel 80386 နဲ့ assembly language ကို သုံးပြီး task switcher တစ်ခုကို ဖန်တီးခဲ့ပါတယ်။ OS တစ်ခုလုံး ဖန်တီးမယ်လို့ ရည်ရွယ်ခဲ့ပေမယ့် အဲသည်နှစ် စက်တင်ဘာမှာ version 0.01 နဲ့ October 5 မှာ Official Linux 0.02 ကို စတင်ဖြန့်ဝေခဲ့ပါတယ်။ 

Linux မှာ bash run နိုင်သလို၊ gcc နဲ့ အခြားသော GNU ရဲ့ utility တွေ အတော်များများကိုလည်း run နိုင်ခဲ့ပါတယ်။ ဒီတော့ Linux သည် အချိန်တိုအတွင်း ကြီးထွားလာခဲ့ပြီးတော့ Hurd kernel အသင့်မဖြစ်သေးတဲ့ GNU က Linux Kernel ကို ယူသုံးလိုက်ချိန်မှာ အားလုံး အဆင်ပြေသွားခဲ့သလို Linux သည်လည်း ပြိုင်ဘက်ကင်းလောက်အောင် တဟုန်ထိုး အောင်မြင်လာခဲ့ပါတယ်။ GNU OS မှာ Linux Kernel ကို ယူသုံးခဲ့တာကြောင့်မို့ GNU/Linux OS လို့ ခေါ်ခဲ့ကြပါတယ်။ 

နောက်ပိုင်းမှာ GNU ရဲ့ Hurd Kernel အဆင်ပြေလာခဲ့သည့်တိုင် Linux Kernel နဲ့ယှဥ်ရင် လုပ်ဆောင်မှုပိုင်း နှေးကွေးတာ၊ Ecosystem အရလည်း device တွေသည် Linux Kernel နဲ့ ပိုပြီးအဆင်ပြေလွယ်ကူတာ၊ Linux Kernel ကို သုံးထားတဲ့ GNU based distro တွေလည်း တိုးပွားလာတာ၊ Linux Kernel နဲ့မှ ပိုပြီး ကောင်းမွန်ပြီး Unix ကို ယှဥ်ပြိုင်နိုင်တာ၊ GNU ရဲ့ မူလရည်ရွယ်ချက်ကိုက Free & Open Source software တွေကို promote လုပ်လိုတာ စတဲ့အချက်တွေကြောင့် Linux Kernel ကိုပဲ တွင်ကျယ်စွာ ဆက်လက် သုံးစွဲရပါတော့တယ်။ 

Kernel ဆိုတာ Operating System တစ်ခုရဲ့ အသက်သွေးကြောတွေထဲမှာ အပါဝင်ဖြစ်တဲ့ core component တစ်ခု ဖြစ်ပါတယ်။ Software တွေ အလုပ်လုပ်နိုင်ဖို့အတွက် software component တွေနဲ့နဲ့ hardware တွေကြားမှာ အဆင်ပြေပြေလုပ်ဆောင်နိုင်စေဖို့ ပေါင်းကူးဆက်သွယ်ပေးပြီးတော့ input/output device တွေလို hardware resource တွေကို device driver ရဲ့ အကူညီနဲ့ ထိန်းချုပ်ပေးရပါတယ်။ Kernel သည် Hardware တွေနဲ့ application တွေကြားမှာ အလုပ်လုပ်ပေးရတာမို့ အလုပ်များပြီး အရေးပါတဲ့အရာတစ်ခုလို့ပဲ အလွယ်ဆိုကြပါစို့။ 

8 comments: