Feb 20, 2015

Android OS အေၾကာင္းကို သိေစဖို႔

Android ကို စတင္ ေလ့လာဖို႔ က်ိဳးစားေန သူေတြ အေနနဲ႔ အမ်ားေျပာ ေနၾကတဲ့ 
Bootloader, Firmware, ADB, Stock ROMs,
Custom ROMs, OS Kernel, ClockworkMod, Flashing, 

Rooting, Baseband စ သျဖင့္ စာလံုး အထူး အဆန္း ေတြခ်ည္း
ေတြ႔ရလို႔ ေလ့လာ ခ်င္စိတ္ကုန္ သြားတတ္ သလို တစ္လံုးခ်င္းစီနဲ႔ သူတို႔ရဲ့ သီးသန္႔ အလုပ္ လုပ္ပံုကို အတိ အက် မသိရင္ နာမည္သာ
ေခၚေနေပမယ့္ အႏွစ္သာရ မဲ့ေန တတ္ပါတယ္၊ တကယ္ေလ့လာ လိုသူေတြ အေနနဲ႔ လဲ တစ္ခုစီရဲ့ အဓီပါယ္နဲ႔ အသံုး၀င္ပံု အေသးစိတ္
အလုပ္ လုပ္ပံု တို႔ကို ေသခ်ာ သိကို သိထား ရပါမယ္။

ဒီပို႔စ္မွာ အထက္က စာလံုးေတြ အေၾကာင္း ရွင္းျပေပး သြားပါမယ္၊ တကယ့္ ပညာရွင္ အဆင့္ တက္လွမ္း ခ်င္သူေတြ အတြက္ Open
Source ျဖစ္တဲ့ Android က မည္သူ မဆို ေဒါင္းယူႏိုင္ၿပီး ႀကိဳက္သလို ျဖတ္ႏိုင္ ျပင္ႏိုင္ ပါတယ္၊ စိတ္ႀကိဳက္ ေျပာင္းႏိုင္ၿပီး မိမိနဲ႔ အ
သင့္ေတာ္ဆံုး ျဖစ္တဲ့ System တစ္ခု ျဖစ္သြားတဲ့ အထိ ျပဳျပင္ ယူလို႔ ရပါတယ္။

Bootloader ဆိုတာ ဘာလဲ

Bootloader ဆိုတာက Operation System မစ တင္ခင္ အလုပ္ လုပ္တဲ့ Code အစိတ္ အပိုင္း ေလးကို ေခၚပါတယ္၊ Bootloader
ထဲမွာ OS kernal ကို စတင္ အလုပ္ လုပ္ေအာင္ ေခၚမယ္ ညြန္ၾကားခ်က္ေတြ ပါပါတယ္၊ Bootloader က Internal Memory ထဲ
မွာ ရွိတဲ့ Paratition ေတြ အားလံုး ရဲ့ ပထမဆံုး Partition မွာ တည္ရွိတာ ျဖစ္ၿပီး အျခား Partitions ေတြ အားလံုးကို သြား
မယ့္ Check Point ပါပဲ။

Bootloader ဘယ္လို အလုပ္ လုပ္တာလဲ

Power စဖြင့္ တာနဲ႔ ROM ထဲမွာ ရွိတဲ့ Boot ROM Code က စၿပီး အလုပ္ လုပ္ပါတယ္၊ ၿပီးရင္ Bootloader လို႔ ေခၚတဲ့ Boot Strap
Firmware ကို ႏိုးမယ္၊ Boot Strap Firmware ထဲမွာ MBR and GRUB/LILO တို႔ ပါ၀င္တယ္၊ Bootloader အလုပ္ စၿပီ ဆိုတာနဲ႔
init.S ဖိုင္ စ အလုပ္ လုပ္တယ္ ၊ အရင္ ဆံုး BSS segment ကို 0 တန္ဖိုး ေရာက္ သြားေအာင္ ရွင္းတယ္၊ ပီးရင္ main.c ဖိုင္ကို စေခၚမယ္၊ main.c ဖိုင္ စ အလုပ္ လုပ္တာနဲ႔ hardware အစိတ္ အပိုင္း ေတြ ျဖစ္တဲ့ clocks, board, keypad, console တို႔ကို စတင္ ေစမယ္၊ ၿပီးရင္ Linux Tags ကို ဖန္တီးၿပီး Linux Kernel image ကို Memory ကေန ၀င္တင္မယ္။

