Senin, 31 Oktober 2011

XML - RPC

Perkenalan

Pengembangan perangkat lunak adalah sebuah proses yang bisa jadi mahal dan memakan banyak waktu. Banyak riset telah dilakukan untuk mengurangi biaya proses pengembangan sekaligus meningkatkan kualitas dari perangkat lunak yang dihasilkan. Hal ini tidak bisa dilepaskan pula dari kemungkinan pengembangan perangkat lunak tersebut dalam perluasan sistem informasi tiap saat dibutuhkan. 
Internet yang berkembang begitu pesat dalam satu dekade terakhir, tidak bisa lagi ditinggalkan sebagai faktor yang sangat perlu diperhitungkan dalam perencanaan pengembangan aplikasi dalam lingkungan komputasi terdistribusi. Kebutuhan ini diadopsi oleh semua organisasi untuk meluaskan kebutuhan internalnya dengan tambang informasi yang tersedia di internet, baik sebagai sarana publikasi maupun kolaborasi kerja antar lingkungan dan platform berskala world wide.

Kebutuhan akan pemanfaatan informasi melalui internet, membuat arus pertukaran informasi melalui internet menigkat pesat. Di atas tcp/ip, sudah berjalan begitu banyak aplikasi dan pertukaran informasi. Ini membuat kebutuhan akan ketersediaan bandwidth menjadi sangat tinggi. Perkembangan perangkat lunak pun tidak bisa dilepaskan dari kebutuhan akan hal tersebut. Dalam komputasi lingkungan terdistribusi berskala luas, yang dicari adalah pemanfaatan bandwidth seefisien mungkin, karena ketersediaan infrastruktur internet tidak berjalan sepesat kebutuhan akan ruang pertukaran informasi.

World Wide Web adalah salah satu ruang pilihan tersebut. Maka pengembangan perangkat lunak yang diarahkan pada pemanfaatan halaman web semakin tinggi. Halaman web, sudah mengalami perubahan drastis dari hanya media publikasi statis, menjadi aplikasi yang jauh lebih kompleks. Pengembangan perangkat lunak untuk kebutuhan ini difokuskan pada pengembangan standar metode pertukaran informasi dan format data, untuk memudahkan komunikasi antar beragam sistem yang berbeda lingkungan dan platform pengembangannya.

Webservice dan Sistem Terdistribusi

Webservice adalah proses dan set protokol untuk menemukan dan menghubungkan sebuah sistem dengan perangkat lunak yang diekspose sebagai services melalui web. Web Services dapat berupa apa saja, mulai dari movie review, informasi bursa, nama dan isi cd musik sampai layanan pemesanan hotel dan penerbangan. Infrastruktur teknis Webservice memastikan bahwa layanan-layanan dari vendor-vendor yang berbeda.

Web services mengambil bentuk dari visi object-oriented. Object-oriented merakit perangkat lunak dari komponen-komponen menjadi satu kesatuan aplikasi untuk output yang telah ditetapkan dari aplikasi tersebut. Web services menyatukan berbagai layanan dalam bangunan blok yang loosely coupled. Ada tiga aspek utama pada web services yaitu:

  1. Service provider, yaitu penyedia antarmuka yang dapat membawakan seperangkat task tertentu.
  2. Service requester, uaitu bagian yang mencari dan memanggil software service yang menyediakan layanan bisnis tertentu. Requester ini akan mememanggil remote procedure call tertentu, mengirimkan data dan menerima hasilnya.
  3. Broker, yaitu bagian yang mengatur dan mempublikasikan services. Semua permintaan layanan akan melalui broker yang terikat dengan sebuah penyedia layanan tertentu.
XML digunakan untuk mengkodekan seluruh komunikasi ke Webservice. Jadi request dikirimkan dalam bentuk XML message dan diterima dalam bentuk XML response. Oleh karena itu Web services tidak terikat pada satu sistem operasi atau bahasa pemrograman tertentu. Java di Windows dapat berbicara dengan Perl di linux yang terhubung dengan Java di Solaris.
Protocol Stack adalah sekumpulan protokol yang digunakan untuk mendefinisikan, menemukan dan mengimplementasikan Web Services. Di dalamnya terdiri dari empat layer:

  1. Services Transport: Lapis ini berfungsi untuk mengirimkan message antar aplikasi. Saat ini, yang digunakan adalah HTTP, SMTP, FTP dan protokol-protokol yang lebih baru lainnnya seperti Blocks Extensible Exchange Protocol (BEEP).
  2. XML Messaging: Lapis ini berfungsi untuk mengkodekan messages dalam format umum XML sehingga messages tersebut bisa dimengerti penerimanya. Dalam hal ini adalah XML-RPC dan SOAP.
  3. Service Description: Lapis ini berfungsi untuk mendeskripsikan antarmuka publik ke Web services tertentu. Hal ini dilakukan melalui WSDL (Web Services Definisition Language).
  4. Service Discovery:Lapis ini berfungsi untuk memusatkan layanan ke bentuk yang tersusun dan menyediakan cara mudah untuk mempublikasikan dan fungsionalitas untuk menemukannya. Saat ini service ini dilakukan dengan UDDI (Universal Description, Discovery and Integration).
