ေဇာ္ဂ်ီ ႏွင့္ ယူနီကုတ္ ခ်ိန္းရန္

Friday, January 9, 2015

Android ႏွင့္ပတ္သက္၍အနည္းဆံုးသိသင့္သမွ်


Android ကိုစတင္ေလ့လာဖို႔ႀကိဳးစားေနသူေတြအေနနဲ႔ အမ်ားေျပာေနၾကတဲ့
Boot loader , Firmware, ADB , Stock ROMs, Custom ROMs, OS Kernel,
ClockworkMod, Flashing , Rooting , Baseband စသျဖင့္ စာလံုး အထူး
အဆန္းေတြခ်ည္းေတြ႕ရလို႔ ေလ့လာခ်င္စိတ္ကုန္သြားတတ္သလိုဖုန္းတစ္လံုး စီနဲ႔
သူတို႔ရဲ႕သီးသန္႔ အလုပ္လုပ္ပံုကို အတိအက် မသိရင္ နာမည္သာေခၚေနေပမယ့္
အႏွစ္သာရမဲ့ေနတတ္ပါတယ္။ တကယ္ေလ့လာလိုသူေတြအေနနဲ႔လဲ တစ္ခုခ်င္းစီရဲ႕အဓိပၸါယ္နဲ႔ အသံုး၀င္ပံု အေသးစိတ္အလုပ္လုပ္ပံုတို႔ကို ေသခ်ာ သိကိုသိထားရပါမယ္။
ဒီပို႔စ္မွာ အထက္က စာလံုးေတြအေၾကာင္း ရွင္းသြားေပးပါမယ္။
တကယ္ပညာရွင္အဆင့္ တက္လွမ္းခ်င္သူေတြအတြက္ Open Source ျဖစ္တဲ့ Android က
မည္သူမဆိုေဒါင္းယူႏိုင္ၿပီး ႀကိဳက္သလို ဖ်က္ႏိုင္ ျပင္ႏိုင္ပါတယ္။
စိတ္ႀကိဳက္ေျပာင္းႏိုင္ၿပီး
မိမိနဲ႔ အသင့္ေတာ္ဆံုးျဖစ္တဲ့ System
တစ္ခုျဖစ္သြားတဲ့အထိျပဳျပင္ယူလို႔ရပါတယ္။

Boot loader ဆိုတာဘာလဲ

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

Boot loader ဘယ္လိုအလုပ္လုပ္တာလဲ

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

Boot loader ေရြးခ်ယ္မွဳ

Boot loader က Phone မွာပါ၀င္တဲ့ အျခား မည္သည့္ software မဆိုရဲ႕အဦးဆံုး
စတင္တဲ့ အတြက္မွန္ကန္တဲ့ processor ကိုအသံုးျပဳဖို႔
အလြန္အေရးႀကီးလွပါတယ္။ Android OS က Open Source ျဖစ္တဲ့ အတြက္
ဖုန္းထုတ္လုပ္တဲ့ ကုမၸဏီေတြက သူတို႔ ထုတ္လုပ္တဲ့ ဖုန္း Hardware နဲ႔
ကိုက္ညီတဲ့ Boot loader version ကို Develop လုပ္ထားၾကပါတယ္။ Android
ဖုန္းေတြမွာပါ၀င္တဲ့ Boot loader ေတြကို အၿမဲတမ္း Locked ခ်ထားပါတယ္။
ဒီလိုလုပ္ထားတာကေတာ့ ထုတ္လုပ္တဲ့ ကုမၸဏီေတြကို သူတို႔ထုတ္လုပ္တဲ့ဖုန္းကို
သူတို႔ထုတ္လုပ္တဲ့ OS version နဲ႔ ပဲတြဲသံုးေစခ်င္လို႔ပါ။ Boot loader ကို
Locked လုပ္ထားရင္ Custom ROM install လုပ္လို႔မရပါဘူး။ ဒါေၾကာင့္ Custom
ROM Install လုပ္လိုရင္ Boot loader ကို အရင္ 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 ဖုန္းအေဟာင္းေတြမွာ ထည့္သြင္းၿပီး အားလံုးအဆင္ေျပေျပ
အလုပ္ျဖစ္ေအာင္လုပ္ဖို႔ အေတာ့ကိုေစာင့္ရပါတယ္။ Ginger bread kernel အတြက္
သံုးတဲ့ drivers ေတြက Ice Cream Sandwich kernel အတြက္ အလုပ္လုပ္မွာ
မဟုတ္ပါဘူး။ ဒီကိစၥကလဲ အေရးႀကီးပါတယ္။ Kernel ရဲ႕အဓိကအလုပ္က Hardware
ကိုထိန္းခ်ဳပ္ဖို႔တာ၀န္ကိုယူထားလို႔ပါ။ kernel ကိုေရးတဲ့ကုဒ္ေတြကလဲ
တကယ့္ကိုမ်ားလွပါတယ္။Kernel ရဲ႕အဓိက တာ၀န္ကေတာ့ Hardware နဲ႔ Software
တို႔ၾကားမွာ ႏွစ္ဖက္ၫႊန္ၾကားခ်က္ေတြကို နားလည္ေအာင္လုပ္ကိုင္ေပးဖို႔ပါပဲ။