Botloader ေရြးခ်ယ္မႈ

Bootloader က Phone မွာ ပါ၀င္တဲ့ အျခားမည္သည့္ software မဆိုရဲ့ အဦးဆံုး စတင္တဲ့ အတြက္ မွန္ကန္တဲ့ processor ကို
အသံုးျပဳဖို႔ အလြန္ အေရးႀကီး လွပါတယ္၊ Android OS က Open Source ျဖစ္တဲ့ အတြက္ ဖုန္း ထုတ္လုပ္တဲ့ ကုမၼဏီ ေတြက သူ
တို႔ ထုတ္လုပ္တဲ့ ဖုန္း Hardware နဲ႔ ကိုက္ညီတဲ့ Bootloader version ကို Develop လုပ္ထား ၾကပါတယ္၊ Android ဖုန္းေတြ
မွာ ပါ၀င္တဲ့ Bootloader ေတြကို အျမဲတမ္း Locked ခ်ထားပါတယ္၊ ဒီလို လုပ္ထား တာကေတာ့ ထုတ္လုပ္တဲ့ ကုမၼဏီ ေတြကို သူ
တို႔ ထုတ္လုပ္တဲ့ ဖုန္းကို သူတို႔ထုတ္လုပ္တဲ့ OS version နဲ႔ပဲ တြဲသံုး ေစခ်င္လို႔ပါ၊ Bootloader ကို Locked လုပ္ထားရင္ Custom
ROM install လုပ္လို႔ မရပါဘူး၊ ဒါေၾကာင့္ Custom ROM Install လုပ္လိုရင္ Bootloader ကို အရင္ Unlock လုပ္ရ ပါတယ္။

Kernel ဆိုတာဘာလဲ

Kernel ဆိုတာက Android တစ္ခုထဲမွာ သာလွ်င္ ရွိတာ မဟုတ္ပဲ IOS,MacOS,Window,BlackBerry's QNX တို႔မွာလဲ ရွိပါတယ္၊ High Level Operation Systems အားလံုးမွာ Kernel တစ္ခုေတာ့ ပါ၀င္ ပါတယ္၊ ခု ေျပာမွာက Android အေၾကာင္း ဆိုေတာ့ Linux Kernel ကိုပဲ ဦးတည္ၿပီး ေျပာသြား ပါမယ္၊ Android သံုးသမွ် ပစၥည္းေတြက Linux Kernel ကို သံုးၾကပါတယ္၊

ဒါေပမယ့္ Linux Operation System က သံုးတဲ့ Kernel နဲ႔ေတာ့ တထပ္တည္း မတူပါဘူး၊ Android Kernel မွာ Android အ
တြက္ သီးသန္႔ Build-in code ေတြ ပါေနပါတယ္၊ ဒါ့ေၾကာင့္ပဲ Developers ေတြနဲ႔ hackers ေတြ အတြက္ Android Versions
အသစ္ ေတြကို Android ဖုန္းအေဟာင္း ေတြမွာထည့္သြင္းၿပီး အားလံုး အဆင္ေျပေျပ အလုပ္ ျဖစ္ေအာင္လုပ္ဖို႔ အေတာ့ကို ေစာင့္ရ ပါတယ္၊

Gingerbred kernel အတြက္ သံုးတဲ့ drivers ေတြက Ice Cream Sandwich kernel အတြက္ အလုပ္ လုပ္မွာ မဟုတ္ပါဘူး၊ ဒီကိစၥက လဲ အေရးႀကီး ပါတယ္၊ Kernel ရဲ့ အဓိက အလုပ္က Hardware ကို ထိန္းခ်ဳပ္ဖို႔ တာ၀န္ကို ယူထား လို႔ပါ၊ kernel ကိုေရး
တဲ့ ကုတ္ေတြလဲ တကယ့္ကို မ်ားလွပါတယ္၊

