Sabtu, 30 Mei 2015

CD-ROM

PENGERTIAN CD ROM

CD-ROM merupakan akronim dari “compact disc read-only memory” adalah sebuah piringan kompak dari jenis piringan optik (optical disc) yang dapat menyimpan data. CD-ROM juga berarti bahwa CD-ROM drive hanya bisa digunakan untuk membaca sebuah CD saja. Secara garis besar CD-ROM dibedakan menjadi 2 menurut tipenya yaitu : ATA/IDE dan SCSI. Yang paling mendasari dari perbedaan tersebut adalah kecepatannya. Kalau ATA memiliki kecepatan 100-133Mbps sedangkan SCSI memiliki kecepatan kira-kira 150 Mbps. Untuk tipe SCSI biasanya ditemuka pada CR RW drive. Pada CD ROM terdapat tulisan 56X artinya kemampuan memberikan kecepatan transfer data sebesar 56 x150 Kbps. Tipe CD RW juga biasanya dibedakan berdasarkan kemapuan membakar dan membaca. CD RW tipe 12x8x32 artinya memiliki kemampuan membakar pada CD R seccepat 12x, membakar pada CD RW secepat 8x, dan membaca CD R/CD RW/dengan kecepatan maksimal 32x.

FUNGSI CD ROM

Telah di jelaskan bahwa CD ROM mempunyai arti bahwa sebuah Hadware yang hanya bisa membaca CD saja. Selain kegunaan dasar tersebut CD ROM juga digunakan untuk melakukan penginstalasian sebuah OS (OPERATING SYSTEM), Game, atau Software-software lainnya. Atau melakukan booting pada saat msuk ke OS bila sebuah System tidak mau berjalan.

PERBEDAAN CD ROM DENGAN CD -R

Dari penjelasan diatas kita sudah mengetahui apa itu CD ROM dan fungsinya, tapi terkadang kita berpikir lalu bedanya dengan CD-R(Compact Disc-Recordable) dan semejenisnya apa? Kita dapat melihat perbedaan itu dari fungsinya. 
CD ROM sendiri adalah hardware atau bisa dibilang tempat/wadah bagi CD R, karena CD ROM sendiri biasanya digunakan untuk penginstalan OS(Operating System), Game, ataupun software lainnya dan juga CD ROM sendiri hanya menyimpan data. Sedangkan CD R sendiri tempat untuk menyimpan data dan data hanya bisa di burn sekali saja dan dengan setingan tertentu data bisa ditambahkan selama volume disk masih belum penuh.
Jadi perbedaannya adalah CD ROM ada tempat bagi CD R yang dapat menyimpan data dari CD R dan semacamnya, tapi kalau CD R tempat hanya untuk menyimpan data dan hanya bisa burn data tersebut sekali.


www.binus.ac.id
www.skyconnectiva.com

Kamis, 07 Mei 2015

Session 11-12 (Memory Management)

11.1 Memory Management
Membagi memori untuk menampung beberapa kebutuhan memori untuk proses yang akan dialokasikan untuk paket peralatan penunjang proses sebanyak mungkin ke dalam memori.

11.2 Persyaratan Memory Management

         a. Relokasi
Programmer tidak tahu di mana program ini akan ditempatkan di memori ketika dieksekusi. Sementara program mengeksekusi, dapat bertukar ke disk dan kembali ke memori utama di lokasi yang berbeda (pindah). Referensi memori harus diterjemahkan dalam kode untuk alamat memori yang sebenarnya fisik.


         b. Perlindungan

Proses seharusnya tidak dapat referensi lokasi memori proses lain tanpa izin. Mustahil untuk cek alamat mutlak dalam program sejak program ini dapat direlokasi .Harus diperiksa selama eksekusi .Sistem operasi tidak dapat mengantisipasi semua memori referensi program yang akan dibuat.

         c. Berbagi

Memungkinkan beberapa proses untuk mengakses bagian yang sama dari memori. Lebih baik untuk memungkinkan setiap proses (orang) akses ke salinan yang sama dari program daripada memiliki salinan mereka sendiri terpisah.
         d. Organisasi logis
Program yang ditulis dalam modul. Modul dapat ditulis dan disusun secara independen. Tingkat perlindungan yang berbeda yang diberikan kepada modul (read-only, jalankan saja).
         e. Organisasi fisik
Memori yang tersedia untuk program plus data mungkin tidak cukup .Overlay memungkinkan berbagai modul yang akan ditugaskan daerah yang sama dari memori. Programmer tidak tahu berapa banyak ruang akan tersedia

