TEKNIK PENJADWALAN PROSESOR

Telah di Baca 7636 kali

Istilah-istilah :
1.    Pekerjaan / Job
User menyerahkan pekerjaan mereka pada komputer. Ada pekerjaan yang panjang, sedang dan pendek. Untuk dapat diolah oleh komputer harus dianalisis dahulu untuk mengetahui bagaimana sebaiknya pekerjaan itu dilakukan.
2.    Terobosan / Troughput
Pekerjaan dalam komputer dilaksanakan langkah demi langkah, sehingga dapat dikatakan bahwa troughput adalah banyaknya pekerjaan yang dapat diselesaikan oleh sistem komputer dalam satu satuan waktu.
3.    Tugas / Task
Program yang terdiri dari banyak bagian program dan bagian program yang dikerjakan merupakan tugas bagi sistem operasi.
a.    Tugas yang sedang dilaksanakan, adalah tugas yang menemukan semua sumber daya yang diperlukannya, termasuk prosesor.
b.    Tugas yang siap dilaksanakan, adalah tugas yang menemukan semua sumber daya yang diperlukannya, kecuali prosesor.
c.    Tugas yang belum dilaksanakan, adalah tugas yang belum menemukan sumber daya yang diperlukannya.
4.  Proses / Process
Tugas yang telah dijadwalkan untuk menemukan prosesor / tugas yang telah diterima oleh penjadwalan.

Gambar suatu contoh prosesor

Keterangan :
•    GK = galur kendali / control bus
•    GD = galur data / data bus, tempat informasi data berlalu lintas antar register
•    GA = galur alamat / address bus, tempat informasi alamat memori berlalu lintas antar register karena setiap kali hanya ada 1 informasi dalam galur ini, maka lalu lintas diatur oleh tanda waktu dari kunci waktu. Tanda waktu dibentuk oleh basis waktu
•    A = akumulator, register serba guna yang dapat menerima  berbagai informasi
•    SLA = satuan logika dan aritmatika / ALU, tempat pengolahan, contohnya untuk menghitung 3+4=?, maka data 3 diletakkan di register A dan data  di register B. proses penjumlahan terjadi di SLA / ALU, hasil = 7 diletakkan kembali di register A
•    B = register, register yang menerima informasi yang akan diolah bersama oleh isi register A
•    PT = pencacah program / program counter, program terletak dalam memori kerja pada alamat memori tertentu. PT menerima alamat memori awal saat diolah oleh prosesor dan juga menyaring dan menentukan alamat memori mana saja yang isinya akan dibawa ke prosesor dan hanya alamat yang sesuai dengan letak program yang sedang diolah yang diperbolehkan PT masuk ke prosesor. PT mencacah dirinya sebesar 1 cacahan dan dengan cara yang sama akan melayani alamat berikutnya sampai alamat terakhir.
•    RI = register instruksi, membawa dan menerima informasi dari memori kerja dan diperiksa.
•    SK = satuan kendali / control unit, menerima informasi  instruksi program dan sesuai dengan isi instruksi SK mengendalikan kegiatan dalam prosesor.
•    RA = register alamat / address register, mencatat alamat memori yang isinya akan dicapai alamat itu di memori kerja. Jika pembacaan data dari memori kerja, data / isi dari memori kerja dibaca dan disalin ke RD, tetapi jika pada penulisan data ke memori kerja, maka isi RD disalin ke alamat memori kerja.
•    RD = register data.
•    RD dan RA bekerja sama dalam kegiatan pengambilan dan pengiriman data dari dan ke memori kerja.