Software တစ္ခုက ဘယ္လိုအလုပ္မ်ိဳးကိုမဆို Hardware ကိုလုပ္ေစခ်င္တဲ့
အခါက်ရင္ Hardware ကိုတိုက္႐ိုက္ အမိန္႔မေပးပဲနဲ႔ Kernel ကို
ညႊန္ၾကားခ်က္ အရင္လွမ္းပို႔ပါတယ္။ ဒီေနရာမွာ အလုပ္ဆိုတာက ဖုန္းက
လုပ္ႏိုင္တဲ့အလုပ္အားလံုးကိုရည္ၫႊန္းပါတယ္။ ဖုန္း Screen
အလင္းေရာင္ခ်ိန္တာတို႔
အသံ အနိမ္႔အျမင့္ခ်ိန္တာတို႔
Radio ကိုခ်ိတ္ဆက္ၿပီး ဖုန္းေခၚဆိုတာတို႔
ဖုန္းမ်က္ႏွာျပင္မွာပုံဆြဲတာတို႔
စသျဖင့္ အလုပ္မွန္သမွ်ကို Software က လုပ္လိုတဲ့အခါက်ရင္ Hardware
ကိုတိုက္႐ိုက္ မခိုင္းပဲ Kernel ကိုလွမ္းခိုင္းလိုက္ပါတယ္။ အဲဒီအခါမွာ
Kernel ကတဆင့္ 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 ဆီကို
Request ေတြအလြယ္တကူပို႔ႏိုင္ၿပီး 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 မ်ားေျပာင္းလဲျခင္း
restore န႔ဲ 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 ကိုဆိုလိုပါတယ္၊ Windows computer ေတြမွာသံုးတဲ့ windows 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 Memory ေ႐ွ႕ကထုတ္ခဲ့တဲ့ ဖုန္းေတြမွာေတာ့ Firmware က ROM
ထဲမွာရွိတယ္ဆိုတာမွန္ပါတယ္။ ဒါေပမယ့္ ယေန႔ အသံုးျပဳေနတဲ့ဖုန္းေတြမွာေတာ့
Firmware ကို ROM မထည့္ေတာ့ပါဘူး၊ Firmware ကို ဖုန္းရဲ႕ internal flash
memory ထဲမွာထည့္ထားပါတယ္။ internal flash memory က Read Only မဟုတ္ဘူး။
ဒါ့ေၾကာင့္ firmware အသစ္တစ္ခုကို flash လုပ္လို႔ရတာေပါ့။

Flashing ဆိုတာဘာလဲ

Flashing လုပ္တယ္ဆိုတာက Electronic 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 သံုး ပစၥည္းထုတ္လုပ္တဲ့ကုမၸဏီေတြက
ကန္႔သတ္ထားတဲ့ ကန္႔သတ္ခ်က္ေတြကို ခ်ိဳးဖ်က္ၿပီး software ကိုအကန္႔အသတ္
မရွိအသံုးျပဳျခင္းပါပဲ။ ဒီလို 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 ဆိုတာကေတာ့ ဖုန္းေတြမွာသံုးတဲ့ Radio ကိုဆိုလိုပါတယ္။ ဖုန္း
Version နဲ႔ ထုတ္လုပ္တဲ့ကုမၸဏီလိုက္ Radio Version ေတြလဲကြာပါတယ္။
Radio File ေတြကို Recovery tools ေတြကေန Flash လုပ္ႏိုင္သလို ADB/ODIN
တို႔ကလဲ Flash လုပ္ႏိုင္ပါတယ္။ Radio (သို႔) Modem နဲ႔ ROM Version တို႔
ကိုက္ညီမွဳမရွိရင္ေတာ့ MMS, 3G data, VM နဲ႔ Network ျပႆနာတက္ႏိုင္ပါတယ္။
ဒါေၾကာင့္အသံုးျပဳေနတဲ့ ROM နဲ႔ကိုက္ညီတဲ့ Radio (သို႔)
Modem ကိုေရြးခ်ယ္ႏိုင္ဖို႔လိုသလို ဖုန္းနဲ႔ ကိုက္ညီတဲ့ network နဲ႔
bandwidth တို႔ကိုလဲေရြးခ်ယ္ႏိုင္ဖို႔လိုအပ္ပါတယ္။
 

Radio 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 လုပ္ၾကပါတယ္။


 

 
ေက်းဇူးျပဳ၍

ဒီပို႔စ္ကို BrighterMyanmar အဖြဲ႕မွ ေရးတာျဖစ္ၿပီး အကယ္၍ ပို႔စ္မွာအမွား
ပါေနတာေတြ႕ရင္ ေက်းဇူးျပဳၿပီး brightermyanmar@gmail.com ကို
အေၾကာင္းၾကားေပးပါခင္ဗ်ာ။
ကြ်န္ေတာ္တို႔ေသခ်ာျပန္စိစစ္ပီးျပင္ေပးပါ့မယ္။

Credit to  BrighterMyanmar


ကိုမိုးစက္

No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...