Jumat, 16 Mei 2014

TUGAS MANDIRI PRAKTIKUM SO

Tutorial Tetang 3 cara Install SO

1. Install ke partisi langsung (cara kovensional).
2. Install SO via Virtual Box.
3. Install Live SO ke Media Flashdisk/Ext Disk.

JAWABAN :

1
  • Masukkan DVD Windows 7 ke optical drive atau jika menggunakan usb flashdisk colokkan usb bootable windows 7 ke port usb
  • Ganti seting boot bios sesuai dengan sources atau sumber sistem operasi yang akan sobat instal. Contoh Anda ingin menginstal windows 7 dari dvd berarti first boot biosnya ganti dengan dvd, begitu juga jika Anda menggunakan media lain seperti flashdisk ganti first boot biosnya ke flashdisk. Untuk masuk ke setingan bios restart laptop/pc Anda, kemudian lihat instruksi di layar tombol mana yang harus kita tekan untuk masuk ke setingan bios. Standar PC biasanya tombol DEL, Laptop/Netbook Axioo, Acer, dll biasanya tombol F2, HP Compaq biasanya tombol ESC. Dan ada juga beberapa laptop/pc yang mempunyai tombol cepat untuk mengganti first boot biosnya, dengan menekan tombol F12, lalu pilih menu boot yang akan kita pakai, misal flashdisk atau optical drive (DVD).
    Tutorial Lengkap Cara Menginstal Windows 7
    Contoh cara menseting bios untuk first boot dari DVD
    Tutorial Lengkap Cara Menginstal Windows 7
    Pada menu Boot, pilih Boot Device Priority->First Boot Device pilih CDROM lalu exit dan simpan setingan bios
  • Jika Anda memilih menginstal lewat DVD dan sebelumnya sudah pernah menginstal OS Windows apa saja di Laptop/PC tersebut maka, selesai menyimpan setingan bios otomatis Laptop/PC Anda restart sendiri. Pada saat kembali menyala Anda akan melihat pesan "Press any key to boot from CD or DVD" maka yang harus Anda lakukan adalah menekan sembarang tombol di keyboard satu kali untuk masuk ke Jendela Install Windows 7 setelah loading selesai
  • Jika pada laptop/pc Anda belum berisi system alias masih baru dan belum di isi atau di isntall sistem operasi sebelumnya maka secara otomatis Anda akan langsung berapa di Jendela Install Windows 7 setelah loading selesai
  • Jika Anda menginstal lewat flashdisk maka yang harus Anda lakukan pertama kali adalah memilih menu instal windows 7 dengan menekan enter, lalu tunggu loading selesai, Anda akan di bawa ke Jendela Install Windows 7 
    Tutorial Lengkap Cara Menginstal Windows 7
    Tampilan Awal Jendela Install Windows 7
  • Klik Next aja, namun sebaiknya sebelum itu "Time and currancy format"nya di sesuaikan dulu
  • Muncul jendela baru langsung klik "Install Now" aja.
  • Pada Jendela Install berikutnya checklist "I accept the license terms" setelah itu klik Next
    Langkah-langkah Menginstal Windows 7
    Tampilan perjanjian lisensi Install Windows 7
  • Maka muncul pilihan menu Upgrade dan Costume (Advance), langsung aja klik yang costum
    Cara Mudah Menginstal Windows 7
    Tampilan pilih custom instal windows 7



  • Maka akan muncul menu partisi harddisk, pilih "Drive Option" lalu klik New jika baru pertama kalinya laptop/pc tersebut diinstal (masih dalam keadaan baru dan belum ada sistem operasi). Buat partisi baru sesuai keinginan Anda, mau 1,2 atau 3 partisi ngak masalah selama harddisk laptop/pc tersebut mempunyai kapasitas yang cukup besar. Besarnya kapasitas partisi di set dalam satuan MB (Mega Byte), soo jika Anda ingin membuat partisi pertama, kedua, ketiga,dst. sebesar 50GB Anda harus memasukkan nilai 50x1024MB=51200MB. Biar ngak ribet set aja misalnya 50000MB, 100000MB, dsb. Lihat pada gambar, saya hanya mencontohkan pembagian partisi dengan harddisk kurang-lebih 24GB

    Step by step Menginstal Windows 7
    Membuat partisi saat pertama kali di install windows 7
    Langkah Mudah Menginstal Windows 7
    Setelah menentukan besarnya kapasitas partisi pertama langsung klik Apply, nanti akan keluar pesan konfirmasi untuk membuat partisi dan partisi tambahan untuk boot system (system reserve) langsung klik OK aja. Lakukan hal yang sama pada partisi berikutnya namun tidak lagi ada pesan konfirmasi pembagian partisi pada partisi yang kedua, ketiga, dst.
    Mahir Menginstal Windows 7
    Klik pada Unallocated Space, klik New, set kembali besarnya partisi yang akan dibuat lalu klik Apply.
    Belajar Menginstal Windows 7
    Selesai mempartisi langsung klik Disk 0 Partition 2 dan klik Next
    Cepat Pandai Menginstal Windows 7
    Proses instal windows 7 sedang berjalan, tunggu proses tersebut selesai. Begitu proses mencapai 100% laptop/pc akan restart dengan sendirinya, Anda tinggal duduk santai tanpa melakukan apa-apa sembari menunggu proses kedua juga selesai.



  • Namun ada sedikit pengecualian khusus untuk Anda yang menginstal lewat flashdisk. Jika proses Completing installation selesai dan pc/laptop Anda restart dengan sendirinya, Anda harus kembali merubah setingan first boot bios ke harddisk.
  • Pengecualian yang lainnya ialah jika Anda menginstal pada laptop/pc yang sudah pernah di instal atau di isi sistem operasi Anda tidak perlu lagi mempartisi ulang, seperti pada poin 11 diatas. Langsung saja pada saat mengklik "Drive Option" klik/pilih partisi system yang lama misalnya "Disk 0 Partition 2" lalu klik Format-OK-lalu langsung aja klik Next maka proses instal windows 7 telah berjalan, tunggu proses sampai selesai (sama dengan proses terakhir point 11)
  • Setelah proses selesai maka akan muncul jendela yang meminta kita untuk mengisikan username dan password isi suka-suka aja sesuai keinginan Anda lalu klik Next.
    Trik Menginstal Windows 7
    Isi username Windows 7 lalu Next
    Cepat Mahir Menginstal Windows 7
    Password boleh di isi boleh juga di kosongkan lalu klik Next
  • Langkah selanjutnya adalah mengisikan lisensi (Product key) Windows 7, jika Anda tidak punya lisensi Asli lewatkan saja langkah tersebut dengan menghilangkan centang "Automatically Active Windows When I'm online"

    Cara-cara Menginstal Windows 7
    Hilangkan checklist Automatically Active Windows When I'm online lalu klik Next

  • Terakhir abaikan otomatis update windows dengan memilih "Ask me latter" dan set Time Zone dengan Bangkok, Hanoi, Jakarta.
