Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah isyarat yang ada pada linux?

Apakah isyarat yang ada pada linux?

青灯夜游
青灯夜游asal
2023-03-30 14:15:083606semak imbas

Isyarat Linux termasuk: 1. SIGHUP, digunakan untuk menutup proses serta-merta, kemudian baca semula fail konfigurasi dan kemudian mulakan semula 2. SIGINT, isyarat membatalkan program, digunakan untuk menamatkan proses latar depan; . SIGQUIT, program keluar dari Isyarat; proses biasa; 8. SIGCONT 9. SIGSTOP dll.

Apakah isyarat yang ada pada linux?

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

Apakah isyarat dalam Linux

Pengurusan proses terutamanya merujuk kepada penutupan dan memulakan semula proses. Apabila kami biasanya menutup atau memulakan semula perisian, kami menutup atau memulakan semula programnya, dan bukannya mengendalikan proses secara langsung. Sebagai contoh, untuk memulakan semula perkhidmatan apache, secara amnya gunakan arahan "perkhidmatan httpd restart" untuk memulakan semula program apache.

Jadi, adakah mungkin untuk menutup atau memulakan semula apache dengan menguruskan proses secara langsung? Jawapannya ya, maka anda perlu bergantung kepada isyarat proses (Isyarat). Kami perlu memberi proses itu nombor dan memberitahu proses apa yang kami mahu ia lakukan.

Isyarat sangat penting dalam sistem pengendalian Linux Isyarat boleh dijana daripada papan kekunci, dijana oleh keadaan perisian atau dijana dengan memanggil pengecualian perkakasan. Terdapat sejumlah 64 isyarat dalam Linux yang dihasilkan daripada panggilan fungsi sistem pengguna Linux boleh melihatnya melalui kill -l, seperti berikut

1) SIGHUP	 2) SIGINT	 3) SIGQUIT	 4) SIGILL	 5) SIGTRAP
 6) SIGABRT	 7) SIGBUS	 8) SIGFPE	 9) SIGKILL	10) SIGUSR1
11) SIGSEGV	12) SIGUSR2	13) SIGPIPE	14) SIGALRM	15) SIGTERM
16) SIGSTKFLT	17) SIGCHLD	18) SIGCONT	19) SIGSTOP	20) SIGTSTP
21) SIGTTIN	22) SIGTTOU	23) SIGURG	24) SIGXCPU	25) SIGXFSZ
26) SIGVTALRM	27) SIGPROF	28) SIGWINCH	29) SIGIO	30) SIGPWR
31) SIGSYS	34) SIGRTMIN	35) SIGRTMIN+1	36) SIGRTMIN+2	37) SIGRTMIN+3
38) SIGRTMIN+4	39) SIGRTMIN+5	40) SIGRTMIN+6	41) SIGRTMIN+7	42) SIGRTMIN+8
43) SIGRTMIN+9	44) SIGRTMIN+10	45) SIGRTMIN+11	46) SIGRTMIN+12	47) SIGRTMIN+13
48) SIGRTMIN+14	49) SIGRTMIN+15	50) SIGRTMAX-14	51) SIGRTMAX-13	52) SIGRTMAX-12
53) SIGRTMAX-11	54) SIGRTMAX-10	55) SIGRTMAX-9	56) SIGRTMAX-8	57) SIGRTMAX-7
58) SIGRTMAX-6	59) SIGRTMAX-5	60) SIGRTMAX-4	61) SIGRTMAX-3	62) SIGRTMAX-2
63) SIGRTMAX-1	64) SIGRTMAX

32 jenis pertama dipanggil isyarat tidak boleh dipercayai dan biasanya digunakan apabila perisian. tidak menyokong barisan Akhirnya, 32 isyarat yang dipanggil boleh dipercayai biasanya digunakan dalam perkakasan untuk menyokong baris gilir.

Isyarat biasa dalam linux

信号代号 信号名称 说 明
1 SIGHUP 该信号让进程立即关闭.然后重新读取配置文件之后重启
2 SIGINT 程序中止信号,用于中止前台进程。相当于输出 Ctrl+C 快捷键
3 SIGQUIT 程序退出信号(同 Ctrl + )
8 SIGFPE 在发生致命的算术运算错误时发出。不仅包括浮点运算错误,还包括溢出及除数为 0 等其他所有的算术运算错误
9 SIGKILL 用来立即结束程序的运行。本信号不能被阻塞、处理和忽略。般用于强制中止进程
14 SIGALRM 时钟定时信号,计算的是实际的时间或时钟时间。alarm 函数使用该信号
15 SIGTERM 正常结束进程的信号,kill 命令的默认信号。如果进程已经发生了问题,那么这 个信号是无法正常中止进程的,这时我们才会尝试 SIGKILL 信号,也就是信号 9
18 SIGCONT 该信号可以让暂停的进程恢复执行。本信号不能被阻断
19 SIGSTOP 该信号可以暂停前台进程,相当于输入 Ctrl+Z 快捷键。本信号不能被阻断