11.3 Alamat

Ada 3 jenis alamat yang sering kita kenal, yaitu: 
logis ->referensi ke lokasi memori independen dari tugas saat data ke memori terjemahan harus dilakukan ke alamat fisik.
relatif ->Alamat dinyatakan sebagai lokasi relatif terhadap beberapa titik yang diketahui.
fisik -> alamat absolut atau lokasi yang sebenarnya di memori utama.

11.4 Multiprogramming with fixed partition

            a. Partisi memori tetap 
Antrian input terpisah untuk setiap partisi, antrian input tunggal.
            b. Beberapa antrian masukan.
Ketika pekerjaan tiba, dapat dimasukkan ke dalam antrian masukan untuk partisi terkecil yang cukup besar untuk menampung itu. Setiap ruang di partisi tidak digunakan oleh pekerjaan hilang. Antrian untuk partisi besar kosong tapi antrian untuk partisi kecil penuh.
             c. Antrian input tunggal
Setiap kali sebuah partisi menjadi bebas, pekerjaan yang paling dekat dengan depan antrian yang cocok di dalamnya dapat dimuat. Mungkin membuang partisi yang besar pada pekerjaan kecil atau mencari antrian seluruh masukan setiap kali partisi menjadi bebas dan memilih pekerjaan terbesar yang cocok. Mendiskriminasikan pekerjaan kecil, sedangkan pekerjaan terkecil akan mendapatkan pelayanan yang terbaik
solusi:
Memiliki partisi setidaknya kecil. Pekerjaan tidak dapat dilewati untuk k kali.

11.5 Manajemen memori dengan bit

Bagian dari memori dengan 5 proses, 3 lubang tanda centang menunjukkan unit alokasi daerah yang diarsir bebas
Sesuai peta bit Informasi yang sama sebagai daftar

11.6 Memory Allocation Algorithm

       1.First Fit
            tercepat, Mungkin memiliki banyak proses dimuat di ujung depan memori yang harus dicari lebih ketika mencoba untuk menemukan blok gratis.
       2.Next Fit
       3.Best Fit
            Memilih blok yang terdekat dengan ukuran permintaan. Pemain terburuk keseluruhan. Sejak blok terkecil ditemukan untuk proses, jumlah terkecil fragmentasi pemadatan memori kiri harus dilakukan lebih sering.
       4.Worst Fit
       5.Quick Fit
       6.Buddy System
            Seluruh tersedia ruang diperlakukan sebagai satu blok 2U.Jika permintaan dari ukuran s sehingga 2U-1 <s <= 2U, seluruh blok dialokasikan .Jika tidak block dibagi menjadi dua teman yang sama. Proses berlanjut sampai blok besar terkecil dari atau sama dengan s dihasilkan.



























Session 9-10 (Deadlock)

9.1 Deadlock
      Deadlock sendiri dapat kita artikan sebagai beberapa proses yang merebutkan resource(hardisk atau printer dll) yang sama.


Gambar a menjelaskan kondisi dimana deadlock belum terjadi.
Gambar b menjelaskan kondisi dimana deadlock telah terjadi yang mengakibatkan seluruh mobil tidak dapat bergerak.

9.2 Kondisi Terjadinya Deadlock
      Ada 4 kondisi yang dapat memungkinkan terjadinya deadlock, yaitu :
         a. Mutual Exclusion
             -> Kondisi Mutual Exclusion sendiri sebenarnya merugikan banyak proses karena Mutual Exclusion sendiri hanya 1 proses yang dapat menggunakan resource, sedangkan yang lain tidak.
         b. Hold and Wait
             -> Kondisi Hold and Wait sendiri memiliki keunikan, yaitu kondisi dimana 1 proses  akan menggunakan resource, tetapi proses akan menahan resources tersebut sampai menemukan proses lain yang ingin menggunakan.
         c. No Preemption
             -> Kondisi No Preemption, ketika suatu proses menggunakan resource, proses             tersebut tidak akan mau melepaskan ke proses lain sampai proses tersebut rela untuk melepaskan resourcenya.
         d. Circular Wait
             -> Kondisi Circular Wait, dimana proses B menunggu proses A, proses C menunggu proses B dan seterusnya. 