2 siklus kerja prosesor :
1.    Siklus Jemput
a.    PT berisi alamat awal program pada memori kerja yang disesuaikan dengan isinya di memori kerja
b.    RA = PT, alamat memori PT diteruskan ke RA
c.    RA  RD, isi program diambil dari memori kerja dan diletakkan di RD
d.    RI = RD, dari RD program diteruskan ke RI
e.    PT= PT + 1, pencacah untuk melanjutkan siklus berikutnya
f.    Go to point b
2.    Siklus Kerja
a.    RI = SK, isi program di RI akan diteruskan ke SK, RI berisi instruksi untuk melaksanakan sesuatu
b.    SK  seluruh kegiatan di dalam prosesor dikendalikan sehingga kerja yang dimaksud oleh bagian program itu dirampungkan.

2 jenis kerja / proses :
1.    Tugas / proses sistem, berasal dari program sistem yaitu dari sistem bahasa, utilitas, operasi, dimana prosesor melayani sistem (prosesor dikuasai sistem / kontek sistem)
2.    Tugas / proses aplikasi, berasal dari program aplikasi, dimana prosesor melayani aplikasi (prosesor dikuasai aplikasi / kontek aplikasi)

Proses Serentak / Concurrent Process :
Yaitu prosesor menghadapi banyak tugas dan proses.
a.    Multiprogramming, sistem komputer lebih dari 1 program sekaligus dalam pelaksanaan proses.
b.    Multitasking, banyak bagian program yang dipersiapkan untuk diolah oleh prosesor namun belum sempat dijadwalkan untuk memperoleh prosesor.
c.    Multiprocessing, sejumlah tugas yang telah dijadwalkan untuk menggunakan prosesor.
d.    Multiplexing, menggunakan pertukaran kendali dalam selang waktu terpisah-pisah.
e.    Time sharing / rentang waktu, secara bersamaan sejumlah pemakai dapat menggunakan  1 sistem komputer, sehingga setiap pemakai merasa bahwa seluruh sistem komputer seolah-olah untuk dirinya.
Proses Berurutan :

Sejumlah proses berlangsung secara berselingan dan tidak ada diantara mereka yang bertumpang tindih waktu, sebelum 1 proses selesai, proses berikutnya belum bekerja.

Proses Paralel :

–          pada proses tunggal, proses serentak bukan proses paralel karena proses tersebut di gali 1 demi 1, sepenggal demi sepenggal.

–          Pada proses jamak, proses dapat dilaksanakan secara serempak diantara banyak prosesor sehingga disebut proses paralel

Proses Serentak  Berpenggalan :

Ada penggalan dari 1 proses yang berselingan dengan penggalan dari proses lain dan ada penggalan dari proses pertama yang bertumpang tindih waktu dengan penggalan proses kedua.

Istilah dalam penjadwalan proses :
1.    Scheduler adalah bagian sistem operasi yang mengatur penjadwalan eksekusi proses-proses.
2.    Algoritma penjadwalan (scheduling algorithm) adalah algoritma yang digunakan.
3.    Penjadwalan Proses
a.    Antrian, karena banyak proses yang muncul secara serentak maka dibuat antrian di depan prosesor, yang berada dalam keadaan siap dan hanya ada 1 proses yang berada dalam status kerja
b.    Prioritas, mendahulukan pada antrian proses karena tidak semua proses sama pentingnya, sehingga dibuat suatu prioritas. Dalam prioritas, pekerjaan pada prosesor diselesaikan dahulu baru proses berprioritas akan di proses
c.    Preempsi, sama dengan prioritas, tetapi pada preempsi jika ada proses yang mendapatkan preempsi maka preemsi akan menghentikan kerja prosesor dan mengeluarkan pekerjaan di dalam prosesor itu, sehingga proses berpreempsi dapat dilayani prosesor. Dan setelah proses berpreempsi selesai dilaksanakan, prosesor akan melaksanakan sisa proses yang dikeluarkan dari pekerjaannya tadi

