Langsung ke konten utama

Penjadwalan Proses



Penjadwalan Proses


Disusun Oleh:
Dhea Aulia Andini (11116920)
Dandy Damario H (11116688)
Ida Bagus Bayuna R (13116366)
Mochammad Ichsan S (14116463)
Muhammad Nico F (15116000)
Wing Aji Pradipta (17116679)

Sistem Informasi
Universitas Gunadarma
Tahun Ajaran 2017/2018

Kata Pengantar

Puji dan syukur kami panjatkan kehadirat Allah SWT, atas limpahan rahmat dan karunia nya baik berupa kesehatan maupun kesempatan sehingga penyusunan makalah ini dapat terselesaikan sebagaimana mestinya.
Makalah dengan judul “Penjadwalan Proses” merupakan tugas yang diberikan oleh Dosen Mata Kuliah Sistem Operasi. Mohon maaf jika ada kesalahan dan kekurangan dalam makalah ini.

BAB I
Pendahuluan

Latar belakang

Sistem operasi merupakan perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan perangkat lunak aplikasi seperti program-program pengolah kata dan peramban web. Secara umum, sistem operasi adalah perangkat lunak pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan (proses booting).Sedangkan software-software lainnya dijalankan setelah sistem operasi berjalan, dan sistem operasi akan melakukan layanan inti untuk software-software tersebut. Layanan inti tersebut seperti akses ke disk, manajemen memori, penjadwalan tugas, dan antarmuka user GUI/CLI sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh sistem operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan “kernel” suatu sistem operasi.

BAB II
Pembahasan

Pengertian dan Sasaran Penjadwalan Proses

Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme dalam sistem operasi yang berkaitan dengan urutan kerja yang dilakukan oleh sistem komputer.

Penjadwalan proses bertugas untuk memutuskan:
1. Proses apa yang harus berjalan.
2. Kapan dan berapa lama proses tersebut berjalan

Adapun kriteria untuk mengukur dan optimasi kinerja penjadwalan proses:
1. Adil (fairness)
Adalah proses-proses diperlakukan semua sama, yaitu mendapat jatah waktu pemroses yang sama dan tidak ada proses yang tidak mendapatkan layanan pemroses sehingga mengalami kekurangan waktu.
2. Efisiensi (eficiency)
Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses.
3. Waktu tanggap (response time)

Terdapat 3 jenis waktu tanggap:
a) Sistem interaktif
Didefinisikan sebagai waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar. Waktu tanggap ini disebut terminal response time.
b) Sistem waktu nyata
Didefinisikan sebagai waktu dari saat kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi, disebut event response time.
c) Turnaround time
Didefinisikan sebagai waktu yang dihabiskan dari saat program atau mulai masuk ke sistem sampai proses diselesaikan oleh sistem. Waktu yang dimaksud adalah waktu yang dihabiskan di dalam sistem, diekspresikan sebagai penjumlah waktu eksekusi (waktu pelayanan job) dan waktu menunggu:
Turn arround time = waktu eksekusi + waktu menunggu.
d) Throughput
Didefinisikan sebagai jumlah kerja yang dapat diselesaikan dalam satu unit waktu. Cara untuk mengekspresikan throughput adalah dengan jumlah job pemakai yang dapat dieksekusi dalam satu unit/interval waktu.
Kriteria-kriteria tersebut saling bergantung dan dapat pula saling bertentangan sehingga tidak dimungkinkan optimasi semua kriteria secara simultan.
Contohnya untuk memberi waktu tanggap kecil memerlukan penjadwalan yang sering beralih ke antara proses-proses itu. Cara ini meningkatkan overhead sistem dan mengurangi throughput.
Oleh karena itu dalam menentukan kebijaksanaan perancangan penjadwalan sebaiknya melibatkan kompromi diantara kebutuhan-kebutuhan yang saling bertentangan. Kompromi ini bergantung sifat dan penggunaan sistem komputer.

Sasaran penjadwalan berdasarkan kriteria-kriteria optimasi tersebut:
1. Menjamin tiap proses mendapat pelayanan dari pemroses yang adil.
2. Menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi mencapai maksimum. Pengertian sibuk adalah pemroses tidak menganggur, termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai dan sistem operasi.
3. Meminimalkan waktu tanggap.
4. Meminimalkan turn arround time.
5. Memaksimalkan jumlah job yang diproses persatu interval waktu. Lebih besar angka throughput, lebih banyak kerja yang dilakukan sistem.