9.3 Strategi untuk Menangani Deadlock
      Strategi untuk menangani Deadlock :
      a. Abaikan masalah (Ostrich algorithm)
      b. Biarkan deadlock terjadi, lalu deteksi dan ambil tindakan untuk menanganinya
      c. Dinamis menghindari dengan hati-hati alokasi sumber daya.
      d. Pencegahan, oleh secara terstuktur meniadakan satu dari empat kondisi yang diperlukan.
9.4 Cara Menghindari Deadlock.
       a. Mutual Exclusion
            -> Pencegahan Mutual Exclusion adalah dengan cara membuat proses lainnya hanya dapat membaca resource yang sedang dijalankan oleh proses lain, dan proses tersebut tidak dapat menulis atau mengedit.
       b. Hold and Wait
            -> Pencegahan Hold and Wait adalah dengan cara harus menjamin ketika proses telah meminta resource, proses tersebut tidak boleh menggunakan resource lain.
      c. No Preemption
            -> Pencegahan No Preemption adalah dengan cara kita harus mempertimbangkan kapan proses tersebut menggunakan suatu resource dan kapan harus menggantinya.
      d. Circular Wait
            -> Pencegahan Circular Wait adalah dengan cara kita harus memberika prioritas nomor kepada proses yang ingin menggunakan suatu resource.

9.5 Starvation
Algoritma untuk mengalokasikan sumber daya mungkin untuk memberikan pekerjaan terpendek pertama Karya besar untuk beberapa pekerjaan singkat dalam suatu sistem
Dapat menyebabkan pekerjaan lama untuk ditunda tanpa batas waktu meskipun tidak diblokir
solusi:
Pertama datang, yang pertama dilayani kebijakan 





Session 7-8 (Concurrency)

7.1 Concurrency
Komunikasi antar proses berbagi sumber daya, Sinkronisasi beberapa proses, Alokasi waktu prosesor

7.2 Masalah Saat Concurrency
      a.. Berbagi sumber daya global
      b. Pengelolaan alokasi sumber daya
      c. Pemrograman kesalahan sulit untuk menemukan

Contoh : 
void echo()
{
  chin = getchar();
  chout = chin;
  putchar(chout);
}
Process P1  Process P2
in = getchar();  in = getchar();  
chout = chin;    chout = chin;
putchar(chout);  putchar(chout); 

7.3 O/S Concern
      a. Melacak proses yang aktif
      b. Mengalokasikan dan DEALLOCATE sumber
             waktu prosesor
             ingatan
             arsip
             I / O
     c. Melindungi data dan sumber
     d Hasil proses harus independen dari kecepatan eksekusi proses konkuren lainnya

7.4 Kerjasama antara Proses
       a. Dengan Berbagi
-> Menulis harus saling eksklusif
-> Bagian penting yang digunakan untuk menyediakan integritas data
       b. Dengan Komunikasi
->Pesan yang melewati
->Mutual exclusion bukan persyaratan kontrol
->Mungkin untuk memiliki kebuntuan
->Setiap proses menunggu pesan dari proses lainnya
->.Mungkin untuk memiliki kelaparan
->Dua proses mengirim pesan satu sama lain sementara proses lain menunggu pesan

7.5 Mutual Exclusion by Busy Waiting
         a. Menonaktifkan interupsi
         b. Variabel kunci
         c. Pergantian ketat
         d. Solusi Peterson
         e. Instruksi TSL

7.6 Semaphore
Variabel khusus yang disebut semaphore digunakan untuk sinyal. Jika suatu proses menunggu sinyal, itu ditangguhkan sampai sinyal yang dikirimkan. Tunggu dan operasi sinyal tidak dapat terganggu
Antrian digunakan untuk menyimpan proses menunggu di semaphore. Semaphore adalah variabel yang memiliki nilai integer. Mungkin diinisialisasi ke nomor nonnegatif. Operasi menunggu decrements nilai semaphore. Operasi sinyal increment nilai semaphore

7.7 Masalah klasik IPC
Dining Philosopher’s Problem : 
   a. Philosophers eat/think
   b. Eating needs 2 forks
   c. Pick one fork at a time 
   d. How to prevent deadlock 

8.1 Monitors
Pemrograman konstruksi bahasa yang mendukung akses dikendalikan ke data bersama
Compiler menambahkan sinkronisasi otomatis
Ditegakkan saat runtime merangkum. Struktur data bersama
Prosedur / fungsi yang beroperasi pada data. Sinkronisasi antara proses memanggil prosedur tersebut. Hanya satu proses aktif dalam monitor pada setiap saat
Semua prosedur merupakan bagian dari bagian kritis