Fenomena yang paling utama dari ide tentang Web Services adalah : terdesentralisasi, loosely coupled dan synergistic (membawa sinergi dari semua kelebihan web) dengan kebutuhan akan adanya sistem yang lebih reseptif dan adaptif terhadap perkembangan industri.
Komunikasi antar sistem membutuhkan sebuah set standar yang berjalan di atas protokol yang dominan dipakai saat ini. Hal itu termasuk kebutuhan untuk menjalankan proses maupun prosedur pada sistem yang berbeda dalam lingkungan distribusi yang beragam dan kompleks. Di antara standar-standar komunikasi yang banyak dibicarakan adalah CORBA (Common Object Request Broker Architecture), DCOM (Distributed Common Object Model), XML-RPC (eXtensible Markup Language-Remote Procedure Call) dan SOAP (Simple Object Application Protocol).

soap-xmlrpcXML-Remote Procedure Call dan Simple Object Access Protocol (SOAP) adalah protokol-protokol berbasis XML. Keduanya adalah teknologi webservice yang dihasilkan dari perkembangan lanjutan dari XML. Jadi keduanya secara literal merupakan kombinasi dari Web dan HTTP yang membuka kemungkinan baru pertukaran data antar lingkungan yang terhubung dalam jaringan. SOAP adalah perspektif middleware pertukaran data terdistribusi dan interaksi yang loosely coupled (tak terikat erat).

SOAP saat ini merupakan rekomendasi World Wide Web Consortium (W3C). XML-RPC adalah spesifikasi final yang lebih sederhana dan mudah diimplementasikan dibanding SOAP. Secara fundamental perubahan yang dibawa oleh kedua adalah kemampuan untuk memindahkan data kemana pun melalui web. Sebelumnya hal itu hanya mampu ditangani oleh Electronic Data Interchange (EDI). ediEDI mendefiniskan message dan protocol yang digunakan untuk pertukaran data melalu jaringan. Tapi hal ini mengunci jaringan-jaringan yang tergabung pada satu standar tertentu, dan membuat mahal implementasi pada jaringan baru yang akan digabungkan.

Pendekatan berikutnya adalah membangun infrastruktur obyek terdistribusi (distributed object infrastructure) yang berjalan diatas internet. Ada beberapa standar yang kita kenal, yaitu: Common Object Request Broker Architecture (CORBA), Remote Method Invocation (RMI) dan Distributed Component Object Model (DCOM). Masing-masing memilih protokol sendiri yang berjalan diatas TCP/IP untuk menangani komunikasi antar obyek-obyeknya. Yang sangat populer dan sering dipertentangkan sebagai standar adalah DCOM dan CORBA. DCOM merupakan teknologi lanjutan dari Component Object Model (COM) dari Microsoft. COM menjadi dasar komunikasi antar proses obyek-obyek pada sistem operasi keluarga Windows. Sementara CORBA menjadi dasar penting komunikasi antar proses obyek-obyek pada sistem operasi jaringan non-Windows dan Java.

corbaCORBA menggunakan Internet Inter-ORB Protocol (IIOP), sementara DCOM menggunakan Object Remote Procedure Call (ORPC) dan RMI menggunakan Java Remote Method Protocol(JRMP). Pendekatan ini berjalan bagus pada lingkungan masing-masing, memecahkan masalah bahasa dan sebagian lingkungan pengembangan, tapi meninggalkan kesulitan pada komunikasi antar mereka. Artinya CORBA hanya mampu berbicara dengan sistem lain yang yang dibangun dengan standar CORBA, demikian juga berlaku pada DCOM dan RMI. Untuk saling berbicara, maka sistem yang heterogen harus ditambahkan layer ekstra pada arsitektur yang sudah begitu kompleks tersebut.

   Jika kita membangun sistem berbasis aplikasi yang secara alamiah menggunakan COM dan Active Server PAGES (ASP), sistem tersebut hanya mampu berbicara dengan sistem lain yang menggunakan standar COM juga, dalam hal ini keluarga Windows. COM ini menjadi DCOM pada server-server windows yang saling berbicara mengkomunikasikan proses-proses yang berjalan dalam sistem mereka. Jikalau memungkinkan dibangun aplikasi menggunakan ASP di lingkungan UNIX/Linux maka obyek-obyek yang bekerja akan menggunakan standar CORBA yang tidak bisa berbicara dengan COM di Windows kecuali dibangun antarmuka sebagai lapisan ekstranya.

Padahal pada teknologi ini sebenarnya selain semestinya mendukung interoperabilitas antar obyek-obyek yang sudah dibuat juga komunikasi antar obyek untuk kepentingan pertukaran data.

XML-RPC dan SOAP dibangun dengan mengkombinasikan kemampuan data XML dan kemampuan transpor HTTP, yang dengan demikian memecahkan masalah EDI dan sistem obyek terdistribusi seperti CORBA, COM dan RMI.

XML-RPC dan SOAP dikerjakan dengan mengubah sekumpulan parameter (skalar, string, tanggal, array, record, data biner) ke transmisi XML. XML-RPC didefinisikan beroperasi diatas koneksi HTTP, sementara SOAP mendeskripsikan format amplop-nya untuk RPC request yang bisa dikirimkan melalu HTTP, SMTP, FTP atau beberapa protokol TCP/IP lainnya. XML-RPC melewatkan parameternya dengan posisi sementara SOAP melewatkan paramaternya dengan nama.

Keduanya mampu melewatkan data biner dengan menggunakan pengkodean Base-64 . Yang jelas dalam hal ini XML-RPC lebih mudah diimplementasikan meskipun tidak memiliki fitur sebanyak yang dimiliki SOAP.

Salah satu kebutuhan tambahan dalam implementasi di antara cara-cara diatas, adalah kemudahan dan pemanfaatan standar pertukaran data antar beragam sistem diatas protokol HTTP, yaitu XML. Format XML paling memungkinkan komunikasi antar proses pengolahan data pada sistem yang berbeda dengan format yang mampu menampung parameter sekaligus metode bagaimana parameter tersebut harus diproses. Procedure Call adalah pemanggilan procedure yang berada pada remote environment, untuk menjalan proses dengan parameter yang dikirimkan pemanggil agar memberikan respon yang diinginkan atas sebuah rangkaian proses komputasi.

XML adalah format yang paling mudah dimengerti oleh manusia dan komputer, dengan keleluasaanya mengatur struktur data dan bahasa yang pendefinisiannya lebih mudah. SOAP dan XML-RPC adalah dua metode yang memanfaatkan XML untuk format pengiriman parameter dan pemanggilan procedure dalam internal sebuah sistem maupun remote system.

XMLRPC


XML-RPC adalah pemanggilan prosedur jarak jauh melalui HTTP dengan menggunakan XML sebagai cara pengkodeannya. XML-RPC adalah salah satu metode komputasi terdistribusi, webservice yang paling sederhana, dan implementasinya sudah digunakan secara luas, dalam berbagai bahasa pemrograman dan platform.

Message XML-RPC adalah sebuah HTTP-POST request. Isi (body) dari request tersebut berupa XML procedure yang dieksekusi di server dan nilai hasil eksekusi dikembalikan dalam bentuk XML juga.

XML-RPC menyerahkan kerumitan yang harus dipikirkan bagaimana message dikirimkan antar server atau obyek-obyek yang berinteraksi dalam lingkungan terdistribusi, kepada HTTP. Fokus utamanya adalah apa yang akan disampaikan bukan bagaimana menyampaikan pesan. Contoh request XML-RPC adalah sebagai berikut:

POST /PC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT)
Host: betty.userland.com
Content-Type:text/xml
Content-length: 181

<?xml version='1.0'?>
<methodCall>
<methodName>examples.getStateName</methodName>
<params>
<param>
<value><i4>41</i4></value>
</param>
</params>
<methodCall>


 XML-RPC awalnya dikerjakan oleh Dave Winner dari Userland (kemudian menjadi salah satu kontributor SOAP, sebagai teknologi lanjutan yang diperluas dari XML-RPC). Masalah klasik yang mesti dipecahkannya mula-mula adalah bagaimana membuat perangkat lunak yang bisa berjalan di lingkungan yang berbeda saling berbicara. Komunikasi lintas-platform ini didemonstrasikan Winner dengan meletakkan perintah-perintah remote procedure pada body HTTP POST.Selanjutnya hanya diperlukan kosakata XML yang mendefinisikan nama-nama potongan kode perintah jarak jauh dan paramater-parameter yang diperlukannya.

