Manajemen Proses Pada Sistem Operasi
-
Upload
bobby-afri-setiawan -
Category
Documents
-
view
10 -
download
0
description
Transcript of Manajemen Proses Pada Sistem Operasi
Manajemen Proses Pada Sistem Operasi
Secara informal, proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode
program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang
sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar
prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang
berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan
sebuah data section, yang berisikan variabel global. suatu program adalah satu entitas pasif,
seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam
suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi
selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.
Walau dua proses dapat dihubungkan dengan program yang sama, program tersebut dianggap
dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa pengguna dapat menjalankan copy
yang berbeda pada mail program, atau pengguna yang sama dapat meminta banyak copy dari
program editor. Tiap-tiap proses ini adakah proses yang berbeda dan walau bagian tulisan-text
adalah sama, data section bervariasi. Juga adalah umum untuk memiliki proses yang
menghasilkan banyak proses begitu ia bekerja.
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block)
yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process
ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi
lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang
menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki
prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan
dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua
proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama.
Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan
dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang
sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
DEFINISI PROSES
Terdapat beberapa definisi mengenai proses, antara lain :
a. Merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen proses adalah
masalah utama dalam perancangan sistem operasi.
b. Proses adalah program yang sedang dieksekusi.
c. .Proses adalah unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan
oleh sistem operasi.
Proses dalam sistem dapat dieksekusi secara bersama-sama, proses tersebut harus dibuat dan
dihapus secara dinamis. Maka, sistem operasi harus menyediakan suatu mekanisme umtuk
pembuatan proses dan terminasi proses.
Operasi pada Proses.
Metode-metode proses dalam system komputer
1. Batch Processing
Proses ini timbul akibat kesulitan dan kekurangan yang dijalani pada waktu komputer
dioperasikan tanpa sistem operasi yang disampaikan dalam satu kelompok (batch).
2. Multi Programming
Yaitu Suatu Usaha menambah pemanfaatan CPU dimana diusahakan agar CPU jangan sampai
dalam keadaan nganggur atau diam (tidak sedang melakukan eksekusi). Dilakukan dengan
memanfaatkan waktu pada saat suatu program sedang menunggu penyelesaian proses I/O dan
CPU dalam status tidak beroperasi
3. Time Sharing
Time Sharing adalah proses dimana waktu CPU dabagi menjadi satu unit yang disebut time slice
sehingga memungkinkan banyak User untuk mengeksekusi komputer
4. Real Time System
Sistem Real Time merupakan proses dimana waktu menjadi pertimbangan utamanya. Sistem
komputer yang real time harus mampu memproses data secepat mungkin dimana hasilnya akan
digunakan untuk mengetahui dari mana proses tadi berasal
5. Multi Processing
Didalam Sistem MultiProcessing beberapa proses digunakan untuk melakukan pemrosesan dan
menghemat waktu proses.
Pengendalian proses
Pengendalian proses adalah disiplin ilmu yang melibatkan statistika dan teknik yang
melibatkan pembuatan mekanisme dan algoritma untuk mengendalikan keluaran dari suatu
proses tertentu.
Sebagai contoh adalah sistem pengaturan temperatur ruangan agar temperatur ruangan terjaga
konstan setiap saat, misalnya pada 20 °C. Pada kasus ini, temperatur disebut sebagai variabel
terkendali. Selain itu, karena temperatur diukur oleh suatu termometer dan digunakan untuk
menentukan kerja pengendali (apakah ruangan perlu didinginkan atau tidak), temperatur juga
merupakan variabel input. Temperatur yang diinginkan (20 °C) adalah setpoint. Keadaan dari
pendingin (misalnya laju keluaran udara pendingin) dinamakan variabel termanipulasi karena
merupakan variabel yang terkena aksi pengendalian.
Alat pengendalian yang umum digunakan adalah Programmable Logic Controller (PLC). Alat ini
digunakan untuk membaca input analog maupun digital, melakukan serangkaian program logika,
dan menghasilkan serangkaian output analog maupun digital. Pada kasus sistem pengaturan
temperatur, temperatur ruangan menjadi input bagi PLC. Pernyataan-pernyataan logis akan
membandingkan setpoint dengan masukan nilai temperatur dan menentukan apakah perlu
dilakukan penambahan atau pengurangan pendinginan untuk menjaga temperatur agar tetap
konstan. Output dari PLC akan memperbesar atau memperkecil aliran keluaran udara pendingin
bergantung pada kebutuhan. Untuk suatu sistem pengendalian yang kompleks, perlu digunakan
sistem pengendalian yang lebih kompleks daripada PLC. Contoh dari sistem ini adalah
Distributed Control System (DCS) atau sistem SCADA.
Dalam prakteknya, sistem pengendalian proses dapat dikarakteristikkan dalam bentuk:
• Diskrit – Terdapat pada aplikasi manufaktur dan pengemasan. Pemasangan dengan bantuan
robot, seperti yang umum digunakan pada produksi otomotif, dapat dikarakteristikkan sebagai
pengendalian proses diskrit. Sebagian besar proses manufaktur diskrit melibatkan produksi
bagian produk secara diskrit, seperti pembentukan logam.
• Partaian – Beberapa aplikasi membutuhkan digabungkannya beberapa bahan baku spesifik
dengan cara tertentu pada jangka waktu tertentu untuk menghasilkan produk samping atau
produk akhir. Contohnya adalah pada produksi lem dan perekat, yang umumnya membutuhkan
pencampuran bahan baku dalam suatu reaktor yang dipanaskan selama periode waktu tertentu.
Contoh lain adalah pada produksi makanan dan obat. Proses partaian biasanya dilakukan untuk
memproduksi produk dengan kapasitas rendah hingga sedang.
• Kontinu – Seringkali proses produksi berlangsung secara terus menerus tanpa terhenti.
Pengendalian temperatur air pada jaket pemanas secara terus menerus adalah contoh
pengendalian proses secara kontinu. Contoh produksi yang berlangsung secara kontinu adalah
produksi bahan bakar. Proses kontinu pada proses produksi digunakan untuk memproduksi
produk dengan kapasitas besar.
Contoh
Sebuah termostat adalah contoh sederhana sistem pengendalian dengan loop tertutup: secara
konstan mengukur temperatur dan mengatur bukaan kerangan untuk meningkatkan atau
menurunkan temperatur ruangan sesuai dengan pengaturan pengguna.
Penjadwalan Proses
A. Deskripsi Penjadwalan Proses
• Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi
yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.
• Sedangkan proses merupakan unit kerja terkecil yang secara individu memiliki sumberdaya
atau unit pemilikan sumberdaya.
Tugas penjadwalan diantaranya adalah sebagai berikut :
• Memutuskan proses yang berjalan.
• Memutuskan kapan dan selama berapa lama proses itu berjalan.
Sasaran utama dalam penjadwalan proses adalah :
• Adil (fairness)
Adil adalah proses-proses diperlukan sama yaitu mendapat jatah waktu pemrosesan yang sama
dan tak ada pemroses yang tak kebagian layanan pemroses sehingga mengalami (starvation).
• Efisiensi
Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses.
• Waktu tanggap (response time), dibagi menjadi :
1. Sistem Interaktif
Waktu tanggap dalam sistem interaktif didefinisikan sebagai waktu yang dihabiskan dari saat
karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul dilayar
(terminal). Waktu tanggap ini disebut terminal response time
2. Sistem Realtime
Pada sistem waktu nyata (real-time), waktu tanggap di definisikan sebagai waktu dari saat
kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud
dieksekusi, disebut event response time. Sasaran penjadwalan adalah meminimalkan waktu
tanggap.
3. Turn Arround Time
Waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem sampai proses
diselesaikan sistem.
4. Throughput
Throughput adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu.
B. Tipe-tipe Penjadwalan
• Penjadwalan jangka pendek (short-termscheduller)
Penjadwalan ini bertugas menjadwalkan alokasi pemroses diantara proses-proses ready
dimemori utama.
• Penjadwalan jangka menengah (medium-termscheduller)
Penjadwalan jangka menengah adalah menangani proses-proses swapping (aktivitas pemindahan
proses yang tertunda dari memory utama ke memory sekunder)
• Penjadwalan jangka panjang (long-termscheduller)
Penjadwalan jangka panjang bekerja terhadap antrian batch (proses-proses dengan penggunaan
sumberdaya yang intensif) dan memilih batch berikutnya yang harus di eksekusi.
C. Strategi Penjadwalan
• Penjadwalan Nonpreemptive
Begitu proses diberi jatah waktu pemroses maka pemroses tidak dapat diambil alih oleh proses
lain sampai proses itu selesai.
• Penjadwalan Preemptive
Saat proses diberi jatah waktu pemroses maka pemroses dapat diambil alih oleh proses lain
sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses
tiba kembali pada proses itu.
D. Algoritma-algoritma Penjadwalan
Algoritma-algoritma yang menerapkan strategi nonpreemptive diantaranya adalah :
• FIFO (First - In , First - Out)
• SJF (Shortest Job First)
• HRN (Highest Ratio Next)
• MFQ (Multiple Feedbak Queues)
Algoritma-algoritma yang menerapkan strategi preemptive diantaranya adalah :
• RR (Round-Robin)
• SRF (Shortest - Remaining - First)
• PS (Priority Schedulling)
• GS (Guaranteed Schedulling)
Klasifikasi lain berdasarkan adanya prioritas di proses-proses yaitu :
1. Algoritma penjadwalan tanpa berprioritas.
2. Algoritma penjadwalan berprioritas yang terdiri dari :
o Algoritma penjadwalan berprioritas statik.
o Algoritma penjadwalan berprioritas dinamis.