Friday, November 23, 2012

Penjadualan Algoritma Shortest Remaining Time


Shortest remaining time merupakan algortima yang eksekusi proses diatur berdasarkan perkiraan sisa waktu terkecil
Proses yang baru masuk dapat langsung dieksekusi bila total waktu eksekusinya lebih kecil daripada sisa waktu proses yang sedang running dan merupakan model preemtivenya SPN.

Kekurangan dari shortest remaining time
  • terjadi overhead akibat scheduler harus menghitung/memperkirakan sisa waktu eksekusi setiap proses untuk menentukan sisa waktu yang terkecil
  • dapat terjadi starvation pada proses yang panjang
  • proses yang panjang dikalahkan oleh proses yang kecil
Kelebihan dari shortest remaining time
  • Kualitas layanan rata rata yang diterima proses lebih baik
  • Throughput tinggi
  • Response time cepat




Penjadualan Algoritma Shortest Process Next


Shortest process next merupakan algoritma yang eksekusi proses diatur berdasarkan perkiraan ukuran proses terkecil
Kekurangan dari shortest process next
  •  scheduler harus mengetahui/memperkirakan ukuran setiap proses yang akan dieksekusi
  •  proses besar dapat mengalami starvation
  • overhead bisa tinggi

Kelebihan dari shortest process next
  •  dapat mencegah kerugian yang dialami proses kecil seperti pada FCFS
  •  throughput tinggi
  •  proses kecil mempunyai response time kecil

Penjadualan Algoritma Round Robin


Round Robin (RR)
round robin merupakan algoritma yang eksekusi proses diatur berdasarkan alokasi waktu tertentu (slot waktu ) yang di atur dengan clock interrupt, clock interrupt mengatur waktu secara periodik. Bila terjadi clock interrupt maka proses yang seddang running dimasukkan ke dalam antrian ready dan proses di antrian ready paling depan di eksekusi

kekurangan dari round robin
  • performansi lebih buruk dibanding FCFS jika ukuran slot lebih besar daripada ukuran proses terbesar
  • dapat terjadi overhead berlebihan jika ukuran setiap slot terlalu kecil
  • proses I/O bound mendapatkan waktu layanan lebih sedikit
Solusi dari kekurangan round robin
round robin dimodifikasi menjadi virtual round robin(VRR)  dengan menambahkan sebuah antrian yang disebut memory antrian auxiliary

Kelebihan dari round robin
  • dapat menghindari ketidak adilan layanan terhadap proses kecil seperti yang terjadi pada FCFS
  • respone time lebih cepat untuk proses berukuran kecil
  • dapat mencegah starvation
  • overhead kecil, jika ukuran proses rata rata lebih kecil dibanding ukuran quantum/slot

Thursday, November 22, 2012

Routing Algoritma


Routing Algoritma
Apa sih routing algoritma itu ? suatu router akan melakukan routing dan forwarding suatu data dengan tetangga router 1 , 2 , dan 3 . Kemudian router tersebut akan melakukan routing terhadap router 2, bagaimana caranya ? Routing algoritma akan membuat sebuah table local forwarding yang akan menentukan router manakah yang akan dijadikan output dari router tujuan, seperti gambar di bawah ini 


Routing algoritma memiliki 2 classification berdasarkan algoritma, algoritma tersebut adalah link state dengan distance vector algoritma, dan apakah perbedaan antara algoritma link state dengan distance vector ? untuk link state router harus memahami atau mengetahui semua informasi berkaitan topologi jaringan yang dilakukan secara broadcast antara router satu terhadap router lainnya

Pada link state memiliki dijkstra algoritma yang menentukan suatu jalur mana yang memiliki bobot terkecil dan setiap nodenya harus terpenuhi
Pada distance vector memiliki bellman-ford algoritma yang menentuhkan jalur manakah yang memiliki bobot terkecil dan setiap nodenya tidak harus terpenuhi,
Dan apa perbedaan antara dijkstra dengan bellman-ford ? ya , seperti apa yang saya sebutkan di atas bahwa dijkstra menentukan jalur mana yg memiliki bobot terkecil dengan semua node harus terpenuhi tetapi bellman-ford tidak harus terpenuhi

contoh :

menggunakan algoritma dijkstra akan didapat
dengan algoritma bellman-ford


Sumber : kurose chapter4_5th_2009 slide

Saturday, October 20, 2012

konsep concurrency dan sinkronisasi

latihan soal yoook sambil gw belajar..

1. mengapa konkurensi diperlukan di dalam komputer ?
diperlukan agar proses proses dapat terjadi pada saat bersamaan dan merupakan landasan umum dalam perancangan sistem operasi.
masalah yg dapat ditangani : mutual exclusion, sinkronisasi, deadlock dan starvation

2.apa yang dimaksud dengan critical section ?
resource yang dalam satu waktu hanya boleh diakses oleh satu proses saja

3. tuliskan 4 contoh critical section ?
printer,  baris baris program , file dan

4. apa yang dimaksud dengan race condition ?
keadaan dimana terdapat banyak thread atau proses mengakses data bersama (shared data) yang menyebabkan hasil akhir sulit dipastikan (bergantung pada lama waktu eksekusi setiap proses )

5. Jelaskan dengan singkat pengertian starvation dengan contohnya ?
keadaan dimana suatu proses yang siap dieksekusi terus menerus tidak diberi kesempatan untuk melakukan aksinya

6. apa yang dimaksud dengan mutual exclusion ?
syarat atau kondisi yang harus dipenuhi untuk mencegah terjadinya pengaksesan critical section oleh lebih dari satu proses pada saat itu

7. tuliskan syarat syarat untuk membentuk mutex !
- tidak boleh terjadi deadlock atau starvation
- dalam pengaksesan critical section tidak boleh ada tunda waktu (delay) bila sedang tidak ada yang mengakses critical section tersebut
- kecepatan relatif proses dan julah proses tidak boleh mempengaruhi mutual exclusin (race condition)
- sebuah proses berada pada critical section dalam waktu terbatas

8. tuliskan kekurangan penggunaan intruksi atomik !
- dapat terjadi busy-waiting -> masih tetap menggunakan waktu prosesor
- dapat terjadi starvation bila terdapat banyak proses yang mengantri critical section
- dapat terjadi deadlock