Isyarat BUNUH, BERHENTI tidak boleh disekat, diabaikan atau ditangkap.

Terma bermaksud menamatkan proses. Teras bermaksud untuk menamatkan proses dan membuang teras. Berhenti menggantung benang, Samb menyambung semula benang yang digantung.

Penggunaan biasa isyarat biasa

  • SIGHUP

    Isyarat ini digunakan apabila sambungan terminal pengguna (biasa atau tidak normal) tamat Dikeluarkan, biasanya apabila proses kawalan terminal ditamatkan, untuk memberitahu kerja individu dalam sesi yang sama bahawa mereka tidak lagi dikaitkan dengan terminal kawalan.

    Apabila log masuk ke Linux, sistem akan menetapkan sesi terminal kepada pengguna yang log masuk. Semua program yang berjalan di terminal ini, termasuk kumpulan proses latar depan dan kumpulan proses latar belakang, biasanya tergolong dalam sesi ini. Apabila pengguna log keluar dari Linux, kumpulan proses latar depan dan proses latar belakang yang keluar ke terminal akan menerima isyarat SIGHUP.

    Kendalian lalai isyarat ini adalah untuk menamatkan proses, jadi selepas log keluar, proses hadapan dan belakang serta proses dengan output terminal di latar belakang akan ditamatkan.

    Walau bagaimanapun, isyarat ini boleh ditangkap Contohnya, wget boleh menangkap isyarat SIGHUP dan mengabaikannya Dengan cara ini, wget boleh terus memuat turun walaupun anda log keluar dari Linux.

    Selain itu, untuk daemon yang terputus sambungan dari terminal, isyarat ini digunakan untuk memberitahunya untuk membaca semula fail konfigurasi.

    Sebagai contoh, menghantar isyarat HUP ke proses nginx boleh menyegarkan konfigurasi.

  • SIGINT: Isyarat penamatan program (gangguan), dikeluarkan apabila pengguna menaip aksara INTR (biasanya Ctrl-C), digunakan untuk memberitahu kumpulan proses latar depan untuk menamatkan proses.

  • SIGQUIT: Sama seperti SIGQUIT, tetapi dikawal oleh aksara QUIT (biasanya Ctrl- Proses ini akan menghasilkan fail teras apabila keluar kerana menerima SIGQUIT, dalam pengertian ini serupa dengan A). isyarat ralat program.

  • SIGTERM:

    Isyarat tamat (menamatkan) program Tidak seperti SIGKILL, isyarat ini boleh disekat dan diproses. Ia biasanya digunakan untuk menghendaki program keluar dengan sendirinya secara normal, membenarkan proses melakukan beberapa kerja pembersihan yang diperlukan sebelum keluar.

    Pembunuh arahan shell menjana isyarat ini secara lalai. Jika proses tidak dapat ditamatkan, kami akan cuba SIGKILL.

  • SIGTERM membolehkan proses berakhir dengan anggun.

  • SIGCONT: Biarkan proses yang dihentikan terus dilaksanakan Kerja. tetapi hanya pelaksanaan yang digantung. -c menghantar isyarat SIGINT Kepada semua proses dalam kumpulan proses latar depan. Selalunya digunakan untuk menamatkan program yang sedang berjalan.

  • ctrl-z menghantar isyarat SIGTSTP kepada semua proses dalam kumpulan proses latar depan, selalunya digunakan untuk menggantung proses.

ctrl-d tidak menghantar isyarat, tetapi mewakili nilai binari khas, yang menunjukkan EOF.

    ctrl- Hantar isyarat SIGQUIT kepada semua proses dalam kumpulan proses latar depan, tamatkan proses latar depan dan jana fail teras.
  • Cadangan berkaitan: "

    Tutorial Video Linux

    "

Atas ialah kandungan terperinci Apakah isyarat yang ada pada linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Mengapa linux menyusun kernel?Artikel seterusnya:Mengapa linux menyusun kernel?