Proses - Konsep Penting dalam Sistem Operasi
Proses (Processes)
Proses adalah aktifitas dalam mengeksekusi program. Proses merupakan salah satu konsep penting dalam sistem opreasi. Dengan proses, operasi virtual CPU dapat dilakukan pada komputer ber-CPU tunggal. Tanpa konsep proses, komputasi modern tidak akan pernah ada.Di era komputasi modern saat ini, user sering melakukan beberapa hal dengan komputernya dalam waktu yang bersamaan. Mereka bisa membuat dokumen Word sembari mendengarkan musik. Hal yang demikian bisa dilakukan oleh komputer berkat adanya konsep proses.
Model Proses
Sebenarnya, prosesor hanya menangani satu proses saja pada satu saat. Namun, dengan adanya pengaturan/penjadwalan dalam menjalankan proses-proses, prosesor dapat seakan-akan menjalankan beberapa proses dalam waktu yang bersamaan. Hal ini dapat terjadi karena model proses tersebut telah dirancang di dalam sistem operasi agar bisa dijalankan “melompat-lompat” dari satu proses ke proses lainnya.Perpindahan dalam menjalankan proses tersebut diatur oleh sistem operasi. Oleh karena prosesor melakukan perpindahan (switching) tersebut dengn begitu cepat, efek yang dirasakan user adalah banyak proses yang dijalankan dalam waktu yang bersamaan. Perpindahan maju mundur menjalankan proses tersebut sering disebut multiprogramming.
Penciptaan Proses
Proses diciptakan atau dibuat oleh sistem operasi. Sistem operasi juga menentukan kapan diperlukannya untuk membuat proses yang baru berkaitan dengan program yang sedang berjalan.Secara teknis, proses baru dibuat oleh proses yang telah ada. Namun, ada empat kejadian dasar yang dapat menyebabkan proses diciptakan, yaitu:
1. Inisialisasi Sistem
Proses yang dibuat pada kejadian/tahap ini adalah proses yang dibutuhkan untuk menjalankan sistem operasi. Kebanyakan proses dalam tahap ini merupakan background process, yaitu proses yang tidak tampak oleh user.
2. Penciptaan Proses Baru oleh Proses yang Berjalan
Saat dibutuhkan proses baru untuk diciptakan, proses yang sedang berjalan dapat menciptakannya dengan mengeksekusi perintah tertentu yang disediakan oleh sistem operasi untuk membuat proses yang baru.
3. Permintaan User
Pada saat sistem operasi sedang idle, user dapat mengeksekusi perintah tertentu yang menyebabkan proses baru dibuat. Ini bisa berkaitan dengan proses yang berjalan atau itu merupakan proses yang tidak mempengaruhi yang lain.
4. Inisiatif dari Batch Job
Batch Job yang sedang berjalan dapat membuat proses baru apabila dipandang perlu.
Terminasi Proses
Cepat atau lambat, proses akan diterminasi/diakhiri. Ada empat kondisi yang bisa menyebabkan terminasi proses:1. Normal exit, proses diakhiri karena semua aktifitasnya sudah selesai dan berjalan normal.
2. Error exit, proses diakhiri karena ada kesalahan yang terjadi, bisa jadi kesalahan program seperti proses mengakses area terlarang dalam memory, pembagian nilai dengan nol, dan lain-lain.
3. Fatal error, kondisi terminasi yang diakibatkan oleh kesalahan aktifitas, misalnya proses membuka file yang tidak pernah ada.
4. Killed, terminasi yang disebabkan oleh proses lain yang sengaja mengakhiri proses tertentu.
Hirarki Proses
Di beberapa sistem operasi, jika satu proses membuat proses lain, maka ada hubungan parent dan child antara proses-proses tersebut. Namun, Windows tidak memiliki hirarki proses seperti itu. Yang ada di Windows adalah proses yang menciptakan proses lain memiliki kewenangan untuk mengatur proses yang diciptakan, akan tetapi kewenangan tersebut dapat dialihkan ke proses yang lain. Proses di UNIX tidak bisa diberlakukan seperti itu, karena proses di UNIX menganut hirarki proses.
Status Proses
Status antara proses yang satu dengan lainnya dapat berbeda. Perbedaan tersebut tergantung dengan interaksi apa yang dilakukan oleh proses tersebut dengan proses lainnya. Berikut ini tiga kemungkinan status yang dialami oleh suatu proses.1. Berjalan (running), proses sedang mengerjakan sesuatu dan sedang menggunakan sumber daya CPU.
2. Siap (ready), proses dapat dijalankan sewaktu-waktu, tetapi saat siap ini proses tidak menggunakan sumber daya CPU.
3. Diblok (blocked), proses tidak dapat dijalankan hingga terjadi hal tertentu yang bisa memicu perubahan status proses.
Transisi antarproses dapat terjadi karena beberapa hal. Misalnya, jika proses yang sedang berjalan sedang menunggu hasil input, maka proses akan berbuah statusnya menjadi terblok. Saat input tersedia, statusnya akan berubah menjadi siap. Jika dalam keadaan siap tersebut sistem operasi memilih proses tersebut untuk dijalankan kembali, maka statusnya menjadi berjalan. Kemudian, saat dalam status berjalan , sistem operasi bisa saja memilih menjalankan proses lain untuk sementara, alhasil proses yang ditinggal itu akan diubah ke status siap.
Tidak ada komentar:
Posting Komentar