Kernel ရဲ့ အဓီက တာ၀န္ ကေတာ့ Hardware နဲ႔ Software တို႔ၾကားမွာ ႏွစ္ဖက္ညြန္ၾကားခ်က္ ေတြကို နားလည္ေအာင္ လုပ္ကိုင္
ေပးဖို႔ပါပဲ၊ Software တစ္ခုက ဘယ္လို အလုပ္မ်ိဳး ကိုမဆို Hardware ကို လုပ္ေစခ်င္ တဲ့ အခါက်ရင္ Hardware ကို တိုက္ရိုက္
အမိန္႔ မေပးပဲနဲ႔ Kernel ကို ညြန္ၾကားခ်က္ အရင္ လွမ္းပို႔ ပါတယ္၊ ဒီေနရာမွာ အလုပ္ ဆိုတာက ဖုန္းက လုပ္ႏိုင္တဲ့ အလုပ္ အားလံုး
ကို ညြန္း ပါတယ္၊

ဖုန္း Screen အလင္းေရာင္ ခ်ိန္တာတို႔၊ အသံ အနိမ့္ အျမင့္ ခ်ိန္တာတို႔၊ Raido ကို ခ်ိတ္ဆက္ၿပီး ဖုန္းေခၚဆို တာတို႔၊ ဖုန္း မ်က္ႏွာျပင္
မွာ ပုံဆြဲတာတို႔ စသျဖင့္ အလုပ္ မွန္ သမွ်ကို Software က လုပ္ လိုတဲ့ အခါက်ရင္ Hardware ကို တိုက္ရိုက္ မခိုင္းပဲ Kernel ကို
လွမ္းခိုင္း လိုက္ ပါတယ္၊ အဲ့ဒီ့ အခါ မွာ Kernal က တဆင့္ Hardware ကို လုပ္မယ့္ အလုပ္ကို ညြန္ၾကား ပါတယ္၊

ဥပမာ ကၽြန္ေတာ္တို႔ ဖုန္း မ်က္ႏွာျပင္ ေပၚမွာ က ကင္မရာ (Camera) ရိုက္တဲ့ ခလုပ္ မွာ ကလစ္ တစ္ခ်က္ႏွိပ္ၿပီး ဓါတ္ပံု ရိုက္တယ္
ဆိုပါစို႔၊ ခလုပ္ကို ႏွိပ္လိုက္တာနဲ႔ကို software က Event တစ္ခုကို နားေထာင္လုိ႔ရမယ္ ရတဲ့ Event ျဖစ္ေပၚတဲ့ ေနရာကို driver ကတဆင့္ Kernel ကို ပို႔မယ္၊ kernel ကလဲ ရလာတဲ့ အခ်က္နဲ႔ ပတ္သက္တဲ့ command ကို Camera hardware ကို လွမ္းပို႔မယ္၊
Camera Hardware က ဓါတ္ပံုကို ရိုက္ေပးမယ္ ဒီလို Software တစ္ခု က Input လုပ္လိုက္တာကို Kernel က ယူၿပီး Output
တစ္ခု အျဖစ္ Hardware ကို ျပန္ေပး ပါတယ္၊

အကယ္၍ Kernel သာ မရွိခဲ့ ရင္ေတာ့ Developers ေတြက အလုပ္ တစ္ခုစီ အတြက္ အလြန္႔ အလြန္ မ်ားျပားလွတဲ့ machine Code ေတြကို ေရးၿပီး Hardware ကို ခိုင္းေစ ရမွာျဖစ္ ပါတယ္။

Kernel က ၾကားခံ ေပးထားတဲ့ အတြက္ Application Developers ေတြ အေနနဲ႔ Android System API's ေတြ ကေန တစ္
ဆင့္ Kernel ဆီကို Resquest ေတြ အလြယ္တစ္ကူ ပို႔ႏိုင္ၿပီး Kernel နဲ႔ ခ်ိတ္ဆက္ အလုပ္လုပ္ဖို႔သာ Develop လုပ္ရမွာျဖစ္သလို
Hardware Developers ေတြကလဲ သူတို႔ Develop လုပ္တဲ့ Hardware ကို Kernel နဲ႔ ဆက္သြယ္ အသံုးျပဳႏိုင္ေအာင္ Develop လုပ္ေပး စရာလိုပါတယ္။

CWM ဆိုတာဘာလဲ

