Minggu, 13 April 2014

Proses Dan Manajemen Proses


MANAJEMEN PROSES

1. 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.
 
2. CONTENT PROSES
 Proses berisi instruksi, data, program counter, register pemroses, stack data, alamat pengiriman dan variabel pendukung lainnya.

3. STATUS PROSES
 Sebagaimana proses bekerja, maka proses tersebut merubah state (keadaan statis/ asal). Status dari sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses mungkin adalah satu dari keadaan berikut ini: 
  •  New: Proses sedang dikerjakan/ dibuat. 
  • Running: Instruksi sedang dikerjakan. 
  • Waiting:  Proses  sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah  penyelesaian I/Oatau penerimaan sebuah tanda/ signal). 
  •  Ready: Proses sedang menunggu untuk ditugaskan pada sebuah prosesor. 
  • Terminated: Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.



Nama-nama tersebut adalah arbitrer/  berdasar  opini,  istilah  tersebut  bervariasi disepanjang sistem operasi. Keadaan yang mereka gambarkan ditemukan pada seluruh sistem. Namun, sistem operasi tertentu juga lebih baik menggambarkan keadaan/ status proses. Adalah penting untuk menyadari bahwa hanya satu
proses dapat berjalan pada prosesor mana pun pada waktu kapan pun. Namun, banyak proses yang dapat ready atau waiting. Keadaan diagram yang berkaitan dangan keadaan tersebut dijelaskan pada Gambar 1.


4. PROCESS CONTROL BLOCK
 Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) – juga disebut sebuah control block. Sebuah PCB ditunjukkan dalam Gambar 2. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini: 
  • Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi. 
  •  Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk proses ini.  
  • CPU register:  Register  bervariasi  dalam  jumlah  dan  jenis,  tergantung  pada rancangan komputer. 
  •  Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register, ditambah code information pada kondisi apa pun. Besertaan dengan program counter,  keadaan/  status  informasi  harus  disimpan  ketika gangguan terjadi, untuk memungkinkan  proses tersebut berjalan/bekerja dengan benar setelahnya (lihat Gambar 3).Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari  dasar dan batas register, tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi.   
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun, jumlah job atau proses, dan banyak lagi.  
  • Informasi  status  I/O:  Informasi  termasuk  daftar  dari  perangkat  I/O  yang  digunakan 
  •  PCB hanya berfungsi sebagai tempat menyimpan/ gudang untuk informasi apapun yang dapat  bervariasi dari prose ke proses.

 

5. PENJADWALAN PROSES
            Tujuan dari multiprogramming adalah untuk memiliki sejumlah proses yang berjalan pada sepanjang waktu, untuk memaksimalkan penggunaan CPU.
            Tujuan dari pembagian waktu adalah untuk mengganti CPU diantara proses-proses yang begitu sering sehingga pengguna dapat berinteraksi dengan setiap program sambil CPU bekerja. Untuk sistem uniprosesor, tidak akan ada lebih dari satu proses berjalan. Jika ada proses yang lebih dari itu, yang lainnya akan harus
menunggu sampai CPU bebas dan dapat dijadualkan kembali.

Terdapat 3 konsep dasar Penjadwalan proses yaitu :
5.1 Penjadualan Antrian (Scheduling Queue) 
 Ketika proses memasuki sistem, mereka diletakkan dalam antrian job. Antrian ini terdiri dari seluruh proses dalam sistem. Proses yang hidup pada memori utama dan siap dan menunggu/ wait untuk mengeksekusi disimpan pada sebuah daftar bernama ready queue. Antrian ini biasanya disimpan sebagai daftar penghubung. Sebuah header ready queue berisikan penunjuk kepada PCB-PCB awal dan akhir. Setiap PCB memiliki pointer field yang menunjukkan proses selanjutnya dalam ready queue.   Juga ada antrian lain dalam sistem. Ketika sebuah proses mengalokasikan CPU, proses tersebut berjalan/bekerja sebentar lalu berhenti, di interupsi, atau menunggu suatu kejadian tertentu,  seperti  penyelesaian suatu permintaan I/O. Pada kasus ini sebuah permintaan I/O, permintaan seperti itu mungkin untuk sebuah tape drive yang telah diperuntukkan, atau alat yang berbagi, seperti disket. Karena ada banyak proses dalam sistem, disket bisa jadi sibuk dengan permintaan I/O untuk proses lainnya. Maka proses tersebut mungkin harus menunggu untuk disket tersebut. Daftar dari proses yang menunggu untuk peralatan I/O tertentu disebut sebuah device queue. Tiap peralatan memiliki device queuenya sendiri (Lihat Gambar 4).
 
Reprensentasi umum untuk suatu diskusi mengenai penjadualan proses adalah diagram antrian, seperti  pada  Gambar 5.  Setiap  kotak  segi  empat  menunjukkan sebuah antrian. Dua tipe antrian menunjukan antrian yang siap dan suatu perangkat device queues. Lingkaran menunjukkan sumber-sumber  yang melayani sistem. Sebuah proses baru pertama-tama ditaruh dalam ready queue. Lalu menunggu dalam  ready queue sampai proses tersebut dipilih untuk dikerjakan/lakukan atau di dispatched. Begitu proses  tersebut  mengalokasikan  CPU  dan  menjalankan/  mengeksekusi,  satu  dari beberapa kejadian dapat terjadi. 
Proses tersebut dapat mengeluarkan sebuah permintaan I/O, lalu di tempatkan dalam sebuah antrian I/O. 
Proses  tersebut  dapat  membuat  subproses  yang  baru  dan  menunggu terminasinya sendiri.
Proses tersebut dapat digantikan secara paksa dari CPU, sebagai hasil dari suatu interupsi, dan  diletakkan kembali dalam ready queue.

   
 Dalam dua kasus pertama, proses akhirnya berganti dari waiting state menjadi ready state, lalu diletakkan kembali dalam ready queue. Sebuah proses meneruskan siklus ini sampai berakhir, disaat dimana proses tersebut diganti dari seluruh queue dan memiliki PCB nya dan sumber-sumber/ resources dialokasikan kembali.




Tidak ada komentar:

Posting Komentar