2.
  • Siapkan File .ISO OS/CD OS Dan Jalankan Software Virtualbox/Double klik Icon Virtualbox.exe
  • Setelah Anda Membuka Virtualbox,Maka Tampilan Awalnya akan Seperti ini,Klik New (Ctrl+N).


  • Lalu Isikan Nama Sistem Operasi yang ingin anda install,Contoh Saya Ingin Menginstall Windows 7,Maka Pada Bagian Name :  Diisi Windows 7  Dan bagian Type : Microsoft windows Dan Dibagian Version : Windows 7. Seperti Gambar dibawah ini.Lalu Klik Next


  • Pada Bagian Ini Untuk Menentukan Ram(Memory) Yang digunakan Dalam Penginstallan/didalam sistem operasi nantinya,Klik Next saja.


  • Klik Create


  • Nah Di Bagian Ini Untuk Menentukan Type File Yang Akan Disimpan Di Harddisk,Disarankan Memilih VMDK (Virtual Machine Disk)


  • Selanjutnya Klik Next


  • Nah,Pada Bagian Ini Untuk Memilih Lokasi File VMDK Yang Akan Disimpan Nantinya,Saya Sarankan langsung Klik Create


  • Dibagian ini Kita akan Kembali ke Menu Awal,Pilih Nama Sistem Operasi Yang Kita buat tadi, Lalu Klik Start


  • Jika Muncul Pesan Informasi Klik Ok saja,Selanjutnya Virtualbox Akan Meminta File OS.
  • Jika Anda Menggunakan CD Pilih HostDrive E:/Sesuai Drive CD Anda.Dan Jika Anda Menggunakan File .ISO Klik Icon Folder Lalu Cari File .ISO Nya Kemudian Klik Start


  • Selanjutnya Virtualbox akan Melalukan Booting Dan Penginstallan Windows 7 Seperti Biasa,Hanya Saja Ini Hanya Simulasi,



 3. 

