Sunday, April 7, 2013

Pengertian PROSES dalam Sistem Informasi


          Proses adalah keadaan ketika sebuah program sedang di eksekusi. Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process yang membentuk proses turunan ( child process) yang dilakukan oleh proses induk ( parent process). Proses turunan tersebut juga mampu membuat proses baru sehingga semua proses ini pada akhirnya membentuk pohon proses.

Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti waktu CPU, memori, berkas, atau perangkat I/O. Sumber daya ini dapat diperoleh langsung dari sistem operasi, dari proses induk yang membagi-bagikan sumber daya kepada setiap proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan sistem operasi.

Pengelolaan Proses
Proses perlu dikelola karena dalam sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.

Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen proses seperti:
  1. Pembuatan dan penghapusan proses pengguna dan sistem proses.
  2. Menunda atau melanjutkan proses.
  3. Menyediakan mekanisme untuk proses sinkronisasi.
  4. Menyediakan mekanisme untuk proses komunikasi.
  5. Menyediakan mekanisme untuk penanganan deadlock.


Konsep Proses
  • Sistem operasi mengeksekusi beraneka-ragam program
  1. Sistem batch – jobs (baca: http://en.wikipedia.org/wiki/Batch_system)
  2. Sistem time-shared – task atau program pengguna
  • Textbook menggunakan istilah job & process secara bergantian
  • Proses – program dalam eksekusi; eksekusi proses harus bergerak dalam bentuk sequential
  • Proses mengikut-sertakan:
  1. Program counter (PC)
  2. Stack (baca: http://en.wikipedia.org/wiki/Stack_(data_structure))
  3. Bagian data

Status Proses
  • Selama suatu proses berjalan, terjadi perubahan status (state);
  1. new: proses baru dibuat
  2. running: Instruksi-instruksi dieksekusi
  3. Waiting atau blocked: proses menunggu beberapa kejadian
  4. ready: proses menunggu diberikan processor
  5. terminated: proses telah menyelesaikan eksekusi


Diagram Status Proses












Antrian Penjadwalan Proses
  • Job queue – himpunan semua proses dalam sistem
  • Ready queue – himpunan semua proses yang berada dalam memory utama, ready atau waiting untuk dieksekusi
  • Device queues – himpunan proses yang menunggu perangkat I/O
  • Proses-proses berpindah antar queue (antrian) berbeda


Scheduler (Pengatur Jadwal)
  • Long-term scheduler (job scheduler) – memilih proses mana yang akan dibawa ke dalam antrian ready
  • Short-term scheduler (CPU scheduler) – memilih proses mana yang akan dieksekusi berikutnya dan dialokasikan CPU

Scheduler
  • Short-term scheduler dijalankan sangat sering (mili detik)  (harus cepat)
  • Long-term scheduler dijalankan sangat jarang (detik, menit)  (mungkin lambat)
  • Long-term scheduler mengontrol tingkat multiprogramming
  • Proses dapat dideskripsikan sebagai :
  1. I/O-bound process – menghabiskan lebih banyak waktu melakukan I/O daripada komputasi, banyak CPU burst pendek
  2. CPU-bound process – menghabiskan lebih banyak waktu melakukan komputasi; sedikit CPU burst sangat panjang


Pembuatan Proses
  • Parent process (proses induk) membuat children processes (proses anak), pada gilirannya membuat proses lain sehingga membentuk suatu pohon proses
  • Proses diidentifikasi & dikelola melalui suatu process identifier (pid)
  • Berbagi-pakai resource (sumber daya) :
  1. Parent & children berbagi-pakai semua resource
  2. Children berbagi-pakai subset dari resource parentnya
  3. Parent & child tidak berbagipakai resource

  • Eksekusi
  1. Parent & children berjalan secara konkuren
  2. Parent menunggu sampai children berhenti
  • Adrress space (ruang alamat)
  1. Anak menyalin induk
  2. Anak mempunyai program yang dimuat ke dalamnya
  • Contoh di UNIX
  1. system call fork membuat proses baru
  2. system call exec digunakan setelah fork untuk menggantikan ruang memory proses dengan suatu program baru


Penghentian Proses
  • Proses mengeksekusi pernyataan terakhir & meminta SO untuk menghapusnya (exit)
  1. Data output dari anak ke induk (via wait)
  2. Resource induk didealokasikan oleh SO
  • Induk dapat menghentikan eksekusi proses anak (abort)
  1. Anak telah melebihi resource yang dialokasikan
  2. Task yang diberikan ke anak tidak dibutuhkan lagi
  3. Jika induk keluar (selesai)
  • Beberapa SO tidak membolehkan anak berjalan terus jika induknya berhenti
  1. Semua anak dihentikan - cascading termination

Kerjasama Proses
  • Proses Independent tidak dapat mempengaruhi atau dipengaruhi oleh eksekusi proses lain
  • Proses Cooperating dapat dipengaruhi atau dipengaruhi oleh eksekusi proses lain
  • Keuntungan dari kerjasama proses :
  1. Pemakaian informasi bersama
  2. Mempercepat komputasi
  3. Modularitas
  4. Kenyamanan



      Perkembangan sistem komputer mendatang adalah menuju ke sistem multi- processing, multiprogramming, terdistribusi dan paralel yang mengharuskan adanya proses-proses yang berjalan bersama dalam waktu yang bersamaan. Hal demikian merupakan masalah yang perlu perhatian dari perancang sistem operasi. Kondisi dimana pada saat yang bersamaan terdapat lebih dari satu proses disebut dengan kongkurensi (proses-proses yang kongkuren).

Proses-proses yang mengalami kongkuren dapat berdiri sendiri (independen) atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi proses yang baik.



http://yogapw.wordpress.com/2009/10/05/pengertian-proses-dalam-sistem-operasi/

0 komentar "Pengertian PROSES dalam Sistem Informasi", Baca atau Masukkan Komentar

Post a Comment