Sinyal
Sinyal digunakan untuk memancarkan pemberitahuan agar proses mengambil tindakan sebagai respons terhadap peristiwa yang sering kali tidak terduga. Untuk mengirim sinyal (termasuk yang menyebabkan penghentian) dari baris perintah dapat menggunakan kill, killall dan pkill.
Apa itu sinyal?
Sinyal adalah salah satu metode Inter-Process Comunication (IPC) / komunikasi antar proses tertua untuk memberi tahu proses tentang kejadian asynchronous (tidak menyangka peristiwa itu akan terjad dan harapan kejadian tersebut tapi tidak tahu kapan) atau exceptions (kondisi abnormal yang terjadi pada saat menjalankan program.).
Jalur sinyal dikirim:
Dari kernel ke proses user, sebagai akibat dari pengecualian atau kesalahan pemrograman
Dari proses user (menggunakan system call) ke kernel kemudian ke proses user. pengirim sinyal bisa sama dengan penerima sinyal.
Siinyal dikirim antar proses yang dimiliki user yang sama atau proses yang dimiliki superuser ke proses mana pun.
Jenis sinyal
Umumnya, sinyal digunakan untuk menangani 2 hal:
pengecualian terdeteksi oleh hardware (seperti referensi memori ilegal)
pengecualian yang dihasilkan oleh lingkungan (seperti kematian dini suatu proses dari terminal user)
Untuk melihat daftar sinyal di linux beserta nomernya yang menunjukkan kejadian apa yang terjadi yang menyebabkan sinyal terkirim ke suatu proses (saat dikirim dari kernel)
kill -l
Sinyal yang tersedia
tipe sinyal menunjukkan kejadian apa yang menyebabkan sinyal terkirim (saat dikirim dari kernel) meskipun user secara eksplisit mengirim sinyal apapun ke salah satu proses mungkin tidak lagi tersirat dalam nomer atau jenis sinyal dan dapat digunakan sesuai keinginan proses. man 7 signal

kill
Proses harus meminta kernel untuk mengirim sinyal untuk mengirim sinyal ke proses lain. user (termasuk superuser) dapat mengirim sinyal ke proses (program) lain menggunakn kill. sinyal default yang dikirim adalah SIGTERM (#15) yang dapat ditangani atau diabaikan oleh proses penerima untuk mencegah kematiannya juga memberikan kesempatan pada proses untuk membersihkan dirinya. Jika diabaikan user dapat mengirim signal SIGKILL (#9) yang tidak dapat diabaikan untuk menghentikan proses.
kill 1234
kill -9 1234
kill -SIGTERM 1234
Last updated