Pertama siapkan peralatan yang dibutuhkan sebagai berikut:
  1. Flashdisk USB minimal 256MB dan maksimal 2GB. Kenapa harus ada batas minimal dan maksimal? Ini disebabkan dua hal. Flashdisk yang terlalu kecil tidak akan mampu menyimpan file sistem Windows. Sementara di sisi lain, jika flashdisk melebihi 2GB kemungkinan besar akan mengalami masalah dengan pembatasan Partisi FAT16 yang akan kita gunakan nantinya.
  2. CD Instalasi Windows dengan SP2 (atau yang lebih tinggi).
  3. Program pemformat Flashdisk USB dari HP: HPUSBFW.EXE. Program ini dapat Anda download di sini.
  4. Program Bart’s Preinstalled Environment Bootable Live Windows CD / DVD, atau sering disebut BartPE. Versi terbaru dari program ini bisa Anda dapatkan di sini.
Kedua, Langkah Instalasi:
  1. Format flashdisk: jalankan HPUSBFW.EXE, format flashdisk dengan file sistem FAT. Agar lebih mudah, beri nama BartPE.
  2. Copy file Boot.ini, NTLDR dan NTDETECT.COM dari drive C:\[ Instalasi windows] ke flashdisk Anda. Agar lebih mudah, nonaktifkan dulu properti hidden file di Explorer. Buka Windows Explorer > Tools > Folder Options > klik Tab View. Hilangkan cek box Hide Extensions for known file types dan Hide protected operating system files, akhiri dengan  [OK].
  3. Restart, atur setting Boot  Sequence (urutan booting) agar jalan dari Flashdisk. Jika tidak ada pesan error, Anda bisa lanjut ke langkah berikutnya.
  4. Setelah flashdisk beres, sekarang waktunya mempersiapkan instalasi windows. Copy semua file yang ada dalam CD Instalasi Windows XP minimal dengan SP2 ke dalam sebuah folder. Ingat, program BartPE mensyaratkan minimal WinXP SP2. Di sini saya simulasikan file tersebut dikopi ke dalam C:\Winxpsp2.
  5. Install bartPE/PE Builder. Agar lebih mudah, ikuti saran lokasi penyimpanan file hasil instalasi BartPE. Dalam ilustrasi berikut tampak bahwa PE Builder diinstall di drive C:\pebuilder313. Bagi Anda yang menginstall di folder lain, silakan sesuaikan dengan lokasi instalasi Anda masing-masing.
  1. Sekarang jalankan PE Builder, pilih source instalasi yang tadi sudah di kopi ke C:\Winxpsp2.
    Pastikan Cekbox Create ISO Image dan Burn to ISO tidak dipilih. Selanjutnya klik Build, tunggu proses pembuatan sistem operasi hingga selesai, akhiri dengan Close.
  1. Sekarang saatnya menyalin windows build tadi ke dalam flashdisk dengan langkah berikut. Buka windows Command Prompt dari Start > Run > ketik CMD [Enter].
  2. Masuk ke C:\pebuilder313\plugin\peinst dengan mengetikkan perintah pada command prompt ‘cd c:\pebuilder313\pluginpeinst [Enter].
  3. Masukkan flashdisk kosong dan ketik ‘PEINST.CMD [ENTER]‘ maka akan muncul 4 pilihan berawalan angka dan satu huruf [Q]uit seperti ilustrasi di bawah.
  1. Tekan 1 [Enter], masukkan path dimana letak build yang barusan dibuat, misalnya: C:\pebuilder313\BartPE.
  2. Tekan 2 [Enter] dan masukkan target path berupa huruf yang diberikan windows pada drive USB Flashdisk, misalnya F: sehingga tampak seperti berikut:
  1. Sekarang pada menu sudah tampil path source dan destination. selanjutnya tekan 5 [Enter] untuk menginstall Windows pada flashdisk. Ketika muncul konfirmasi tekan tombol 1 sekali lagi.
  2. Tunggu beberapa saat hingga selesai, selanjutnya flashdisk Anda sudah bisa digunakan untuk booting WindowsXP.