4.    Jangka penjadwalan
Semua antrian dan penantian (contohnya yang dikeluarkan karena preempsi.
a.    Penjadwalan jangka pendek / short term scheduling / low level scheduling, yaitu mengurus masuknya antrian siap ke prosesor serta antrian siap ke alat peripheral I/O, yang mengurus prioritas dan preempsi.
b.    Penjadwalan jangka media / medium term scheduling / intermediate level scheduling, yaitu mengurus terhadap proses yang dikeluarkan dari prosesor yang belum rampung dikerjakan dan melanjutkan pekerjaan proses tersebut di prosesor.
c.    Penjadwalan jangka panjang / long term scheduling / high level scheduling, yaitu mengurus masuknya pekerjaan baru berupa penentuan pekerjaan baru mana yang boleh diterima dan tugas disini diubah menjadi proses.

Tujuan penjadwalan / kriteria baik tidaknya suatu algoritma penjadwalan :
a.    Fairness / pelayanan yang adil untuk semua pekerjaan
b.    Throughput / memaksimumkan throughput
c.    Efficiency / memaksimumkan pemakaian prosesor
d.    Overhead / meminimumkan waktu tunggu
e.    Pemakaian sumber daya seimbang
f.    Tidak terjadi penundaan waktu tak hingga
g.    Kegiatan sumber daya dapat dideteksi terlebih dahulu

Perhitungan kerja prosesor

1.     t adalah lama proses pada prosesor, lama waktu sesungguhnya yang diperlukan untuk mengolah proses dalam prosesor.

2.     T adalah lama tanggap pada prosesor, lama waktu yang diperlukan oleh prosesor sejak tiba sampai dengan rampung diolah oleh prosesor, terdapat waktu tunggu dalam antrian / dalam preempsi.

a.     Lama tanggap turn around time, yaitu memperhitungkan lama waktu yang diperlukan oleh proses untuk keluaran

b.    Lama tanggap respon time, yaitu tidak memperhitungkan lama waktu yang diperlukan oleh proses untuk keluaran
3.     Tr adalah lama tanggap rata-rata, yaitu perbandingan lama tanggap setiap proses (Ti) dengan jumlah proses serentak yaitu Tr = S Ti / N

4.     S adalah waktu sia-sia, waktu yang terbuang di dalam antrian / selama terkena preempsi yaitu selisih antara lama tanggap dengan lama proses (T-t)

5.     Rt adalah rasio tanggap, perbandingan antara lama proses terhadap lama tanggap, Rt = t / T

6.     Rp adalah rasio penalti, perbandingan antara lama tanggap terhadap lama proses, Rp = T/t dan karena t £ T, maka Rt < 1 dan Rp >1

 

Penjadwalan Prosesor
1.    Penjadwalan satu tingkat
a.    Pertama Tiba Pertama Dilayani (PTPD)
b.    Proses Terpendek Dipertamakan (PTD)
c.    Proses Terpendek Dipertamakan Preempsi (PTDP)
d.    Rasio Penalti Tertinggi Dipertamakan (RPTD)
e.    Putar Gelang (PG)
f.    Putar Gelang Prioritas Berubah (PGPB)

2.    Penjadwalan multi tingkat
a.    Antrian multi tingkat
b.    Antrian multi tingkat berbalikan
Penjadwalan Satu Tingkat

Pertama Tiba Pertama Dilayani (PTPD) / First Come First Served (FCFS)
Penjadwalan ini murni antrian, tanpa prioritas tanpa preempsi.

Proses Terpendek Dipertamakan (PTD) / Shortest Job First (SJF)
Penjadwalan ini adalah antrian dengan prioritas tanpa preempsi, yang menjadi prioritas adalah proses yang terpendek (tersingkat), makin pendek proses, makin tinggi prioritasnya.

Disusun urutan proses berdasarkan prioritasnya, yaitu CDAB, tetapi pada saat tiba = 0, proses terpendek C belum datang, maka mengerjakan proses A dahulu, setelah selesai pada saat 5, proses C sudah datang, sehingga C dikerjakan dan seterusnya seperti :

Keuntungan : memperkecil rata-rata lama tanggap
Kelemahan : layanan  terhadap  proses  panjang  bisa tidak terlayani jika proses pendek datang terus.
Proses Terpendek Dipertamakan Preempsi (PTDP)
Preemptive Shortest Job First (PSJF)
Penjadwalan ini dengan prioritas dengan preempsi, yang menjadi pioritas adalah  sisa proses. Proses yang terpendek bisa didahulukan dengan cara membandingkan sisa waktu proses yang sedang dilaksanakan dengan proses yang tiba, dengan  preempsi mengeluarkan proses yang sedang diolah untuk melaksanakan proses yang lebih pendek / singkat.

Karena preempsi, PTDP lebih baik dari PTD dalam hal kecilnya Tr, tetapi untuk proses panjang lebih lama dibandingkan PTD.

Rasio Penalti Tertinggi Dipertamakan (PTD) /
Highest Penalti Ratio Next (HPRN)
Penjadwalan dengan prioritas tanpa preempsi. Yang menjadi prioritas adalah besarnya rasio pinalti. Tetap mendahulukan proses pendek ditambah dengan mempertimbangkan rasio penaltinya, yang ditentukan berdasarkan lama waktu antriannya. Sehingga prioritas proses panjang akan turut meningkat melalui peningkatan rasio pinalti, sehingga pada suatu saat proses panjang pada antrian yang telah lama menunggu akan menyusul proses pendek.     S = (T-t) ; Rp = T/t = (s+t)/t


Putar Gelang (PG) / Round Robin (RR)
Penjadwalan ini tanpa prioritas, dengan preempsi. Secara bergiliran berdasarkan antrian (tanpa prioritas) prosesor melayani sejenak setiap proses tergantung besarnya quantum waktu. Secara berturut-turut proses yang dilayani prosesor dan belum rampung akan kembali ke akhir antrian yang ada, sehingga pergiliran ini berputar seperti gelang. Dan hanya proses yang telah rampung terlayani yang meninggalkan prosesor dan antrian tersebut. Jadi setiap proses dilayani selama quantum waktu tertentu secara bergiliran.
Quantum waktu : waktu sejenak yang digunakan oleh prosesor untuk melayani setiap proses. Perubahan quantum waktu membedakan hasil layanan terhadap antrian yang sama.

Pada saat 0, A dikerjakan 2x, saat 2, B sudah datang, dikerjakan 2x, saat 4, belum ada yang datang maka kerjakan A dan B lagi. Kemudian kerjakan C, D, E yang sudah datang, tetapi di antrian masih ada A, A dikerjakan kemudian E, sisa C, sisa E dan sisa C sampai selesai.

Secara merata, penjadwalan putar gelang memperlambat proses yang tiba dan secara merata pula semua proses dilayani oleh prosesor, sehingga biasanya digunakan pada proses interaktif jika semua proses menuntut dikerjakan segera.

Penjadwalan dengan prioritas berubah-ubah

Penjadwalan yang menggunakan prioritas dapat diubah-ubah menjadi prioritas lainnya.

1.         Penjadwalan tanpa preempsi dengan prioritas berubah-ubah  P = f(s,t,u)

Dengan :             p = prioritas;                 s = waktu sia sia;

t = lama proses u = tarif sewa

2.         Penjadwalan dengan preempsi dengan prioritas berubah-ubah (PGPB = putar gelang prioritas berubah-ubah) dimana prioritas tergantung pada proses lama dan proses baru, maka jika : a = koefisien untuk proses lama dan b = koefisien untuk proses baru,

b/a = 1 Þ prioritas sama

b/a = 0 Þ prioritas lama

b/a < 1 Þ prioritas baru < lama
b/a > 1 Þ prioritas baru > lama


Referensi klik di sini : SistemOperasi-4.X-1.pdf

Share entrepreneurship

Telah di Baca 7636 kali