Bab 2 Landasan Teori
2.9 I/O Scheduler
I/O Scheduler adalah suatu kemampuan kernel dalam mengontrol pengaksesan terhadap penyimpanan data. Tujuan utamanya adalah mengecilkan latensi pencarian data pada media penyimpanan, prioritas permintaan I/O dari proses yang berjalan, mengalokasikan jumlah ruang penyimpanan untuk setiap proses yang berjalan, dan menjamin setiap permintaan penggunaan media penyimpanan data terpenuhi secara keseluruhan sebelum batas waktunya habis. (Governor, Tweaks. 2012. forum.xda-developers.com/showthread.php?t=1369817)
Terdapat beberapa I/O scheduler yang digunakan beberapa pihak pengembang, yaitu : 1. Noop 2. Deadline 3. CFQ 4. DFQ 5. SIO 6. VR/V(R) 7. Anticipatory 2.9.1 Noop Scheduler
Memasukkan semua permintaan I/O yang datang dan mengaturnya sesuai dengan logika “First In First Out” dan menerapkan permintaan yang digabungkan sekaligus. Sangat cocok digunakan untuk media penyimpanan yang tidak tergantung kepada perpindahan fisik untuk mengakses data seperti flash memori.
Keuntungan yang didapat adalah flash drive tidak membutuhkan penyortiran terhadap beberapa permintaan I/O seperti pada hardisk.
Keuntungan:
Melayani permintaan I/O dengan nomor cpu cycles yang lebih sedikit.
Sangat bagus untuk penyimpanan kilat.
Baik digunakan untuk pusat data sistem. Kekurangan:
Pengurangan nomor cpucycles mengakibatkan penurunan kinerja.
2.9.2 Deadline Scheduler
Tujuan utamanya adalah mengecilkan jarak pelayanan terhadap permintaan I/O. Hal ini sama dengan aturan Round Robin yang sangat cocok digunakan untuk melayani permintaan I/O yang banyak. Five queues sangat agresif dalam mengatur ulang urutan permintaan I/O yang akan dilayani.
Keuntungan:
Mendekati penjadwalan yang real time.
Baik untuk mengurangi latensi setiap permintaan I/O tunggal yang diberikan.
Scheduler terbaik untuk pemakaian pada basis data.
Jumlah ruang yang diperlukan oleh proses dapat dengan mudah dihitung.
Sangat baik digunakan pada memori kilat. Kekurangan:
Ketika sistem kelebihan beban kerja, tidak dapat diprediksi banyaknya proses yang mungkin dilewatkan oleh Deadline scheduler.
2.9.3 CFQ (Completely Fair Queuing)
CFQ scheduler mengatur skala antrian I/O setiap per-proses dan mendistribusikan ruang I/O yang tersedia secara rata kepada setiap permintaan I/O. Setiap per- proses mengandung permintaan sinkronisasi dari proses. setiap jarak waktu dialokasikan untuk setiap antrian tergantung priritas dari proses utama. Versi kedua dari CFQ mempunyai beberapa penyempurnaan terhadap penanganan proses I/O starvation dan beberapa backward seeks yang kecil dengan harapan lebih responif.
Keuntungan:
Mengatur keseimbangan terhadap kemampuan I/O.
Lebih mudah untuk disesuaikan.
Baik untuk sistem yang menggunakan lebih dari satu prosesor atau prosesor berinti banyak.
Kemampuan basis data sistem yang baik. Kekurangan:
Beberapa pengguna melaporkan sistem membutuhkan waktu yang lebih lama melakukan pengenalan media penyimpanan.
2.9.4 BFQ
Jika pada CFQ yang terjadi adalah pemotongan waktu pemakaian, maka BFQ adalah pemotongan yang terjadi pada kapasitas yang dijinkan. Media penyimpanan diijinkan untuk mengaktifkan proses selama kapasitas nya (banyaknya sector) belum habis terpakai. Kapasitas menetapkan berbagai proses
sebagai suatu fungsi. Keuntungan:
Sangat baik untuk transfer data menggunakan.
Diyakini sebagai scheduler terbaik untuk media penyimpanan rekaman video HD dan video langsung (streaming).
Beberapa pengembang menetapkan sebagai I/O scheduler terbaik.. Kekurangan:
Sangat tidak cocok digunakan pada saat mencari nilai benchmark.
Semakin tinggi kapasitas yang menangani proses dapat menyebabkan meningkatnya latensi pada disk.
2.9.5 SIO
Sebuah I/O scheduler sederhana yang bertujuan untuk menjaga latensi pada kondisi paling minimum ketika melayani berbagai permintaan I/O. Tidak ada konsep prioritas antrian, hanya sebuah penggabungan dasar. Sio merupakan sebuah campuran I/O antara noop dan deadline. Tidak ada pengaturan ulang permintaan ataupun pemilihan permintaan proses.
Keuntungan:
Sederhana.
Mengecilkan kemungkinan adanya permintaan yang tertunda. Kekurangan:
Sangat lambat dalam kecepatan pembacaan memori kilat, dibandingkan dengan schedulers lainnya.
Kecepatan pembacaan segmen pada memori kilat juga tidak begitu bagus.
2.9.6 V(R)
Tidak seperti scheduler lainnya, penyelerasan dan pemisahan permintaan tidak dilayani terpisah, melainkan digabungkan untuk mendapatkan sebuah kondisi yang adil bagi setiap proses. Permintaan selanjutnya dilayani berdasarkan jarak dari permintaan terakhir.
Keuntungan:
Mungkin merupakan sebuah scheduler terbaik untuk mendapatkan nilai benchmark yang tinggi.
Kekurangan:
Tidak stabilnya kinerja I/O.
2.9.7 Anticipatory
Didasarkan pada 2 fakta yaitu : i) Disk terlihat bekerja sangat lambat.
ii) Operasi penulisan dapat terjadi kapan saja, tetapi selalu terdapat beberapa proses yang menunggu untuk proses pembacaan.
Jadi, untuk mengantisipasi adanya sebuah proses overwrite maka dibuat suatu penyelarasan operasi pembacaan.
Keuntungan:
Permintaan proses pembacaan tidak pernah menunggu terlalu lama.
Memiliki kemampuan pembacaan memori kilat yang baik seperti halnya pada Noop scheduler.
Kekurangan:
Mengurangi kemampuan penulisan pada media penyimpanan yang memiliki kecepatan tinggi.
(Governor, Tweaks. 2012.forum.xda-developers.com/showthread.php?t=1369817)
2.10 Overclock
Overclock adalah istilah teknologi informasi yang mengacu kepada cara untuk membuat suatu perangkat untuk berjalan di kecepatan yang lebih tinggi daripada ketentuan pembuat perangkat tersebut. Prinsipnya adalah membuat kinerja lebih tinggi. Tetapi perlakuan ini beresiko menyebabkan kestabilan sistem yang berkurang sampai rusaknya periferal yang di overclock. (Ciu Bun Seng. 2011)
Overclock memiliki batasan tertentu tergantung dari jenis hardware yang digunkan. Bahkan, walaupun memiliki vendor yang sama akan tetapi batasan overclock dari suatu smartphone berbeda.
Pada kondisi yang tidak stabil, overclock dapat menyebabkan sistem menjadi tidak stabil, mulai dari hardware hingga software, jika pada hardware dapat menyebabkan adanya efek kenaikan suhu dan pemborosan sumber daya, sementara pada software , dapat menyebabkan jalur data menjadi tidak lancar.
Pada PC, overclock pada CPU biasanya dapat dilakukan baik melalui BIOS maupun software tertentu. Sedangkan pada android overclock CPU dapat dilakukan dalam 2 cara, yaitu melalui kernel dan menggunakan aplikasi.
2.11 Clockworkmod Recovery
ClockworkMod Recovery (CWM) adalah sebuah recovery pengganti pilihan untuk sebuah perangkat android, dibuat oleh Koushik “Koush” Dutta. CWM merupakan pengembangan dari recovery bawaan android versi 2.1 (Eclair). Kmemapuannya meliputi Nandroid backup, adb shell, advanced update.zip dan file browser untuk pilihan paket zip. (Google. 2013. developer.android.com/guide/index.html)
Aplikasi bernama ROM manager dapat digunakan untuk pemasangan CWM, melakukan penggantian langsung terhadap recovery bawaan. Seperti recovery bawaan CWM bisa digunakan untuk melakukan pembaharuan perangkat lunak perangkat. Tidak seperti recovery bawaan, CWM mempunya kemampuan untuk mengganti seluruh sitem operasi android termasuk ROM pengembang pihak ketiga.
Ketika telah terpasang, CWM dapat di akses dengan mematikan perangkat terlebih dahulu, kemudian menginterupsi bootloader dengan menekan beberapa kombinasi tombol. CWM juga dikenal dengan nama clock recovery.