Kamis, 08 Mei 2014

Penjadwalan CPU menyangkut penentuan proses-proses yang ada dalam ready queue yang akan dialokasikan kepada CPU. Terdapat beberapa algoritma penjadwalan CPU seperti di bawah ini :

1. First Come First Server (FCFS)
Pertama datang, pertama dilayani (First In, First Out atau FIFO) tidak peduli apakah burst time nya panjang atau pendek, sebuah proses yang sedang dikerjakan diselesaikan terlebih dulu barulah proses berikutnya dilayani.
Penjadwalan FCFS merupakan penjadwalan:
·         Penjadwalan non-prevebtive (run-to-completion)
·         Penjadwalan tidak berprioritas
Ketentuan dari penjadwalan FCFS adalah:
·         Proses-proses diberi jatah waktu pemroses, diurut dengan waktu kedatangannya.
·         Begitu proses mendapat jatah waktu pemproses, proses dijalankan sampai proses tersebut selesai, walaupun ada proses lain yang datang, proses tersebut berada dalam antrian sistem atau disebut dengan ready queue.
Pada dasarnya algoritma penjadwalan ini cukup adil dalam hal bahasa, karena proses yang datang lebih dulu dikerjakan terlebih dahulu. Dari segi konsep sistem operasi, penjadwalan model ini tidak adil karena proses-proses yang membutuhkan waktu yang lama membuat proses-proses yang memiliki waktu proses yang lebih pendek menunggu sampai proses yang lama tersebut selesai, sedangkan proses-proses yang tidak penting membuat proses penting menunggu.
Penjadwalan FCFS cocok digunakan untuk sistem batch yang sangat jarang melakukan interaksi dengan user secara langsung, tapi tidak cocok digunakan untuk sistem interaktif karena tidak memberi waktu tanggap yang bagus, begitu juga dengan waktu sistem nyata.
Contoh dari penjadwalan FCFS adalah:
Misalnya proses-proses yang akan dikerjakan oleh CPU adalah sebagai berikut:
Pada saat posisi P1 masuk pada waktu 0, maka P1 dijalankan sebanyak 12, dan P2 masuk pada saat 2, P3 pada saat 3, P4 pada saat 5, dan P5 pada waktu 9. Pada posisi 12 P1 selesai dikerjakan, dan P2 akan dieksekusi karena P2 lebih dulu berasa di dalam Ready Queue (RQ) karena pada contoh diatas menggunakan algoritma FCFS (First Come Firs Server) dan begitulah seterusnya sampai semua proses selesai dikerjakan. Setelah semua proses selesai dikerjakan maka dihitung waktu tunggu setiap proses, maka akan ditemukan jumlah waktu tunggu rata-rata dari setiap proses, seperti contoh di bawah ini:
Jadi waktu tunggu setiap proses adalah:
Rata-rata waktu tunggu untuk setiap proses adalah: Avg 65/5 = 13 satuan waktu.
Jika urutan proses pada contoh diatas dibalikkan misal : P5, P4, P3, P2 , P1 dengan waktu menganggur CPU (idle time) antar awaktu 1 dan 2 sehingga panjangnya waktu yang dibutuhkan untuk menyelesaikan lima proses tersebut menjadi 29 atau bertambah satu dari waktu yang dibutuhkan sebelumnya.
Algoritma FCFS termasuk non-preemptive, karena sekali CPU dialokasikan pada suatu proses, maka proses tersebut tetap akan memakai CPU sampai proses tersebut melepaskannya, yaitu jika proses tersebut berhenti atau meminta I/O.
Penggunaan algoritma FCFS yang lebih kompleks dengan menambahkan aktivitas input dan output sebagai berikut:

