Manajemen Proses

09.03 Husaini 0 Comments

Manajemen Proses



A. Proses
Manajemen Proses - Satu selingan pada diskusi kita mengenai sistem operasi yaitu bahwa ada sebuah pertanyaan mengenai apa untuk menyebut semua aktivitas CPU. Sistem batch mengeksekusi jobs, sebagaimana suatu sistem time-shared telah menggunakan user programs, atau tugas-tugas/pekerjaan-pekerjaan. Bahkan pada sistem tunggal, seperti Microsoft Windows dan Macintosh OS, seorang user mampu untuk menjalankan beberapa program pada saat yang sama: Sebuah Word Processor, Web Browser, dan paket e-mail. Bahkan jika user dapat melakukan hanya satu program pada satu waktu, sistem operasi perlu untuk mendukung aktivitas program internalnya sendiri, seperti manajemen memori. Dalam banyak hal, seluruh aktivitas ini adalah serupa, maka kita menyebut seluruh program itu proses-proses (processes).

Istilah job dan proses digunakan hampir dapat dipertukarkan pada tulisan ini. Walau kami pribadi lebih mneyukai istilah proses, banyak teori dan terminologi sistem-operasi dikembangkan selama suatu waktu ketika aktivitas utama sistem operasi adalah job processing. Akan menyesatkan untuk menghindari penggunaan istilah umum yang telah diterima bahwa memasukkn kata job (seperti penjadwalan job) hanya karena prosesmemiliki job pengganti/pendahulu.

B. Konsep Dasar dan Definisi Proses
Manajemen Proses - Secara informal; proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadangkala 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. 

Kami tekankan bahwa program itu sendiri bukanlah sebuah proses; suatu program adalah satu entitas pasif; seperti isi dari sebuah file 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 dihubungakn dengan program yang sama, program tersebut dianggap dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa user dapt menjalankan copy yang berbeda pada mail program, atau user 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.

C. Keadaan Proses
Manajemen 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 sednag dikerjakan.
  • Waiting:Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O atau 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 manapun pada waktu kapanpun. Namun, banyak proses yang dapat ready atau waiting. Keadaan diagram yang berkaitan dangan keadaan tersebut dijelaskan pada gambar(4.1) berikut:

D. Process Control Back
Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) - juga disebut sebuah control block. Sebuah PCB ditunjukkan dalam gambar(4.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 apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya (Gambar 4.3).
  • Informasi manajemen 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 (ch 9).
  • 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 di gunakan pada proses ini, suatu daftar open file dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapat bervariasi dari prose ke proses.
E. Threads
Model proses yang didiskusikan sejauh ini telah menunjukkan bahwa suatu proses adalah sebuah program yang menjalankan eksekusi thread tunggal. Sebagai contoh, jika sebuah proses menjalankan sebuah program Word Processor ,ada sebuah thread tunggal dari instruksi-instruksi yang sedang dilaksanakan. Kontrol thread tunggal ini hanya memungkinkan proses untuk menjalankan satu tugas pada satu waktu.

0 komentar: