Manajemen RAM di Android / Linux

Standard

Banyaknya user yang awam tentang linux/android dan menyamakan persepsi salah yang mereka tahu dengan sistem operasi windows. perlu diingat, Android based on Linux, bukan windows… cara kerja, pengaturan, serta manajemennya juga berbeda karena berbeda sistem operasi

Tiga hal yang perlu diingat

  1. Android/Linux itu semua tentang efisiensi..
  2. Android mengganggap RAM itu adalah Sumber daya (Resource) yang harus digunakan
  3. Android memiliki AutoKiller Saat Low memory atau LMK

Konsep pemakaian memori Linux adalah semua tentang efisiensi. RAM adalah sumber daya yang harus digunakan, 100% jika memungkinkan, sepanjang waktu (jika memungkinkan).

Linux menggunakan RAM yang tidak digunakan untuk cache data dan filesystem meta-data dari perangkat penyimpanan lambat (Flash atau disk) karena mengambil informasi dari RAM jauh lebih cepat: Tidak ada hambatan (bottleneck) seperti media fisik lambat, slow buses or device clocks, dan tidak memerlukan dekompresi.

dekompresi : tiap aplikasi di android itu adalah compiled java within compressed zip.
jadi apk harus di dekompresi, sebelum aplikasi siap untuk di ekseskusi

 

LOGIKA KERJA RAM ANDROID/LINUX

Ram : meja kerja
CPU : pegawai
isi ram : barang-barang

Seorang pegawai (CPU), dia kerjanya mengatur, pendataan, stempel, dan tanda tangan…

mana yang lebih baik??
A. meja kerja pegawai tsb diisi penuh oleh barang2 yang sering dia pakai, kaya pulpen, scanner, printer, stempel, agar dia semakin cepat mengerjakan kerjaannya, semakin besar meja (RAM), semakin baik kerjanya.. atau..

B. meja kerjanya kosong, dan dia harus ambil pulpen ke tempat pengadaan pulpen, mau scan harus ke scanner di ujung kantor, mau nge-print harus jalan dulu ke printer

no.1 adalah cara Android/Linux bekerja
balik ke tulisan atas : Linux/Android itu semua tentang efisiensi..
Android menganggap RAM itu resource yang harus digunakan, 100% klo emang bisa..

HUBUNGAN RAM BATTERY

RAM usage tidak mempengaruhi battery

    1. Mengisi RAM itu diatur oleh Memory Controller BUKAN CPU/APU
    2. apapun yang di store di memory, digunakan atau tidak, tidak mengaktifkan CPU/APU, tapi oleh memory controller chip.
    3. Semakin sedikit FREE RAM di android semakin cepat, karena semua resource yg ada sudah tersedia di RAM, jadi tinggal panggil address resource di ram, tidak perlu mencari lalu me-load frameworks/bitmap/vector/content

The amount of data you hold in memory doesn’t influence the battery life as the complete memory has to be refreshed all the time, whether you store something there or not (the memory controller doesn’t know whether a part is “unused”).

LOGIKA :

Ram : meja kerja
CPU : pegawai
Isi ram : barang-barang
Sekretaris : Memory Controller

karena sekretaris tau apa yang sering pegawai pakai, oleh sekretaris meja kerja diisi barang2 yang sering digunakan.. pegawainya (cpu) ya tinggal pakai aja

LMK

Android sendiri sudah memiliki LMK (Low Memory Killer) untuk mengatur kebutuhan memory Di dalam LMK ini ada 6 pembagian untuk pengaturan task killer, yaitu:

  • FOREGROUND_APP : Aplikasi yang ada aktif dilayar saat ini
  • VISIBLE_APP : Aplikasi yang hidup dan berjalan di background karena masih melakukan sesuatu
  • SECONDARY_SERVER : sebuah proses/service yg dibutuhkan aplikasi yang sedang berjalan
  • HIDDEN_APP : is a process, that sits idle (but still alive) in case it’s needed by an app that’s alive and running. For the most part, we never want to adjust when these apps and processes are killed off.
  • CONTENT_PROVIDER : This is apps that provide data (content) to the system. HTC Facebook Sync? That’s a CONTENT_PROVIDER. So are things like the Android Market, or Fring. If they are alive, they can refresh and provide the content they are supposed to at the set interval. If you kill them, they can’t of course.
  • EMPTY_APP : I call these “ghosts.” They are apps that you have opened, but are done with them. Android uses a unique style of handling memory management. When an activity is ended, instead of killing it off Android keeps the application in memory so that opening them again is a faster process. Theses “ghost” apps use no battery or CPU time, they just fill RAM that would be otherwise empty. When this memory is needed by a different application or process, the RAM is flushed and made available for the new app. To satisfy the geekier people (like myself) Android does this by keeping a list of recently used apps, with the oldest apps in the list given the lowest priority — they are killed first if RAM is needed elsewhere. This is a perfect way to handle ‘ghost’ processes, so there’s no need to touch this part

walaupun sudah diatur oleh system, tapi kita bisa mengaturnya sendiri…
Setiap Handset mempunyai setting LMK yg berbeda-beda..

NOTES FROM ABANGKIS @id-android

Setiap service/app bisa dimatikan oleh android jika di rasakan perlu. Misalnya jika sistem merasa kekurangan memory maka service tersebut dimatikan berdasarkan skala prioritas yg ada. Ketika proses yg meminta memory banyak telah selesai. Maka system pun yg bertanggung jawab utk menyalakan servis itu kembali.

MENGAPA ANDROID TIDAK MEMBUTUHKAN TASK KILLER?

  • Kebanyakan Aplikasi akan keluar dengan sendirinya apabila user menekan tombol “back”
  • Jika menekan Home, Android will eventually kill it once it’s been in the background for a while.
  • Android secara otomatis mematikan task/proses ketika membutuhkan memory
  • Android secara otomatis mematikan task/proses ketika task/proses itu sudah selesai dilakukan
  • Android secara otomatis mematikan task/proses ketika user tidak menggunakannya dalam waktu lama
  • Hampir semua services yang berjalan di background menggunakan sedikit memory ketika aktif tapi tidak melakukan sesuatu.
  • Mematikan paksa aplikasi/task/proses memiliki efek samping yang tidak baik untuk system, karena CPU akan aktif untuk mengaktikan kembali task/proses yang dibutuhkan, dan memulai serangkaian proses untuk mengecek proses yang dibutuhkan.

What You Should Do: Let Android handle tasks itself.

Don’t install programs like Advanced Task Killer to auto-kill apps.
Use ATK only when you need to kill an app that is misbehaving.

dirangkum dari berbagai sumber

1. http://www.rt-embedded.com/blog/archives/linux-memory-consumption/
2. http://www.howtogeek.com/127388/htg-explains-why-you-shouldnt-use-a-task-killer-on-android/
3. http://forum.xda-developers.com/showthread.php?p=31056275
4. google.com

6 thoughts on “Manajemen RAM di Android / Linux

  1. Kurosudiro

    Yg saya rasain slama make linux, mending invest buat upgrade(nambah) ram drpd upgrade kecepatan procie

  2. Rian

    selama ini agan rendy nulis apliaksi greefy bagus buat android. kalo gak salah greefy itu hampir sama fungsinya dengan task killer aplikasi. jadi gimana baiknya, apa harus pasang greefy atau tidak menurut agan rendy ??

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s