twitterfacebookgoogle pluslinkedinrss feedemail

Social Icons

Pages

Senin, 27 Oktober 2014

ROUND ROBIN

Penjadwalan Round Robin (RR)

Round robin adalah sebuah susunan yang memilih semua elemen pada grup seperti beberapa perintah rasional, biasanya dari atas sampai ke bawah sebuah daftar/susunan dan kembali lagi keatas dan begitu seterusnya. Dapat diandaikan bahwa round robin seperti mengambil giliran (“taking turns”).



Dalam cara kerja komputer, satu metode memiliki beberapa proses program yang berbeda dalam mengambil giliran, dengan menggunakan sumber daya komputer ke batas proses setiap jangka waktu pendek tertentu, kemudian membatalkan/menghentikan proses yang sedang berjalan kepada proses yang mendapat giliran berikutnya. Biasa diartikan sebagai  proses Penjadwalan Round Robin.



Dapat dianalogikan seperti turnamen olahraga, dimana round robin menyusun/mengatur semua tim atau para pemain mengambil/memainkan giliran mereka bermain. Yang akan menghasilkan pemenang dari turnamen yang telah diselenggarakan.



Pengertian lain Round Robin Merupakan :

· Penjadwalan yang paling tua, sederhana, adil,banyak digunakan algoritmanya  dan mudah diimplementasikan/diterapkan.

· Penjadwalan ini bukan dipreempt(diinterupsi) oleh proses lain tetapi oleh penjadwal  berdasarkan lama waktu berjalannya proses (preempt by time).

· Penjadwalan tanpa prioritas (pengutamaan).

·Dapat dikatakan bahwa semua proses memiliki kepentingan yang sama, sehingga tidak  ada prioritas tertentu.

Semua proses dianggap penting sehingga diberi sejumlah waktu oleh pemroses yang disebut kwanta (quantum) atau time slice dimana proses itu berjalan. Jika proses masih running sampai akhir quantum, maka CPU akan mempreempt proses itu dan memberikannya ke proses lain. Penjadwal membutuhkannya dengan memelihara daftar proses dari runnable. Tentu proses ini cukup adil karena tak ada proses yang diprioritaskan, semua proses mendapat jatah waktu yang sama dari CPU yaitu (1/n), dan tak akan menunggu lebih lama dari (n-1)q dengan q adalah lama 1 quantum.

Permasalahan utama pada Round Robin adalah menentukan besarnya time quantum. Jika time quantum yang ditentukan terlalu kecil, maka sebagian besar proses tidak akan selesai dalam 1 quantum dan akan banyak peralihan proses sehingga banyak waktu terbuang.  Hal ini tidak baik karena akan terjadi banyak switch, padahal CPU memerlukan waktu untuk beralih dari suatu proses ke proses lain (disebut dengan context switches time). Sebaliknya, jika time quantum terlalu besar, algoritma Round Robin akan berjalan seperti algoritma first come first served (siapa yang datang pertama, dialah yang dilayani). Time quantum yang ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 time quantum.



Ketika quantum habis untuk satu proses tertentu, maka proses tersebut akan diletakkan diakhir daftar (list), seperti nampak dalam gambar berikut ini :


                           
   

       

       



Proses Saat Ini
                   
           

   
                   













+---+     +---+     +---+     +---+     +---+                              +---+   +---+    +---+    +---+    +---+

 :  B  :--:   F    :--:   D   :--:   G   :--:   A  :                              :  B  :--:  F   :--:   D  :--:   G   :--:  A :

+---+     +---+     +---+     +---+     +---+                              +---+   +---+    +---+    +---+    +---+





Gambar 4.1(a) : Daftar proses runnable.

     4.1(b) : Daftar proses runnable sesudah      proses b habis quantum-nya.



Algoritma yang digunakan :

1. Jika kwanta habis dan proses belum selesai, maka proses menjadi runnable dan pemroses dialihkan ke proses lain.