Untuk memungkinkan proses untuk menunggu di dalam monitor, variabel kondisi harus dinyatakan, sebagai
Kondisi x;
Variabel kondisi hanya dapat digunakan dengan operasi menunggu dan sinyal.

operasi
menunggu (x);? berarti bahwa proses memohon operasi ini ditunda sampai memanggil proses lain
sinyal (x);

Operasi sinyal resume tepat satu proses ditangguhkan. Jika tidak ada proses ditunda, maka operasi sinyal tidak berpengaruh.

8.2 Message Passing
Mengkomunikasikan informasi dari satu proses lain melalui: -mengirim (dest, & pesan)
menerima (sumber, & pesan).
Penerima dapat menentukan APAPUN. Receiver dapat memilih untuk memblokir atau tidak
Berlaku untuk single dan multi-processor dan sistem terdistribusi. Pre-tanggal Semaphore
Tidak memerlukan ruang alamat bersama!

   a. kirim () operasi
sinkronis
Pengembalian setelah data dikirim
Blok jika buffer penuh
asynchronous
Pengembalian secepat I / O mulai
Selesai?
cek eksplisit
Sinyal atau pengakuan
Blok jika buffer penuh (mungkin)
     b. menerima () operasi
sinkronis
Pengembalian jika ada pesan
Blok jika tidak
asynchronous
Pengembalian pesan 1 jika ada satu

Pengembalian indikasi jika ada pesan

Komunikasi tidak langsung - kotak surat. Pesan akan dikirim ke daerah bernama - kotak.
Proses membaca pesan dari kotak surat. Mailbox harus diciptakan dan dikelola. Blok pengirim jika kotak penuh. Memungkinkan banyak-banyak komunikasi

Dalam satu mesin dan di antara mesin
MACH (CMU)

GEC 4080 (British telpehoneexchanges )

8.3 Message passing Issues
       a. Pesan orak (checksum) 
       b. Pesan hilang (pengakuan)
       c. Kehilangan pengakuan (urutan no.)
       d. Tujuan unreachable (bawah, berakhir)
       e. penamaan
       f. pembuktian keaslian
       g. Kinerja (menyalin, bangunan pesan)

  www.binus.ac.id
  www.skyconnectiva.com









Session 4-6 (Process and Threads)

4.1 Process Model
      a. Multiprogramming of four programs. 
      b. Conceptual model of four independent, sequential processes. 
      c. Only one program is active at once.

4.2 Process Creation
Event Event yang menyebabkan proses creation
      a. Inisialisasi sistem.
      b. Pelaksanaan sistem proses penciptaan panggilan dengan proses yang berjalan. (fork ())
      c. Sebuah permintaan pengguna untuk membuat proses baru.
      d. Inisiasi pekerjaan batch.

4.3 Process
Juga disebut tugas. Pelaksanaan program individu. Dapat ditelusuri daftar urutan instruksi yang mengeksekusi.


4.4 Suspended Process
Prosesor lebih cepat daripada I / O sehingga semua proses dapat menunggu I / O. Swap proses ini ke disk untuk membebaskan lebih banyak memori. Suatu state yang di blok menjadi state yang ditunda ketika bertukar ke disk. 
Dua state baru : Diblokir,ditunda, dan  Ready, ditunda

4.5 Process Table
Dimana proses terletak. Atribut yang diperlukan untuk manajemen proses ID state proses. Lokasi di memori.

4.6 Process Location
Proses mencakup set program yang akan dieksekusi. Lokasi data untuk variabel lokal dan global
Setiap konstanta didefinisikan tumpukan .Kontrol proses blok. Koleksi atribut gambar proses.
Koleksi program, data, stack, dan atribut.

4.7 Process Termination
a. Acara yang menyebabkan penghentian proses
b. Keluar normal (sukarela).
c. Kesalahan exit (sukarela).
d. Kesalahan fatal (disengaja).
e. Dibunuh oleh proses lain (disengaja). 

Ketika program panggilan garpu, proses duplikat, yang disebut proses anak, yang dibuat
Proses induk terus melaksanakan program dari titik yang disebut garpu.
Proses anak juga, mengeksekusi program yang sama dari tempat yang sama garpu pid_t (void)