Elemen XML pada XML-RPC dengan sederhana mendefinsikan kosakata untuk menyampaikan informasi prosedur-prosedur mana yang akan dieksekusi pada remote-server. Ketika server menerima message XML-RPC dari HTTP POST request, dokumen XML-nya akan digunakan untuk memicu sebuah remote-procedure dan hasilnya dikirimkan balik pada pengirimnya sebagai XML juga.

Dengan semangat pakai-ulang (reusability), XML-RPC menggunakan tipe data XMLSchema untuk paramater dan prosedur yang akan dipanggilnya. Berikut ini adalah daftar tipe dataskalar untuk parameter XML-RPC dan nilai-nilainya.
Tipe Parameter Skalar untuk XML-RPC
Tag
Tipe
Contoh
<i4> atau <int>
four-byte signed integer
-897
<boolean>
0 (false) atau 1 (true)
1
<string>
ASCII string
blaaah
<double>
double precission signed
floating point number
-78.23
<dateTime.iso8601>
date/time
20032224T20:01:01
<base64>
base64-encoded binary
7HYBsu76HT7HJ
Dengan begitu dokumen XML yang tersusun baik bisa dipindahkan dengan mudah menggunakan internet. Syaratnya cuma server yang sudah menjalankan HTTP service dan memiliki kemampuan menandai dokumen XML yang datang sekaligus mengenali dan menguraikan elemen-elemen-nya agar dapat mengeksekusi prosedur apapun yang dispesifikasikan dalam elemen metodeCall. XML-RPC mensyaratkan hal-hal sebagai berikut sebelum dapat digunakan:
  1. Dokumen XML harus tersusun baik dan mengandung stuktur tunggal elemen methodCall.
  2. Elemen methodCall harus mengandung sub-sub item methodName yang berisi string nama method mana yang bisa dipanggil.
  3. Kalau paramater diperlukan maka elemen methodCall harus mengandung parameter yang berisi individual elemen-elemen param, dan masing-masing mengandung nilai tunggal.
Bersambung...