2. Algoritma Penjadwalan Proses Shortest Job First (SJF)
Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena haltersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwaalgoritma ini adalah algoritma yang optimal.


Contoh 1 :
Process
Arrival time
Burst time
P1
0.0
7
P2
2.0
4
P3
4.0
1
P4
5.0
4

Contoh: Ada 4 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 7 ms, P2 dengan arrival time pada 2.0 ms dan burst time 4 ms, P3 dengan arrivaltime pada 4.0 ms dan burst time 1 ms, P4 dengan arrival time pada 5.0 ms dan burst time 4 ms.Hitunglah waiting time rata-rata dan turnaround time dari keempat proses tersebut denganmengunakan algoritma SJF.

Gambar Shortest Job First (Non-Preemptive) :

P1
P3
P2
P4
0                                7      8             12            16

Average waiting time rata-rata untuk ketiga porses tersebut adalah sebesar (9+1+0+2)/4=3 ms.

Contoh 2 :

Nama Proses
Waktu Tiba
Lama Eksekusi
A
0
10
B
0
5
C
0
7
D
0
1
E
0
3

Nama Proses
Waktu Tiba
Lama Eksekusi
Mulai Eksekusi
Selesai Eksekusi
Waktu Tunggu
TA
D
0
1
0
1
0
1
E
0
3
1
4
1
4
B
0
5
4
9
4
9
C
0
7
9
16
9
16
A
0
10
16
26
16
26
∑TA
56
Rata-Rata
56/5 = 11.2

Tampak di sini bahwa SJF ini menyebabkan rata-rata lama tanggap semua proses itu menjadi 11.2satuan waktu. Rata-rata ini akan lebih singkat jika dibandingkan dengan rata-rata lama tanggap untuk penjadwalan FIFO.


Algoritma ini dapat dibagi menjadi dua bagian yaitu :
1. Preemptive
Penjadwalan Preemptive mempunyai arti kemampuan sistem operasi untuk memberhentikan sementara proses yang sedang berjalan untuk memberi ruang kepada prosesyang prioritasnya lebih tinggi.

Jika ada proses yang sedang dieksekusi oleh CPU dan terdapat proses di ready queuedengan burst time yang lebih kecil daripada proses yang sedang dieksekusi tersebut, makaproses yang sedang dieksekusi oleh CPU akan digantikan oleh proses yang berada di readyqueue tersebut.
Preemptive SJF sering disebut juga Shortest-Remaining- Time-Firstscheduling.2.

2. Non-preemptive
Penjadwalan Non Preemptive ialah salah satu jenis penjadwalan dimana sistemoperasi tidak pernah melakukan context switch dari proses yang sedang berjalan ke proses yang lain. Dengan kata lain, proses yang sedang berjalan tidak bisa di- interupt .CPU tidak memperbolehkan proses yang ada di ready queue untuk menggeser prosesyang sedang dieksekusi oleh CPU meskipun proses yang baru tersebut mempunyai burst time yang lebih kecil.

Program Penjadwalan Proses Menggunakan Shortest Job First Dengan C++