CWM ဆိုတာကေတာ့ ClockWorkMod ကိုဆိုလိုပါတယ္၊ CWM ကို Android သံုး ဖုန္း နဲ႔ Tablet ေတြ Recovery လုပ္ဖို႔ သံုးပါတယ္၊
ဒီလို CWM သံုးပီး recover လုပ္တာ ကိုပဲ CWM recovery လို႔ ေခၚပါတယ္၊ CWM recovery လုပ္ျခင္းအားျဖင့္ Stock Recovery နဲ႔
မလုပ္ႏိုင္တဲ့ Data ျပန္လည္သိုေလွာင္ျခင္း root access ရယူျခင္း အသံုးျပဳတဲ့ ဖုန္းထဲက data ေတြကို Backup လုပ္ျခင္း Custom
ROM ထည့္သြင္း အသံုးျပဳျခင္း Kernel တပ္ဆင္ျခင္း စသျဖင့္ အလုပ္ေတြ အမ်ားၾကီးကို လုပ္သြားႏိုင္ ပါတယ္၊ Android အေျခခံ အ
ဆင့္ ကို နားမလည္ ေသးသူေတြအတြက္ ClockWorkMod ကိုသံုးၿပီး Recovery လုပ္ရင္ အခက္အခဲ ေတြ႔ႏိုင္သလို CWM recovery
က အစြမ္းကိုလဲ သေဘာေပါက္ဖို႔ ခက္ခဲေန ပါအံုးမယ္။

Android Devices ေတြ အားလံုး recovery console ကို ဖုန္း အတြင္း ပိုင္း memory ထဲ ထည့္ၿပီး ကုမၼဏီ ေတြက ထုတ္ လုပ္
ေရာင္းခ် ပါတယ္၊ recover console ကေန Boot တက္ႏိုင္ ပါတယ္၊ အကယ္၍ မလိုလား အပ္တဲ့ ျပသနာေတြ တက္လာၿပီ ဆိုရင္
ကၽြန္ေတာ္တို႔ Factory Reset သံုးၿပီး Recover လုပ္ႏိုင္ပါတယ္၊ ဒါမွမဟုတ္ zip ဖိုင္နဲ႔ လာတဲ့ official ROM ကို Update လုပ္
ႏိုင္ပါတယ္၊ ဒီလို အခ်က္ေလာက္ သာလွ်င္ လုပ္ႏိုင္တာပါ Custom Recovery ကေတာ့ သူ မတူတဲ့ အလုပ္ မ်ိဳးကို လုပ္ႏုိင္ ပါတယ္၊
Custom Recovery ကေတာ့ Stock Recovery လို မဟုတ္ပဲ Stock Recovery လုပ္ႏိုင္ သမွ် ကို လုပ္ႏိုင္တဲ့ အျပင္ ကိုယ္ ပိုင္ Android ကို စိတ္ႀကိဳက္ ထိန္းခ်ဳပ္ ႏိုင္ေအာင္ အဆင့္ျမင့္တဲ့ Options ေတြ ပါလာပါတယ္၊

Custom Recovery ကို သံုးရင္ တရား ၀င္ေကာ တရား မ၀င္ ROMs ေတြကိုပါ Install လုပ္ႏိုင္ ပါတယ္၊ အျခား Application
Update လုပ္ျခင္း Themes ေျပာင္းျခင္း Kernel ေျပာင္းလဲျခင္း Zip ဖိုင္ အသံုးျပဳျခင္း User Data အပါအ၀င္ ဖုန္း Partition ေတြ
အားလံုးကို ျဖတ္ႏိုင္ျခင္း SD cards Partition ခြဲျခင္း Dalvik Cache မ်ားျဖတ္ပစ္ျခင္း Permission မ်ားေျပာင္းလဲျခင္း resotre
န႔ဲ Backup မွာ စိတ္ႀကိဳက္ အစိတ္အပိုင္း ေတြကို ေရြးခ်ယ္ႏိုင္ျခင္း နဲ႔ အျခား အျခား ေသာ အလုပ္ေတြ အမ်ားႀကီးကို စိတ္ႀကိဳက္ လုပ္ႏိုင္
ပါတယ္၊ ClockWorkMod recovery ကို Koushik Dutta က Develop လုပ္ခဲ့ပါတယ္၊ Android ROM Manager ကိုDevelop လုပ္
တဲ့ သူပါပဲ၊ သူ႔ရဲ့ Hacking away at Android devices ဆိုတဲ့ Blog နဲ႔ Twitter မွာ သူ႔ကို ရွာေတြ႔ႏိုင္ ပါတယ္၊

