Penghentian proses yang normal terjadi karena aplikasi telah selesai. Adanya kondisi kesalahan serta hal-hal yang tidak dikehendaki dapat menyebabkan proses dihentikan secara paksa.

Dalam penghentian proses secara normal, langkah-langkah yang dilakukan oleh sistem operasi antara lain :

  1. Mengembalikan hasil keluaran ke proses induk (parent process), yaitu proses yang menciptakan proses bersangkutan.
  2. Menghapus rekaman proses di semua antrian dan di tabel proses.
  3. Setelah itu, sistem operasi akan menghapus PCB serta image proses tersebut. Dalam penghentian proses, semua sumber daya yang digunakan, seperti berkas maupun peranti I/O dibebaskan ataupun dikembalikan ke sistem operasi.

Setelah itu penghentian proses selesai, sistem operasi akan melakukan operasi penjadwalan (scheduling) untuk memilih proses lain untuk dieksekusi.

Pengalihan Eksekusi Proses (Process Switching)

Sistem operasi juga bertanggung jawab untuk pengalihan eksekusi proses. Ketika suatu proses yang sedang running sudah habis jatah waktu eksekusinya maka sistem operasi bertanggungjawab untuk mengalijkan eksekusi ke proses lain. Proses pengganti akan diseleksi menggunakan rutin scheduler, sedangkan pengalihan eksekusinya dilakukan menggunakan rutin yang disebut dengan distpacher.

Pengalihan eksekusi suatu proses ke proses lainnya dapat disebabkan karena suatu proses meminta operasi I/O (misalnya membaca berkas), menunggu suatu event (misalnya menggunakan inputan keyboard ataupun pergerakan mouse dari pengguna komputer), terjadi kesalahan eksekusi proses ataupun jatah waktu eksekusinya sudah habis.

Berlanjut pada postingan : Berbagai Penyebab Pengalihan Eksekusi Proses