Sumber : www.xmlrpc.org, beberapa buku dan majalah

    Kode Rahasia Samsung Android

    Factory Reset & Service Test Code
    * *#*#4636#*#* – Phone Information
    * *2767*3855# – Hard Reset
    * *#*#7780#*#* – Factory Reset
    * *#*#7594#*#* – Change End Call/Power Option
    * *#*#197328640#*#* – Service Mode
    * *#*#273283*255*663282*#*#* – File Copy Screen (Backup Media Files)
    * *#*#526#*#* – WLAN Test
    * *#*#232338#*#* – Shows WiFi MAC address
    * *#*#1472365#*#* – GPS Test
    * *#*#1575#*#* – Another GPS test
    * *#*#232331#*#* – Bluetooth test
    * *#*#232337#*# – Shows Bluetooth device address
    * *#*#8255#*#* – GTalk Service Monitor

    Test Mode Code
    * *#*#0283#*#* – Packet Loopback
    * *#*#0*#*#* – LCD test
    * *#*#0673#*#* – Melody test
    * *#*#0842#*#* – Device test (Vibration test and BackLight test)
    * *#*#2663#*#* – Touch screen version
    * *#*#2664#*#* – Touch screen test
    * *#*#0588#*#* – Proximity sensor test
    * *#*#3264#*#* – RAM version

    ADROID



    Apa itu ANDROID ?

    Android sebenarnya adalah nama sebuah perusahaan kecil (android.inc) di California, perusahaan tersebut bergerak khusus di bidang software berbasis piranti bergerak, dan pada saat itu pihak google sedang berencana mengembangkan usaha nya di bidang ponsel,dan akhirnya google memutuskan untuk akuisisi perusahan android.inc untuk bergabung dan mengembangkan sistem operasi berbasis linux pada ponsel, dan untuk membantu dalam proses pengembanganya google pun merangkul perusahan besar lainya dan membentuk open handset aliance yang terdiri dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola,Qualcomm, T-Mobile, dan Nvidia pada 5 november 2007, kemudian google mempublikasikan code android nya di bawah lisensi apache dan android resmi menjadi software opensource
    pada bulan september google mengajukan hak paten handphone pertamanya  yang bernama nexus one, handphone tersebut di produksi oleh perusahaan produsen selullar asal korea yang bernama htc, dan pada 22 oktober akhirnya handphone android pertama keluar (htc dream) yang di produksi oleh htc sendiri, kemudian di susul handphone resmi google nexus one pada tanggal 5 januari 2010
    ada hal yang menarik dari google, google selalu menamakan code name versi android nya dengan nama kue yang berurut berdasarkan abjad, (cupcake 1.5, donut 1.6, ecllair 2.0/2.1, frozen yougurt 2.2, ginger bread 3.x) selain itu google juga punya strategi unik dalam menggenjot dukungan terhadap android, google mengadakan kompetisi aplikasii android dengan mengiming imingi hadiah sebesar $25000 untuk setiap pemenang,baik individual maupun perusahaan, dan akan di pilih 50 pemenang tiap tahap nya. namun seiring nya waktu dan jumlah komunitas pengembang android yang meningkat maka perkembangan apilkasi android pun semakin pesat diluar perirkiraan. baik aplikasi yang tersedia di market maupun di luar market, dan dalam sekejap android menjadi booming.
    sebenar nya sistem oprasi android sendiri yang berbasis open source ini mempunyai dua jenis distribusi, vers gms (google mail service) yang merupakan sistem oprasi resmi dari google yang mempunyai dukungan penuh dari google, dan yang kedua adalah versi ohd (open handset distribution) yang merupakan sistem android yang di kembangkan oleh para komunitas yang ingin memodifikasi sistem oprasi android untuk pendistribusian nya sendiri. jadi di luar sana masih banyak android hasil modifikasi dan pengembangan para komunitas android, dan aplikasi aplikasi berbasis android lainya. hal ini tentu saja membuat konten android jauh berkembang pesat dan semakin kaya, sehingga bisa dengan cepat bersaing dengan para sainganya yang sudah terlebih dahulu muncul.

    Sumber : blumontego

    Apa Itu Root, Flash ,Custom Rom, & Kernel ?

    Custom ROM
    Sebenarnya orang sering bilang custom rom itu menurut saya sedikit membingungkan. rom itu sendiri kan = read only memory. Data2 yang ada di read only memory itu merupakan data2 sistem operasi. jd ketika orang menyebutkan custom rom, sebenarnya itu merupakan modified os untuk Android yang di develop oleh kalangan publik secara bebas. mengapa bisa begitu? ya karena android itu open source. sehingga setiap individu dapat dengan bebas memodifikasi sistem operasi android itu sendiri. DHD sudah banyak yang mendevelop os nya.

    Root
    Nah setelah itu kita coba mengenal root itu sendiri. Root itu semacam hak akses tertinggi di dalam sistem android. ketika kita pertama kali menggunakan handset android yg baru beli dari toko, kita belum mendapatkan hak akses tersebut. kalo di windows, istilahnya kita hanya sebagai guest, belum jadi administrator. nah apa gunanya kita melakukan root untuk mendapatkan hak akses tertinggi? ok begini, seandainya kita punya komputer baru. sudah kita instal windows. namun kita cuman bisa masuk dan mengakses sebagai guest saja. bagaimana rasanya? hal itu sama rasanya ketika menggunakan Android tanpa di-root. banyak aplikasi2 penting seperti titanium backup utk membackup data, shoot me & drocap untuk print screen halaman, setCPU untuk mengatur clock cpu, dll yang tidak dapat dijalankan. tentu rasanya kita ini dibatasi kan? padahal OS kita ini open source. jadi kalo Android ga di root, itu rasanya seperti bukan Android. hehe.. root itu merupakan gerbang awal dari “permainan” berikutnya. permainan di sini merupakan istilah saat kita flashing custom rom / OS, kita overclock cpu, ganti kernel bawaan, semuanya gerbangnya dari root itu. tanpa root, kita ga bisa melakukan hal2 tersebut.

    Kernel
    untuk kernel, kernel itu merupakan sistem inti yang menjadi jantung dari sistem operasi. operasi2 yang dijalankan oleh os, itu diproses oleh kernel. kernel di android juga bisa dimodifikasi. dan tentunya akan membawa keuntungan bagi sistem operasi atau custom romnya itu sendiri. biasanya, orang mendevelop kernel itu disesuaikan dengan custom rom nya. kita tidak bisa seenaknya mengganti kernel kita dengan kernel lain yang tidak direkomendasikan oleh pembuat custom rom. di saat kita memflashing custom rom pada handset android kita, di dalam custom rom itu sendiri sebenarnya sudah tersedia kernel. dan terkadang kernel tersebut sudah dimodifikasi. namun tidak semua handset menyediakan custom kernel. ada beberapa handset, yang bootloadernya dikunci oleh perusahaan handsetnya. sehingga kita cuman dapat mengganti OSnya, tanpa dapat mengganti kernelnya. untuk DHD, bootloadernya tidak dikunci, sehingga kita bebas flashing kernel.

    Flash OS & Kernel
    flashing os & kernel merupakan suatu cara memasukkan data sistem operasi atau menginstall sistem operasi & kernelnya di dalam handset android kita. hampir sama caranya dengan ketika kita menginstall ulang komputer. pertama kita masuk recovery mode. (recovery mode utk DHD tersedia ketika kita menyelesaikan tahap root sampai instalasi clockworkmod recovery.. baca tutorial saya sebelumnya) setelah itu kita hapus / wipe seluruh data sistem operasi yang lama. kita hapus cache memory dari sistem operasi yang lama. jadi intinya kita melakukan full wipe. setelah itu baru kita install os baru / custom rom. Di dalam clockworkmod recovery, semuanya telah tersedia. kita tinggal menggunakan saja. instalasi osnya itu yang dimaksud sebagai flashing.jadi kalo denger2 flashing, sebenarnya itu ya instalasi, namun dilakukan lewat recovery.
     
     Android Version

     
      
    Istilah Istilah ANDROID

    APK :
    Android Package, file2 dgn ekstensi .apk bisa digunakan untuk menginstall aplikasi di ponsel android. Seperti IPA di iPhone (buat pengguna iPhone),  SISdi Symbian s60 , atau JAR di BB (buat pengguna BB) dan java based devices lainnya
    BRICK(ed) :
    Ponsel sudah tidak bisa di-recover.
    adb :
    command buat ngejembatani perintah di android lewat komputer..kalo adb shell termasuk bagiannya..extensi command adb ada banyak , seperti adb push, adb pull, adb install dll…syarat adb bisa jalan = driver adb mesti sdh terpasang di pc.
    adb.exe:
    bisa di ambil dari sdk (dah include didlm android sdk)..ada di folder tools, untuk mengetahui fungsi command adb bisa dgn mengetik “adb help”
    adb shell logcat :
    buat mengetahui proses yg terjadi diandroid, berguna banget saat experiment flashing rom…
    IMAP :
    Internet Message Access Protocol, salah satu protocol untuk retreive email selain POP3
    POP3 :
    Post Office Protocol 3, salah satu protocol TCP/IP port 110 dalam menarik email
    Widget :
    salah satu aplikasi yang GUI nya lebih bersifat interaktif
    GUI :
    Graphical User Interface , interface aplikasi yang lebih bersifat graphic atau gambar ?
    GMS :
    Google Market Services, tempat download nya aplikasi2 di Android ( apps store di iphone atau appworld di BB)
    Root :
    super user di salah Operating Sistem (dalam hal ini Android)
    nge-root :
    proses untuk merubah privilage dari user biasa jadi root
    Apps2SD :
    Proses memindahkan/menyimpan aplikasi ke SDcard selain ke memori internal,
    AOSP :
    Android Open Source Project,
    Boot :
    Proses menghidupkan handheld,
    Bootloader :
    gabungan SPL dan IPL yg menjadi dasar dr sebuah device,
    Bootloader Mode – FASTBOOT load :
    Tombol Camera + Power, pada mode
    boot ini, kita bisa meng-install image sebuah sistem yang ada/ditaruh di SDcard dengan menekan tombol Power lagi,
    Cache2SD  :
    Proses memindahkan/menyimpan Cache dari ROM ke SDcard,
    Diagnostic Mode :
    Tombol Capture + Power. mode boot untuk test.
    Normal Mode :
    cara normal menghidupkan handheld,
    OTA :
    Over The Air, suatu metode pengiriminan data, biasanya istilah dipake pd aktifitas meng-update (download)
    Recovery Mode :
    Tombol Home + Power, pada mode boot ini, kita bisa
    membuka shell..mem-flash image..bikin Backup maupun Restore. Teken
    Safe Mode :
    Tombol Menu + Power, boot handheld secara normal tetapi tanpa registrasi dengan Google, makana aplikasi2 yg berhubungan dengannya tidak bakalan berfungsi ( Map, Gmail account, Market, dll)
    semoga bermanfaat…

    Sumber : Dari Berbagai Sumber