Firmware နဲ႔ ပတ္သက္ သမွ်ွ်

Firmware ဆိုတာက ROM (read only memory) ထဲကို ထည့္ေရး ထားတဲ့ Software program ကို ဆိုလို ပါတယ္၊ Window computer ေတြမွာ သံုးတဲ့ window7 install လုပ္သ လိုပါပဲ၊ ဖုန္း အတြက္ Firmware Install လုပ္တယ္ ဆိုရင္ေတာ့ Froyo,
Gingerbread,HoneyCamb,ICS,Jelly Bean,Kitkat တို႔လို Android Version ေတြကို Phone မွာ Install လုပ္ျခင္းပါပဲ။

ဖုန္းတိုင္းမွာ မတူညီတဲ့ Firmware နဲ႔ installation Tool ေတြ ရွိပါတယ္၊ ဒါ့ေၾကာင့္ ႀကိဳက္တဲ့ ဖုန္းမွာ ႀကိဳက္တဲ့ firmware ကို
သံုးႏိုင္မွာေတာ့ မဟုတ္ပါဘူး၊ တစ္ခုေတာ့ ရွိတယ္၊ ROM ဆိုတာက မူရင္း အဓိပါယ္ Read-Only-Memory ကို ဆိုလို ပါတယ္၊ ဒီေတာ့
read only ဖတ္လို႔ပဲ ရမယ္ ေရးလို႔ မရဘူးဆိုတဲ့ သေဘာေပါ့၊ ဒါဆိုရင္ ဘယ္လို လုပ္ၿပီး ROM ထဲက Firmware ကို Update လုပ္
ႏိုင္ မွာလဲလို႔ ေတြးစရာပါ၊ သေဘာ တရား အရေတာ့ ROM ထဲမွာ Firmware ရွိတယ္ေပါ့ ၊ ေနာက္ပိုင္း မွာေတာ့ Developer ေတြက
ROM ရဲ့ အျပင္မွာ Firmware ကို ထည့္ေရး ကုန္ၾကပါတယ္၊ ဖုန္းရဲ့ Firmware ကို ROM လို႔လဲ ေခၚတယ္၊ အေၾကာင္း ကေတာ့ သီအို
သီသေဘာမွာ Firmware က ROM ထဲမွာရွိတယ္၊ ROM ဆိုတာ Read Only Menory, ေရွ့ထုတ္ခဲ့တဲ့ ဖုန္းေတြ မွာေတာ့ Firmware
က ROM ထဲမွာ ရွိတယ္ဆိုတာ မွန္ပါတယ္၊ ဒါေပမယ့္ ယေန႔ အသံုးျပဳေနတဲ့ ဖုန္းေတြမွာေတာ့ Firmware ကို ROM မထည့္ေတာ့ပါဘူး၊ Firmware ကို ဖုန္းရဲ့ internal flash meonry ထဲမွာ ထည့္ထားတယ္၊၊ internal flash meonry က Read Only မဟုတ္ဘူး ဒါ့ေၾကာင့္ firmware အသစ္ တစ္ခုကို flash လုပ္လို႔ ရတာေပါ့၊

Flashing ဆိုတာဘာလဲ

Flashing လုပ္တယ္ဆိုတာက Eloctronic Device ျဖစ္တဲ့ Phone ထဲကို firmware ထည့္သြင္းတာကို ဆိုလိုပါတယ္၊ Flashing လုပ္ျခင္းက ROM ထဲမွာ ရွိတဲ့ Data ေတြကို ျပန္ေရး ျခင္းပါပဲ၊ Android ဖုန္းမွာ Custom ROMs ကို Stock ROMs အစား Flashing လုပ္ၿပီးေတာ့ ဖုန္းထုတ္တဲ့ ကုမၼဏီက ထည့္သြင္းေပး လိုက္တဲ့ Functions ေတြကို ေျပာင္းလဲ ၿပီး ပိုမိုေကာင္းမြန္တဲ့ Unlimited ၀န္
ေဆာင္မွဴကို ရရွိႏိုင္ပါတယ္၊