2. Jika kwanta belum habis dan proses menunggu suatu kejadian (selesainya operasi I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain.

3. Jika kwanta belum habis tetapi proses telah selesai, maka proses diakhiri dan pemroses dialihkan ke proses lain.



Diimplementasikan dengan :

1. Mengelola senarai proses ready (runnable) sesuai urutan kedatangan.

2. Ambil proses yang berada di ujung depan antrian menjadi running.

3. Bila kwanta belum habis dan proses selesai, maka ambil proses di ujung depan antrian proses ready.

4. Jika kwanta habis dan proses belum selesai, maka tempatkan proses running ke ekor antrian proses ready dan ambil proses di ujung depan antrian proses ready.



Masalah yang timbul adalah menentukan besar kwanta, yaitu :

· Kwanta terlalu besar menyebabkan waktu tanggap besar dan turn arround time rendah.

· Kwanta terlalu kecil menyebabkan peralihan proses terlalu banyak sehingga menurunkan efisiensi proses.

Switching dari satu proses ke proses lain  membutuhkan kepastian waktu yang digunakan untuk administrasi, menyimpan, memanggil nilai-nilai register, pemetaan memori, memperbaiki tabel proses dan senarai dan sebagainya.

Mungkin proses switch ini atau konteks switch membutuhkan waktu 5 msec disamping waktu pemroses yang dibutuhkan untuk menjalankan proses tertentu. Dengan permasalahan tersebut tentunya harus ditetapkan kwanta waktu yang optimal berdasarkan kebutuhan sistem dari hasil percobaan atau data historis. Besar kwanta waktu beragam bergantung beban sistem. Apabila nilai quantum terlalu singkat akan menyebabkan terlalu banyak switch antar proses dan efisiensi CPU akan buruk, sebaliknya bila nilai quantum terlalu lama akan menyebabkan respon CPU akan lambat sehingga proses yang singkat akan menunggu lama. Sebuah quantum sebesar 100 msec merupakan nilai yang dapat diterima.



Penilaian penjadwalan ini berdasarkan kriteria optimasi :

· Adil

  Adil bila dipandang dari persamaan pelayanan oleh pemroses.

· Efisiensi

  Cenderung efisien pada sistem interaktif.

· Waktu tanggap

  Memuaskan untuk sistem interaktif, tidak memadai untuk sistem waktu nyata.

· Turn around time

  Cukup baik.

· Throughtput

  Cukup baik.



Penjadwalan ini :

a. Baik untuk sistem interactive-time sharing dimana kebanyakan waktu dipergunakan menunggu kejadian eksternal.

   Contoh : text editor, kebanyakan waktu program adalah untuk menunggu keyboard, sehingga dapat dijalankan proses-proses lain.

b. Tidak cocok untuk sistem waktu nyata apalagi hard-real-time applications.

Jadi kesimpulan yang dapat ditambahkan dari round robin adalah:

    Tiap proses memperoleh alokasi waktu CPU dlm kuantum waktu, biasanya 10-100 ms
    Setelah kuantum waktu lewat, proses dipreempted dan dimasukkan ke belakang antrian ready
    Jika ada n proses pada antrian ready dan kuantum waktu=q, maka:

§  Pada gilirannya tiap proses memperoleh 1/n waktu CPU selama q

§  Tidak ada proses yg menunuggu lebih dari (n-1)q unit waktu

RAID

Secara sederhana, RAID adalah sebuah cara menggabungkan sekelompok hard disk untuk membentuk satu “virtual” drive. Tujuannya bukan hanya sekedar untuk mendapatkan ruang yang lebih besar, tetapi juga membangun perlindungan data dengan fungsi redundansi / melakukan duplikasi data dalam drive tambahan. Oleh karena itu, bila kelak salah satu drive gagal/down, maka data akan tetap aman dan tersedia. Singkatnya, RAID menyediakan dua keunggulan utama: ruang dan keamanan data. Nah, dalam artikel berikut saya akan berbicara mengenai RAID beserta tingkatan, kelebihan dan kekurangannya.

A. TIPE RAID

Ada dua tipe implementasi RAID. Yaitu:

[message_box color="blue"]Software RAID: Semua konfigurasi ditangani oleh sistem operasi/software. Keuntungan dari RAID software yang sangat murah, karena tidak perlu membeli perangkat keras tambahan untuk mengelola RAID. Tetapi karena tidak dikelola oleh hardware sendiri, maka kelemahannya adalah dia butuh sumber daya memori dan daya CPU tambahan dari komputer.[/message_box]

[message_box color="red"]Hardware RAID: Semua informasi tentang konfigurasi RAID disimpan dalam interface card dalam bentuk perangkat keras. Keuntungannya adalah meningkatkan kinerja. Karena semuanya ditangani oleh interface card, sehingga komputer tidak tidak perlu menggunakan memori atau daya CPU untuk menjalankan RAID. [/message_box]

Dulu sekali, Hardware RAIDbisa dikatakan jadi primadona. Namun seiring berkembangnya waktu,  multi-core CPU dan memori sudah bisa didapatkan dengan harga yang semakin terjangkau dan semakin mumpuni kualitasnya. Maka dengan CPU yang lebih cepat, Software RAID pun sekarang bisa melakukan kinerja sebaik Hardware RAID dan bahkan bisa lebih cepat dalam beberapa kasus.

B. LEVEL RAID

Tingkatan RAID pada dasarnya merupakan cara / teknik konfigurasi hard drive. Setiap level memiliki kelebihan dan kekurangan. Ada yang unggul di sisi ruang /storage tetapi lemah di sisi keamanan datanya, ada yang unggul di sisi keamanan namun lemah kinerjanya, dsb. Pada dasarnya tidak ada yang “terbaik” untuk RAID. Masing-masing dari level berikut bisa dikatakan “terbaik” tergantung dengan situasinya. Jadi terserah kebijaksanaan kita untuk menentukan.

Raid 0

Dengan RAID 0, kita menggunakan dua / lebih hard disk yang bertindak seolah-olah mereka satu hard disk. Raid 0 diibaratkan memiliki  “0″ perlindungan. Bahkan karena kita menggunakan dua hard disk maka kita memiliki dua kali risiko kehilangan data. Karena bila salah satu drive mengalami error, maka kita terancam kehilangan data.

Kelebihan:

    RAID 0 menggunakan ruang hard disk secara maksimal karena tidak ada redundasi data.
    RAID 0 punya kecepatan yang lebih karena lebih banyak ruang dari dua hard disk yang dijadikan satu.

Kekurangan:

    Tidak ada perlindungan. Jadi jika kita kehilangan satu hard disk tunggal, data kita akan hilang.
    Karena kita menggunakan dua hard drive tanpa redundansi, maka resiko kita jadi dua kali lipat. Makanya akan lebih aman untuk menyimpan data dalam hard disk tunggal, misalnya bila kita menyimpan file 10MB dimana masing-masing drive menerima 5MB, maka jika salah satu drive rusak, kita hanya kehilangan data 5MB.

Kapan pakainya:

Raid 0 lebih pas digunakan oleh orang-orang yang mengutamakan ruang tetapi tidak peduli tentang kehilangan data mereka. Jadi di kondisi apa kita menggunakan RAID 0? Salah satu contohnya adalah sebagai server backup yang murah. Katakanlah kita punya banyak harddisk lama yang sudah tidak dipakai lagi, kemudian ingin membuat cadangan/backup data tetapi harddisk tua kita tidak cukup besar untuk pekerjaan itu. Maka kita bisa tempatkan semua hard disk yang ada untuk membentuk array RAID 0 dan menggabungkan kapasitas hardisk yang sudah ada. Tetapi pastikan data-data yang masuk ke server ini adalah hanya untuk tujuan backup/cadangan.

Raid 1

Dalam RAID 1 terjadi mirrorring antar hard disk. Sehingga dia menyediakan redundansi jika  salah satu disk mengalami error. Tidak seperti RAID 0 di mana semua space digabungkan, RAID 1 hanya menggunakan setengah ruang karena drive kedua digunakan untuk redundansi. Dengan syarat kedua hard drive ukurannya harus sama.

Kelebihan:Redundansi dan Kecepatan.

Kekurangan: Space hard disk tidak digunakan secara efisien. Karena kedua hard disk adalah salinan satu sama lain, hanya setengah dari ukuran jumlah gabungan yang digunakan.

Kapan pakainya:RAID 1 memakan ruang/space hard disk, tetapi lebih baik untuk kecepatan dan redundansi. Ini jadi pilihan yang baik untuk menjalankan sistem operasi. Server pada umumnya memiliki dua level RAID. RAID 1 yang berisi sistem operasi saja dan RAID tingkat kedua (biasanya RAID 5) untuk penyimpanan/storage.

RAID 5

RAID 5 adalah tingkat atau level yang paling populer digunakan di server saat ini.

Dengan RAID 5 kita bisa memiliki performa dan efisiensi penggunaan ruang. Dalam RAID 5 redundansi didistribusikan di antara semua drive. Jumlah minimum dari drive yang dapat digunakan pada RAID 5 adalah tiga.

Kelebihan:

    Efisiensi penggunaan kombinasi harddisk.
    Toleransi kesalahan: Jika  salah satu hard disk down/error  maka data tetap aman.

Kekurangan:

    Kecepatan RAID 5 tidak secepat RAID 0 atau 1.
    Jika lebih dari satu hard disk mengalami error, maka data terancam hilang.

Kapan menggunakan: RAID 5 adalah pilihan terbaik untuk data storage, karena efisien dalam penggunaan ruang dan menyediakan redundansi data.

RAID 6

RAID 6 pada dasarnya sama dengan RAID 5, dengan perbedaan dua drive bisa down pada saat yang sama bukan hanya satu. Jumlah minimum dari drive yang dapat digunakan dengan RAID 6 adalah empat.

Kelebihan:  Meskipun dua hard disk down bersamaan, data kita tetap aman.

Kekurangan:

    Space total hard drive sangat berkurang karena lebih banyak dialokasikan untuk partisi redundansi.
    Kecepatan RAID 6 tidak secepat RAID 0 atau 1.
    Proses rebuilt lebih lambat. Ketika drive down, maka perlu rebuilt kembali. Kinerja akan menurun jauh bila dibandingkan dengan metode RAID lainnya.

Kapan menggunakan:

RAID 6 baik digunakan untuk media storage. Sebab pada dasarnya RAID 6 sama dengan RAID 5 dengan keamanan data yang lebih baik. Namun akibatnya, kita akan kehilangan sekitar 40% dari ruang gabungan total.

RAID Z

Raid Z dan RAID Z2 adalah penemuan Sun Micro System. RAID Z memiliki semua manfaat dari RAID 5 dan fitur lainnya yang membuatnya jauh lebih unggul. Seperti dengan RAID 5, RAID Z dapat mendukung sejumlah hard disk yang bekerja sama dan satu disk untuk redudansi. Jumlah minimum dari hard disk adalah tiga dan hanya satu yang bisa down pada suatu waktu. Jika lebih dari satu hard disk rusak pada saat yang sama, maka kita beresiko kehilangan data.

Kelebihan: Memiliki semua kelebihan dari RAID 5 dan fitur lainnya.

Kelemahan: Hanya dapat digunakan dengan OS berbasis Open Solaris seperti Nexenta dan atau sistem berbasis BSD seperti FreeBSD.

Kapan menggunakan: RAID Z adalah level RAID terbaik untuk penyimpanan/storage. Pada dasarnya RAID Z melengkapi hampir semua kekurangan dari RAID tingkat sebelumnya dan menambahkan banyak fitur baru. Namun hanya bisa digunakan dengan sistem berbasis Solaris dan BSD. RAID Z sangat baik untuk digunakan dalam NAS / lainnya untuk penyimpanan data berskala besar.

RAID Z2

Raid Z2 hampir identik dengan Raid Z dan mirip dengan RAID 6. Dalam RAID Z2, meski dua hard disk bisa down di waktu bersamaan namun data akan tetap aman dan mudah diakses. Sama seperti RAID Z, RAID Z2 jauh lebih unggul dengan RAID 6 karena di dalamnya terdapat banyak fitur lainnya. Jumlah minimum drive untuk menggunakan RAID Z2 adalah empat.

Keuntungan:

    Data lebih aman meski dua drive bisa down pada saat yang sama bukan hanya satu.
    Memiliki semua manfaat dari RAID Z.

Kekurangan:

    Dua hard disk digunakan untuk paritas, sehingga ukuran jumlah gabungan space sangat terbatas.
    Hanya dapat digunakan dengan OS berbasis Open Solaris seperti Nexenta dan atau sistem berbasis BSD seperti FreeBSD.

Kapan menggunakan:Sama seperti RAID Z tetapi dilengkapi dengan tambahan tingkat keamanan. Tidak untuk digunakan jika butuh space yang besar.

RAID 10

RAID 10 adalah gabungan dari  RAID 1 + RAID 0. Makanya dia bisa memberikan optimasi untuk toleransi kesalahan. Dimana RAID 0 memiliki kecepatan yang lebih karena lebih banyak ruang dari dua hard disk yang dijadikan satu, sedangkan RAID 1 memberikan mirroring disk untuk redundansi. Dalam beberapa kasus, RAID 10 menawarkan data yang lebih cepat membaca dan menulis daripada RAID 5 karena tidak perlu mengelola paritas. Minimum harddisk yang bisa digunakan adalah 4 hard disk.

Keunggulan:

    Memiliki manfaat dari kecepatan dari RAID 0 dan Mirroring dari Raid 1.
    Tingkat keamanan terhadap kemungkinan hilangnya data yang lebih baik dari penggunaan sebuah harddisk.

Kelemahan:

    Memiliki segala kekurangan yang dimiliki RAID 1 dan RAID 0.
    Kegagalan disk memiliki efek pada throughput, meskipun hal ini masih dapat ditoleransi.




2 komentar:

  1. Casino Site - Choegocasino
    Choose your preferred online casino 카지노 site or just place your bets, and our online casino 메리트카지노 site is the best in the industry. Choegocasino USA offers an 바카라

    BalasHapus

Silakan berkomentar disini: