Jumat, 08 Mei 2015

PROCESS DESCRIPTION AND CONTROL

Proses adalah suatu program yg dieksekusi, bisa juga disebut suatu instance dari suatu program yg berjalan dalam sebuah komputer. Proses adalah entiti yg terdiri dari elemen-elemen dan sekumpulan data yg berkaitan dengan code tsb. Selama program dieksekusi, proses dapat diidentifikasi oleh beberapa elemen :
  • Identifier : suatu penanda unik yg berkaitan dengan prosesnya
  • State : jika prosesnya sedang dieksekusi maka sedang berada di running state
  • Priority : level prioritas untuk proses yg lain 
  • Program Counter : alamat dari instruksi selanjutnya dalam suatu program yg akan dieksekusi
  • Memory pointers : pointer yg ada dalam code program dan data yg berkaitan dengan proses ini
  • Context data : data yg terdaftar pada prosesor selama proses dieksekusi
  • I/O status information : perangkat I/O yg diisikan ke proses, daftar file yg digunakan oleh proses dan lainnya
  • Accounting information : jumlah dari waktu prosesor dan waktu clock, waktu limit, dan lainnya
Informasi yg ada pada list diatas tersimpan dalam data struktur yg biasa disebut dengan Process Control Block

Program adalah instruksi untuk melakukan proses. Sedangkan proses adalah eksekusi dari suatu program.


A TWO-STATE PROCESS MODEL

Prinsip dasar Operating system adalah mengontrol proses eksekusi dari suatu proses, termasuk mendefinisikan pola eksekusi dan mengalokasikan sumber data kepada suatu proses.
Seperti yg dapat dilihat di gambar diatas, ada 2 proses model. Yg (a) adalah State Transition Diagram yg mempunyai 2 state, yaitu Running dan not Running. Ketika OS membuat suatu proses maka process control block juga akan diproses dan akan diproses sistem. Sedangkan yg gambar (b) adalah Queueing diagram yg menyarankan sebuah struktur. Queue mungkin terdiri dari beberapa linked-list dari data block, yg setiap didalamnya mewakili 1 proses .


PROCESS CREATION

Ketika suatu proses sedang dikelola, OS membangun suatu data struktur yg digunakan untuk mengatur proses tersebut dan mengalokasikan address space pada main memory.
Alasan mengapa dibuatnya proses adalah :

Proses ketika OS membuat suatu proses dengan permintaan-permintaan eksplisit disebut process spawning. Ketika ada 2 proses yg saling spawning, proses yg terlebih dahulu dibuat adalah parent process, sedangkan satunya adalah child process.


PROCESS TERMINATION

Semua sistem komputer harus menyediakan suatu indikasi untuk penyelesaian suatu proses. Jumlah error dan kondisi-kondisi error dapat menyebabkan proses terminasi (penutupan program secara otomatis). Alasan mengapa proses termination bisa terjadi :


FIVE-STATE MODEL

Jika semua proses sudah siap untuk dieksekusi, maka peraturan queueing dibuat. Ada 5 state yg ada di diagram ini :

  1. Running, proses sedang dieksekusi
  2. Ready, sebuah proses disiapkan untuk dieksekusi ketika diberikan kesempatan
  3. Blocked/Waiting, suatu proses tidak dapat dieksekusi ketika ada beberapa event terjadi
  4. New, sebuah proses yg baru saja dibuat tapi belum dapat dieksekusi oleh operating system
  5. Exit, sebuah proses yg telah dilepas/dikosongkan memorinya oleh operating system
Dari gambar diatas ada beberapa state transisi yg terjadi :

  • Null -> New
    Proses baru yg dibuat untuk dieksekusi oleh sebuah program
  • New -> Ready
    OS akan berubah state ketika proses tersebut disiapkan untuk melakukan proses yg bersifat tambahan
  • Ready -> Running
    Ketika proses sedang dijalankan, OS memilih salah 1 proses yg sedang berada dalam state Ready
  • Running -> Exit
    Proses yg baru saja diakhiri oleh OS jika proses tersebut diindikasikan telah selesai
  • Running -> Ready
    Proses yg sedang berjalan telah mencapai waktu maksimum untuk diinterupsi
  • Running -> Blocked
    Proses dipindahkan ke dalam Blocked State jika proses tersebut harus menunggu
  • Blocked -> Ready
    Sebuah proses dalam Blocked State dipindahkan kembali ke Ready State ketika waktunyas sudah siap
  • Ready -> Exit
    Transisinya tidak kelihatan pada diagram diatas, tapi pada beberapa sistem, parent process akan mengakhiri proses child
  • Blocked -> Exit
    Komentar tentang item yg sudah diterapkan
Fungsi-fungsi dalam Operating System Kernel
Proses management : untuk memanage proses
Memory management : untuk memanage memori agar lebih hemat dan efisien
I/O management : untuk memanage hubungan antara input dan output


EXECUTION OF OPERATING SYSTEM

  • Nonprocess Kernel

    Pada gambar (a) kebanyakan Operating system yg lama digunakan untuk mengeksekusi kernel dari OS diluar semua proses. Pada gambar (b) OS merupakan kumpulan panggilan user untuk melakukan fungsi-fungsi, mengeksekusi didalam proses milik user. Pada gambar (c) adalah megimplementasikan OS sebagai kumpulan dari proses sistem.
Semoga bermanfaat ! ^^

Tidak ada komentar:

Posting Komentar