Rooting ဆိုတာဘာလဲ

Android System ရဲ့ Hardware Layer အေပၚမွာ ရွိတဲ့ Linux Kernel ကို လိုသလို ထိန္းခ်ဳပ္လို႔ ရႏိုင္မယ့္ အခြင့္ အေရး ရခ်င္လုိ႔
Root access လုပ္ ၾကပါတယ္၊ ဒီ အခြင့္အေရး ရယူႏိုင္ျခင္း ကိုပဲ Root Access ရတယ္လို႔ ေခၚပါတယ္၊ Root Access ရသြားရင္
Android File System ကို စိတ္ႀကိဳက္ ျပဳျပင္ႏိုင္ပါတယ္၊

Android File System ထဲမွာ အဓိက ပါ၀င္တဲ့ အလႊာ (Partitions) ၆ ခု ကို လိုသလို အသံုးခ် ႏိုင္ရင္ Booting နဲ႔ ပတ္သက္
တဲ့ Process ေတြ အားလံုးကို ထိန္းခ်ဳပ္ႏိုင္ သလို File System ထဲက တန္ဖိုးေတြနဲ႔ ထိန္းခ်ဳပ္မွူ ေတြကိုလဲ လိုသလို ျပဳျပင္ႏိုင္ ပါၿပီ၊
ဒါတင္ မကပါဘူး ကၽြန္ေတာ္တို႔ စိတ္ႀကိဳက္ SSH (Secure Share protocol) (သို႔) HTTP (Hyper Text Transfer Protocol)
DHCP (Dynamic Host Configuration Protocol) (သို႔) DNS(Domain Name Server) နဲ႔ Proxy Servers ေတြကို လဲ အ
သံုးျပဳႏိုင္ပါၿပီ။

Android System ရဲ့ လုပ္ေဆာင္မူ ေတြထဲက ရပ္ခ်င္သမွ် လုပ္ေဆာင္ခ်က္ ေတြကိုလဲ ရပ္ထားႏိုင္တဲ့ အျပင္ Arbitrary commands
ေတြလဲ အသံုးျပဳႏိုင္ သြားပါတယ္၊ အျခား အျခား ေသာ အခ်က္ေတြ အမ်ား အမ်ားႀကီး ကိုလဲ လုပ္ႏိုင္ပါ ေသးတယ္၊ ဒီ အခ်က္ေတြက
Root လုပ္ရျခင္းရဲ့ ရည္ရြယ္ခ်က္ပါ၊ ဒါကိုပဲ Rooting လုပ္တယ္လဲေခၚပါတယ္

ထုတ္လုပ္သူ ေတြက သူတို႔ရဲ့ Device ေတြကို ေရာင္းခ်တဲ့ အခါ Software restrictions ေတြ ပါလာ ပါတယ္၊ ဒီလို Software
Restrictions ေတြ ပါလာရတဲ့ အေၾကာင္း အမ်ိဳးမ်ိဳး ရွိပါတယ္၊ တစ္ခ်ိဳ႕ ကုမၼဏီေတြ ကေတာ့ သူတို႔ ပစၥည္းကို အသံုးျပဳတဲ့ သူေတြကို ကာကြယ္ ေပးဖို႔ ဆိုၿပီး Restrictions ထည့္ ပါတယ္၊ ဘယ္လို အေၾကာင္း ေၾကာင့္ပဲ ျဖစ္ျဖစ္ ကန္႔သတ္ခ်က္ ေတြ ပါ၀င္ေန ျခင္းဟာ
Android ဖုန္း (သို႔) Tablet ကို သံုးတဲ့ သူ လိုအပ္တဲ့ ပံုစံအတိုင္း ေျပာင္းလဲဖို႔ ႀကိဳးစားတဲ့ အခါ မ်ိဳး (သို႔) အဆင့္ျမင့္ တဲ့ ျပင္ဆင္မႈ
ျပဳလုပ္ျခင္းမ်ိဳး ျပဳလုပ္တဲ့ အခါမ်ိဳးမွာ ကာဆီး ေနတတ္ ပါတယ္၊ ဒီလို အကာ အဆီးကို ေက်ာ္ျဖတ္ၿပီး စိတ္ႀကိဳက္ ထိန္းခ်ဳပ္ႏိုင္ေအာင္ Root access ရဖို႔ႀကိဳးစားၾကပါတယ္။