Berikut ini adalah source code program penghitungan waiting time, turn around time dan response time sistem penjadwalan proses menggunakan Shortest Job First dengan C++.

Ini listing programnya :

#include
#include
void main()
{
int i,j,n,brust_time[10],start_time[10],end_time[10],wait_time[10],temp,tot;
float avg;

printf("Enter the No. of jobs:\n\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("\n \n Enter %d process burst time:\n",i);
scanf("%d",&brust_time[i]);
}

for(i=1;i<=n;i++)
{
for(j=i+1;j<=n;j++)
{
if(brust_time[i]>brust_time[j])
{
temp=brust_time[i];
brust_time[i]=brust_time[j];
brust_time[j]=temp;
}
}

if(i==1)
{
start_time[1]=0;
end_time[1]=brust_time[1];
wait_time[1]=0;
}

else
{
start_time[i]=end_time[i-1];
end_time[i]=start_time[i]+brust_time[i];
wait_time[i]=start_time[i];
}
}
printf("\n\n BURST TIME \t STARTING TIME \t END TIME \t WAIT TIME\n");
printf("\n ********************************************************\n");
for(i=1;i<=n;i++)
{
printf("\n %5d %15d %15d %15d",brust_time[i],start_time[i],end_time[i],wait_time[i]);
}
printf("\n ********************************************************\n");
for(i=1,tot=0;i<=n;i++)
tot+=wait_time[i];
avg=(float)tot/n;
printf("\n\n\n AVERAGE WAITING TIME=%f",avg);
for(i=1,tot=0;i<=n;i++)
tot+=end_time[i];
avg=(float)tot/n;
printf("\n\n AVERAGE TURNAROUND TIME=%f",avg);
for(i=1,tot=0;i<=n;i++)
tot+=start_time[i];
avg=(float)tot/n;
printf("\n\n AVERAGE RESPONSE TIME=%f\n\n",avg);
getch();
}

Output :



4. Analisa
Berdasarkan program di atas dapat di simpulkan bahwa semua proses telah masuk pada ready queque namun dalam algoritma SJF (shortest job first) maka suatu proses akan di eksekusi berdasarkan burst time atau lamanya eksekusi, dan kemudian proses yang time burst nya paling kecil akan di utamakan di bandingkan dengan proses yang time burst nya besar.

5. Kesimpulan
Pada program penjadwalan sjf ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena haltersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwaalgoritma ini adalah algoritma yang optimal.

Ada beberapa kekurangan dari algoritma ini yaitu:

1. Susahnya untuk memprediksi burst time proses yang akan dieksekusi selanjutnya.
2. Proses yang mempunyai burst time yang besar akan memiliki waiting time yang besar pula karena yang dieksekusi terlebih dahulu adalah proses dengan burst time yang lebih kecil.
  3.  Priority Scheduling.
- Tiap proses diberi skala prioritas, proses yang mendapatkan prioritas tertinggi mendapat jatah waktu pemroses
- Prioritas dapat diberikan secara :
*  Prioritas statis (static priorities)
*  Prioritas dinamis (dynamic priorities)
- Jika beberapa proses memiliki prioritas yang sama akan digunakan algoritma FCFS, prioritas meliputi :
*  Waktu
*  Memori yang dibutuhkan
*  Banyaknya file yang dibuka
*  Perbandingan antara rata-rata I/O Burst dengan rata-rata CPU Burst
- Algoritma Priority Scheduling dapat bersifat Preemptive atau Non Preemptive. Jika ada  proses P1 yang datang pada saat P0 sedang berjalan à akan dilihat prioritas P1, Jika prioritas P1>P0, maka :
*  Pada Non Preemptive, Algoritma tetap akan menyelesaikan P0 sampai habis CPU burstnya dan meletakkan P1 pada posisi head queue.
*  Pada Preemptive, P0 akan dihentikan dulu dan CPU ganti dialokasikan untuk P1.
Contoh Priority Scheduling








 