Pengembalian: 0 pada anak, proses ID anak di orangtua, -1 pada kesalahan
selesai biasa
Batas waktu terlampaui
memori tidak tersedia
pelanggaran Bounds
kesalahan perlindungan
Misalnya menulis untuk read-only file yang
kesalahan aritmatika
waktu overrun
Proses menunggu lebih lama dari maksimum yang ditentukan untuk sebuah acara
I / O gagal
instruksi tidak valid
terjadi ketika mencoba untuk mengeksekusi data
instruksi istimewa
penyalahgunaan Data
Intervensi sistem operasi
seperti ketika deadlock terjadi
Induk berakhir sehingga proses anak mengakhiri
permintaan orang tua

4.9 Alasan dari Proces Switch
clock interrupt
Proses telah dieksekusi untuk maksimum yang diijinkan irisan waktu
I / O interrupt
memori kesalahan
alamat memori di virtual memory sehingga harus dibawa ke memori utama
perangkap
kesalahan terjadi
dapat menyebabkan proses untuk pindah ke negara Keluar
pengawas panggilan
seperti file terbuka

4.10  Menggunakan System Call
a. Fork();
b. System();
c. Exec();

4.11 System
Mengeksekusi perintah dari dalam program
- Banyak sebagai jika perintah itu telah diketik ke shell
• Membuat sub proses menjalankan standar Bourne shell
(/ bin / sh) dan tangan perintah ke shell bahwa untuk
eksekusi; tunduk pada fitur, keterbatasan dan keamanan
shell; pada kebanyakan sistem GNU / Linux, menunjuk untuk bash

4.12 Fork
Ketika program panggilan garpu, proses duplikat, yang disebut proses anak, yang dibuat
Proses induk terus melaksanakan program dari titik yang disebut garpu.
Proses anak juga, mengeksekusi program yang sama dari tempat yang sama garpu pid_t (void)

Pengembalian: 0 pada anak, proses ID anak di orangtua, -1 pada kesalahan

5.1 Threads
eksekusi state (saat sedang berjalan, siap, dll). Disimpan konteks thread ketika tidak berjalan
Memiliki eksekusi tumpukan. Beberapa penyimpanan statis per-benang untuk variabel lokal
Akses ke memori dan sumber daya dari proses yang semua thread dari sebuah proses berbagi ini

Thread memungkinkan beberapa eksekusi berlangsung dalam lingkungan proses yang sama
Ligthweight proses  karena benang memiliki beberapa sifat dari proses
Multithreading  memungkinkan beberapa thread dalam proses yang sama


Kolom pertama berisi beberapa item bersama oleh semua thread dalam proses. Yang kedua berisi beberapa item pribadi ke setiap thread.


5.2 Manfaat Thread
a. Waktu yang panjang untuk membuat thread baru dari suatu proses
b. Kurang waktu untuk mengakhiri thread dari proses
c. Kurang waktu untuk beralih di antara dua benang dalam proses yang sama
d. Sejak benang dalam memori yang sama berbagi proses dan file, mereka dapat berkomunikasi satu sama lain tanpa melibatkan kernel
e. lebih baik banyak thread dalam aplikasi

5.3 Implementasi Thread
USER SPACE
keuntungan:
a. Memungkinkan setiap proses untuk memiliki algoritma penjadwalan sendiri 
b. Perfomance

kekurangan:
a. Pelaksanaan memblokir panggilan sistem
b. Tidak ada thread lain dapat berjalan kecuali thread pertama secara sukarela menyerahkan CPU

KERNEL SPACR
keuntungan:
Tidak membutuhkan panggilan sistem non-blocking baru

kekurangan:
biaya yang lebih besar untuk menciptakan dan destryoing benang


Multiplexing user-level thread ke thread tingkat kernel-

5.4 Pop Up Thread
Penciptaan thread baru ketika pesan tiba.
      (a) Sebelum pesan tiba.  (b) Setelah pesan tiba.


5.5 Hubungan Thread dengan Process
      a. 1:1 -> 1 proces 1 thread
      b. M:1 -> banyak thread 1 proces
      c. 1:M -> 1 thread menjalankan banyak proces
      d. M:N -> kombinasi ketiga diatas

6.1 Sifat Proces
a.Process-bound
b.I/O bound

6.2 CPU Scheduler
Memilih dari antara proses di memori yang siap untuk mengeksekusi, dan mengalokasikan CPU untuk salah satu dari mereka.
Keputusan penjadwalan CPU dapat terjadi ketika proses:
1. Saklar dari berjalan ke keadaan menunggu.
2. Switch dari berjalan ke keadaan siap.
3. Switch dari menunggu untuk siap.
4. Menghentikan.
Penjadwalan bawah 1 dan 4 adalah nonpreemptive.
Semua penjadwalan lainnya adalah preemptive.