Rooting လုပ္ျခင္းက Android သံုး ပစၥည္း ထုတ္လုပ္တဲ့ ကုမၼဏီေတြက ကန္႔သတ္ထားတဲ့ ကန္႔သက္ခ်က္ ေတြကို ခ်ိဳးျဖတ္ၿပီး soft
ware ကို အကန္႔ အသတ္ မရွိ အသံုးျပဳျခင္း ပါပဲ၊ ဒီလို Rooting လုပ္ျခင္း အားျဖင့္ ကၽြန္ေတာ္ တို႔ကို ကန္႔သတ္ ထားတဲ့ Android
ပစၥည္း ရဲ့ အစိတ္ အပိုင္းမွာ ေရးခ်င္တာ ေရးႏိုင္သလို ျပဳျပင္လို သမွ်ကို ျပဳျပင္ သြားႏိုင္ပါတယ္။

Custom ROM နဲ႔ Stock ROM တို႔ ဘာကြာလဲ

Stock ROM နဲ႔ Custom ROM ဆိုၿပီး ႏွစ္မ်ိဳးရွိမယ္၊ Stock ROM က ဖုန္း ၀ယ္တုန္းက ပါလာတဲ့ Phone Operation System. Stock
ROM မွာ Software Restriction ေတြ ထည့္သြင္း ထားတဲ့ အတြက္ စိတ္ႀကိဳက္ အသံုးျပဳခြင့္ မရတဲ့ Operation System ျဖစ္ေန
ပါတယ္၊ Custom ROM ဆိုတာကေတာ့ OS Version တစ္ခု ပါပဲ၊ Custom ROM ထဲမွာလဲ Stock ROM ေတြ လိုပဲ Android Device တစ္ခု လံုးကို အလုပ္ လုပ္ေစတဲ့ Kernel ပါတယ္၊ System Applications ေတြ ပါမယ္၊ Services ေတြပါမယ္၊ တစ္ခုပဲ ကြဲသြား
တာက စိတ္ႀကိဳက္ တည္ေဆာက္ ထားတဲ့ ROM ျဖစ္ျခင္းနဲ႔ Software Restriction ေတြ မပါျခင္း ပါပဲ၊ ဒီေတာ့ Custom ဆိုတဲ့ စ ကားလံုးက က ဘာကို ရည္ညြန္းလဲ၊ Android က Open Source ျဖစ္တဲ့ အတြက္ Developers ေတြက Stock ROMS ေတြ အခမဲ့ ယူလို႔ရတယ္၊ ပီးရင္ စိတ္ႀကိဳက္ ျပဳျပင္လို႔ရတယ္ ဖ်က္ပစ္လိုရာ ျဖတ္ထုတ္ႏိုင္တယ္၊ ထပ္ထည့္ လိုတာ ထပ္ထည့္ႏိုင္တယ္။

အရည္ အခ်င္းရွိရင္ ရွိသေလာက္ စိတ္ႀကိဳက္ ျပဳျပင္ ေျပာင္းလဲၿပီး စိတ္ႀကိဳက္ ROM ကို တည္ေဆာက္ ယူႏိုင္တယ္၊ ဒီလို စိတ္ႀကိဳက္ တည္ေဆာက္ ထားတဲ့ ROM ကိုပဲ Custom ROM လို႔ေခၚတာပါ၊

ADB ဆိုတာဘာလဲ