Tipe Penjadwalan Proses

Terdapat 3 tipe penjadwal proses yang dilakukan secara bersama-sama pada sistem operasi yang kompleks, yaitu:

1. Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama. Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
2. Penjadwal jangka menengah (medium term scheduler)
Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif.
Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya tertunda hilang dan proses dimasukkan kembali ke memori utama dan ready.
3. Penjadwal jangka panjang (long term scheduler)
Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, perangkat masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.
Sasaran penjadwalan berdasarkan tipe-tipe penjadwalan:

a) Memaksimumkan kinerja untuk memenuhi satu kumpulan kriteria yang diharapkan.
b) Mengendalikan transisi dari suspended to ready (keadaan suspend ke ready) dari proses-proses swapping.
c) Memberi keseimbangan job-job campuran.

Tipe-tipe penjadwalan proses

Strategi Penjadwalan Proses


Terdapat dua strategi penjadwalan, yaitu:
1. Penjadwalan nonpreemptive (run to completion)
Proses diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai.
2. Penjadwalan preemptive
Proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil alih proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu. Berguna pada sistem dimana proses-proses yang mendapat perhatian/tanggapan pemroses secara cepat, misalnya:
a) Pada sistem realtime, kehilangan interupsi (tidak layani segera) dapat berakibat fatal.
b) Pada sistem interaktif, agar dapat menjamin waktu tanggap yang memadai. Penjadwalan secara preemptive baik tetapi harus dibayar mahal. Peralihan proses memerlukan overhead (banyak tabel yang dikelola). Supaya efektif, banyak proses harus berada di memori utama sehingga proses-proses tersebut dapat segera running begitu diperlukan. Menyimpan banyak proses tak running benar-benar di memori utama merupakan suatu overhead tersendiri.

Tipe-tipe penjadwalan yang dikaitkan dengan diagram state

Algoritma-algoritma dalam Penjadwalan Proses


1. Nonpreemptive, menggunakan konsep:
a) FIFO (First In First Out) atau FCFS (First Come First Serve)
b) SJF (Shortest Job First)
c) HRN (Highest Ratio Next)
d) MFQ (Multiple Feedback Queues)
2. Preemptive, menggunakan konsep:
a) RR (Round Robin)
b) SRF (Shortest Remaining First)
c) PS (Priority Scheduling)
d) GS (Guaranteed Scheduling)

Klasifikasi lain selain berdasarkan dapat/tidaknya suatu proses diambil secara paksa adalah klasifikasi berdasarkan adanya prioritas di proses-proses, yaitu:
1. Algoritma penjadwalan tanpa berprioritas.
2. Algoritma penjadwalan berprioritas, terdiri dari:
a) Berprioritas statis
b) Berprioritas dinamis
BAB III
Kesimpulan

Dengan adanya penggunaan penjadwalan proses dalam sistem operasi, terwujud sebuah sistem operasi yang efisien, hemat daya, dan waktu dalam mengerjakan banyak pekerjaan sekaligus.

Daftar Istilah

1. Utilisasi: Rasio input yang benar-benar digunakan dengan jumlah input yang tersedia. Utilisasi tenaga kerja adalah rasio waktu kerja aktual yang dihabiskan dengan jumlah total waktu kerja yang tersedia.
2. System call: Tata cara pemanggilan di program aplikasi untuk memperoleh layanan yang disediakan oleh sistem operasi. System call berupa rutin sistem operasi untuk keperluan tertentu yang spesifik.
3. Batch: Suatu model pengolahan data, dengan menghimpun data terlebih dahulu, dan diatur pengelompokkan datanya dalam kelompok-kelompok
4. Suspend: Menghentikan atau menonaktifkan sesuatu baik itu bersifat sementara (menunda) ataupun permanen.

Daftar Pustaka

http://singgih.staff.gunadarma.ac.id/Downloads/files/1785/TOT-SistemOperasi4-6.pdf
https://techno-inmyworld.blogspot.co.id/2014/04/pengertian-penjadwalan-prosestipe-tipe.html
http://www.pintarkomputer.org/2017/03/penjadwalan-proses-sistem-operasi.html
http://manajement-info.blogspot.co.id/2011/12/bab-v-sistem-operasi-penjadwalan-proses.html

Komentar

Postingan populer dari blog ini

Manajemen Layanan Sistem Informasi pada PT. Indofood Sukses Makmur Tbk

Pelayanan Sistem Operasi dan System Call

Review Aplikasi Synfig Studio