Monday, October 21, 2013

State Process Diagram pada Kernel Linux

 

State process diagram adalah abstraksi atau penggambaran alur keadaan proses ketika processor sedang melakukan multiprocessing. Pemodelan diagram status ini dapat membantu mengenai pemahaman terhadap keadaan menajemen proses pada sebuah sistem operasi.

Sebelum kita masuk ke pembahasan state process diagram pada linux, saya akan menjelaskan terlebih dahulu mengenai apa itu process dan thread. Berdasarkan salah satu sumber yang saya dapat, berikut adalah penjelasannya :

Proses adalah program yang berjalan. Setiap proses berjalan secara individual tanpa bisa mempengaruhi proses yang lain secara langsung. Setiap proses itu memiliki alokasi tersendiri di dalam memori dan memiliki proteksi terhadap modifikasi oleh proses lain.

Sedangkan thread adalah kumpulan beberapa proses. Setiap thread berjalan di dalam alamat memori yang sama dengan proses induknya.

Nah, dalam Linux sendiri process dan thread direpresentasikan sebagai hal yang sama. Thread hanya dianggap sebagai sebuah proses yang secara “kebetulan” memiliki alamat memori yang sama.

Dalam diagram proses status / keadaan berikut ini, berlaku untuk proses maupun thread :

 

Linux_Kernel_Process

 

Pada gambar di atas, terdapat lima state process yang digambarkan oleh sistem operasi dengan kernel Linux :

  1. Ready State, yaitu ketika proses sedang merequest untuk diproses oleh processor atau sudah akan dieksekusi, tetapi masih ada proses lain yang sedang dieksekusi.
  2. Execution State, saat proses sedang aktif, berjalan atau sedang dieksekusi processor.
  3. Suspend State, ada juga yang menyebutnya dengan waiting state yaitu keadaan ketika proses sedang menunggu event eksternal dieksekusi terlebih dahulu (biasanya I/O).
  4. Stopped State, proses telah dihentikan melalui proses dari luar (external).
  5. Zombie State, keadaan ketika proses sudah selesai dieksekusi tetapi proses itu masih merefer ke sistem (seperti pointer yang masih menunjuk suatu  alamat memori padahal proses pada alamat memori tersebut sudah selesai).

Sebenarnya model state diagram ada beberapa versi, dan model di atas adalah salah satunya. Ada yang hanya menggambarkan 2 state, 3 state dan 5 state. Berikut adalah contoh state diagram yang paling umum dan dapat diimplementasikan hampir oleh semua sistem operasi menurut William Stalling :

 

400px-Process_states.svg

 

Pada state ini, ada tambahan jenis state yaitu state created (new) dan state swapping (swapped out and waiting dan swapped out and blocked).

Referensi :

Process state - Wikipedia, the free encyclopedia dari Stallings, William (2005). Operating Systems: internals and design principles (5th edition). Prentice Hall.

File pdf dari ww.inf.ufsc.br

No comments:

Post a Comment