ADB ရဲ့ မူရင္း စာလံုး ကေတာ့ Android Debug Bridge ပါ၊ သူ နာမည္ အတိုင္း ပါပဲ သူက ဖုန္းကို ျပဳျပင္ဖို႔ အတြက္ ကြန္ျပဴတာနဲ႔ ဖုန္းၾကား ခ်ိတ္ဆက္ ႏိုင္တဲ့ တံတား တစ္စင္းပါ၊ Android Phone က Linux Kernel ကို အေျခခံ ထားပါတယ္၊ ဒီေတာ့ computer
adb server ကို အသံုးျပဳၿပီး ကြန္ျပဴတာ ကေန ဖုန္း ရဲ့ adb Client ကို Linux commands ေတြ လွမ္းပို႔ႏိုင္ ပါတယ္၊ ဒီလို လုပ္ၿပီး commands ေတြကို အလုပ္ လုပ္ေစႏိုင္ ပါတယ္ ဖုန္း အလုပ္ လုပ္ပံုေတြ မမွန္ေတာ့တဲ့ အခါမ်ိဳးမွာ ဒီနည္းကေတာ့ အမွား ရွာၿပီးျပင္ဆင္
ဖို႔ တကယ့္ကို အသံုး၀င္ တဲ့ နည္းပါ၊ ဒီနည္း အတိုင္း ADB Server ျဖစ္တဲ့ Computer ကေန ADB Client ျဖစ္တဲ့ ဖုန္းကို Linux Commands ေတြ ပို႔ၿပီး အလုပ္ မလုပ္ဖူးေသး ရင္ေတာ့ မိတ္ေဆြ ADB ရဲ့ အသံုး၀င္ မွူကို ခံစားဖူးအံုး မွာ မဟုတ္ေသးပါဘူး။

Baseband ဆိုတာဘာလဲ

Baseband ဆိုတာ ကေတာ့ ဖုန္းေတြမွာ သံုးတဲ့ Raido ကို ဆိုလို ပါတယ္၊ ဖုန္း Version နဲ႔ ထုတ္လုပ္တဲ့ ကုမၼဏီ အလိုက္ Raido
Version ေတြလဲ ကြာပါတယ္၊ Raido File ေတြကို Recovery tools ေတြကေန Flash လုပ္ႏိုင္ သလို ADB/ODIN တို႔ ကလဲ
Flash လုပ္ႏိုင္ ပါတယ္၊ Raido (သို႔) Modem နဲ႔ ROM Version တို႔ ကိုက္ညီမႈ မရွိရင္ ေတာ့ MMS, 3G data, VM နဲ႔ Network
ျပသနာ တတ္ႏိုင္ပါတယ္၊

ဒါေၾကာင့္ အသံုးျပဳ ေနတဲ့ ROM နဲ႔ ကိုက္ညီတဲ့ Radio (သို႔) Modem ကို ေရြးခ်ယ္ ႏိုင္ဖို႔ လိုသလို ဖုန္းနဲ႔ ကိုက္ညီတဲ့ network နဲ႔ bandwidth တို႔ကိုလဲ ေရြးခ်ယ္ႏိုင္ဖို႔ လိုအပ္ပါတယ္၊  Raido Firmware က Network ခ်ိတ္ဆက္ ဆက္သြယ္ေရးအတြက္ low-level functions ေတြကို သံုးၿပီး Wi-Fi နဲ႔ GPS တို႔ ခ်ိတ္ဆက္ အသံုးျပဳႏိုင္ေစ ပါတယ္၊ အကယ္၍ ဆက္သြယ္ေရး နဲ႔ ပက္သက္တဲ့ ျပသနာ
မ်ိဳး Android Device မွာ ေတြ႔ႀကံဳေန ရၿပီဆိုရင္ေတာ့ Radio Firmware ကို Update လုပ္ဖို႔ လိုပါၿပီ၊ Radio Firmware ကို Update လုပ္ျခင္းက Range နဲ႔ လုပ္ေဆာင္မႈ ေတြကို ပိုမိုေကာင္းမြန္လာ မွာ ျဖစ္သလို Bettery အသံုးျပဳမႈ ကိုလဲ ေရွာ့ခ်ေပးႏိုင္ ပါတယ္၊

ဖုန္းထဲမွာ Baseband Radio Processor Chipsets ေတြ ပါ၀င္ ပါတယ္၊ ဒီ Chipsets ေတြကို ထိန္းခ်ဳပ္ဖို႔ အတြက္ Software မ်ိဳး
စံု ကိုလဲ ဖုန္းထုတ္လုပ္တဲ့ ကုမၼဏီေတြက Develop လုပ္ၾကပါတယ္။

Credit to BrighterMyanmar

No comments:

Post a Comment

Followers