6.3 Dispatcher
Modul Dispatcher memberikan kontrol CPU kepada proses yang dipilih oleh scheduler jangka pendek; ini melibatkan:
switching konteks
beralih ke mode pengguna
melompat ke lokasi yang tepat dalam program pengguna untuk me-restart program yang
Dispatch latency - waktu yang diperlukan untuk operator untuk menghentikan satu proses dan mulai berjalan lagi.

6.4 Scheduling Criteria
Utilisasi CPU - menjaga CPU sesibuk mungkin
Throughput - # dari proses yang menyelesaikan eksekusi per satuan waktu
Waktu Turnaround - jumlah waktu untuk mengeksekusi proses tertentu
Menunggu waktu - jumlah waktu proses telah menunggu dalam antrian siap
Response time - jumlah waktu yang dibutuhkan dari saat permintaan disampaikan sampai tanggapan pertama diproduksi, tidak keluaran (untuk lingkungan time-sharing)

6.5 Optimization Criteria
•Max CPU utilization
•Max throughput
•Min turnaround time
•Min waiting time
•Min response time

6.6 Tujuan dari Scheduling

6.7 Batch Scheduling Algorithm
Siapa Cepat Dia Dapat
Proses ditugaskan CPU dalam urutan mereka memintanya

keuntungan:
Mudah dipahami dan mudah program

kerugian:
Pekerjaan singkat mungkin menunggu terlalu lama jika pekerjaan lama di depan itu

  Process  Burst Time 
  P1  24
   P2   3
   P3
Suppose that the processes arrive in the order: P1 , P2 , P3  The Gantt Chart for the schedule is:
•Waiting time for P1  = 0; P2  = 24; P3 = 27
  Average waiting time:  (0 + 24 + 27)/3 = 17

Penggabungan setiap proses panjang CPU burst berikutnya. Gunakan panjang ini untuk menjadwalkan proses dengan waktu terpendek.
Dua skema:
nonpreemptive - sekali CPU diberikan ke proses itu tidak dapat mendahului sampai selesai CPU burst.
preemptive - jika proses baru datang dengan panjang CPU burst lebih kecil dibandingkan saat proses eksekusi saat tersisa, mendahului. Skema ini dikenal sebagai? Shortest-Remaining-Time-First (SRTF).
SJF optimal - memberikan waktu tunggu rata-rata minimal untuk satu set proses.

  Process  Arrival Time  Burst Time
  P1  0.0  7
   P2.0  4
   P3  4.0  1
   P4  5.0  4
•SJF (non-preemptive)

•Average waiting time = (0 + 6 + 3 + 7)/4 = 4

  Process  Arrival Time  Burst Time
  P1  0.0  7
   P2.0  4
   P3  4.0  1
   P4  5.0  4
•SJF (preemptive)
•Average waiting time = (9 + 1 + 0 +2)/4 = 3

6.8 Interactive Scheduling Algorithm
•Round-robin scheduling
•Priority scheduling
•Multiple queues
•Shortest process next
•Guaranteed scheduling
•Lottery scheduling
•Fair-share scheduling

  Process           Burst Time    Arrival Time
  P1                          53                 0
   P                17                20
   P3                            68                25
   P4                            24                30
•The Gantt chart is:
                  P2         P1        P3           P4        P1        P3           P4        P3          P3
                  P1         P3        P4           P1        P3        P4           P3
                               P4        P1           P3        P4


Setiap proses diberikan prioritas, dan proses runnable dengan prioritas tertinggi yang diperbolehkan untuk berjalan
Scheduler dapat menurunkan prioritas proses yang sedang berjalan
Penjadwalan prioritas digunakan antara kelas dan penjadwalan round-robin dalam setiap kelas

6.9 Policy vs Mechanism
Pisahkan apa yang diperbolehkan untuk dilakukan dengan bagaimana hal itu dilakukan
proses tahu yang anak-anaknya benang yang penting dan perlu prioritas

Algoritma penjadwalan parameter
mekanisme di kernel

Parameter diisi oleh proses pengguna
kebijakan yang ditetapkan oleh proses pengguna

6.10 Thread Scheduling
(a) Kemungkinan penjadwalan thread user-level dengan proses kuantum 50-msec dan benang yang
berjalan 5 msec per CPU burst.
(b) Kemungkinan penjadwalan thread kernel-level dengan karakteristik yang sama seperti (a).