Keunggulan priority scheduling biasanya memenuhi kebijaksanaan yang ingin mencapai maksimasi suatu kriteria diterapkan.

Algoritma Round Robin

Round robin merupakan salah satu algoritma penjadwalan yang paling sederhana untuk proses dalam sistem operasi. Seperti umumnya istilah ini digunakan, irisan waktu ditugaskan untuk setiap proses pada porsi yang sama dan dalam urutan melingkar, menjalankan semua proses tanpa prioritas (dikenal juga sebagai eksekutif siklik). Penjadwalan round-robin itu sederhana, mudah diterapkan, dan bebas starvation. Penjadwalan round-robin juga dapat diterapkan untuk masalah penjadwalan lainnya, seperti penjadwalan paket data dalam jaringan komputer.

Algoritma round robin dirancang untuk sistem time sharing. Algoritma ini mirip dengan penjadwalan FCFS (First Come First Served), namun preemption ditambahkan untuk switch (peralihan proses) antara proses. Antrian ready diperlakukan atau dianggap sebagai antrian sirkular. CPU menglilingi antrian ready dan mengalokasikan masing-masing proses untuk interval waktu tertentu sampai satu time slice /quantum.

Algoritma ini berjalan dengan menggilir proses yang ada pada antrian. Setiap Proses akan mendapat jatah sebesar time quantum.  Jika time quantum-nya habis atau proses sudah selesai, CPU akan dialihkan ke proses yang selanjutnya. 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.

Ketentuan
Ketentuan algoritma round robin adalah sebagai berikut:
1. Jika quantum dan proses belum selesai maka proses menjadi runnable dan pemroses dialihkan ke proses lain.
2. Jika quantum belum habis dan proses menunggu suatu kejadian (selesainya operasi I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain.
3. Jika quantum belum habis tapi proses telah selesai, maka proses diakhiri dan pemroses dialihkan ke proses lain.

Algoritma ini sepenuhnya bergantung besarnya time quantum. Jika terlalu besar, algoritma ini akan sama saja dengan algoritma first come first served. Jika terlalu kecil, akan semakin banyak peralihan proses sehingga banyak waktu terbuang. Algoritma penjadwalan ini dapat diimplementasi sebagai berikut: – Mengelola senarai proses read (runnable) sesuai urutan kedatangan. – Ambil proses yang berada di ujung depan antrian menjadi running. – Bila quantum belum habis dan proses selesai maka ambil proses di ujung depan antrian proses ready. – Jika quantum habis dan proses belum selesai maka tempatkan proses running ke ekor antrian proses ready dan ambil proses di ujung depan antrian proses ready.

Bentuk Algoritma
Algoritma ini menggilir proses yang ada di antrian. Proses akan mendapat jatah sebesar time quantum. Jika time quantum-nya habis atau proses sudah selesai, CPU akan dialokasikan ke proses berikutnya. 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.
Algoritma ini sepenuhnya bergantung besarnya time quantum. Jika terlalu besar, algoritma ini akan sama saja dengan algoritma first come first served. Jika terlalu kecil, akan semakin banyak peralihan proses sehingga banyak waktu terbuang.
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. 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. Time quantum yang ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 time quantum.





Urutan event dalam algoritma round robin





Penggunaan Waktu Quantum

Berikut adalah algoritma penjadwalan Round Robin secara Keseluruhan :

  • Setiap proses mendapat jatah waktu CPU (time slice/quantum) tertentu Time slice/quantum umumnya ntara 10 – 100 milidetik.
1.  Setelah time slice/quantum maka proses akan di-preempt dan dipindahkan ke antrian ready.
2.  Proses ini adil dan sangat sederhana.

  • Jika terdapat n proses di “antrian ready ” dan waktu quantum q (milidetik), maka:
1.   Maka setiap proses akan mendapatkan 1/n dari waktu CPU.
2.   Proses tidak akan menunggu lebih lama dari: (n-1)q time units.


 


Kode VIDEO