Famantarana - Linux / Unix Command

Linux dia manohana ny famantarana azo itokisana POSIX ("signal signals") sy ny famantarana ara-potoana POSIX.

Fahazarana Standard

Linux dia manohana ireo mari-pamantarana misy laharana etsy ambany. Maromaro maromaro maromaro no miankina amin'ny rafitra, araka ny voalaza amin'ny tsanganana "Sarobidy". (Raha misy telo ny soatoavina dia ny voalohany dia mahazatra ho an'ny alpha sy sparc, ny iray eo afovoany ho an'ny i386, ppc ary sh, ary ny farany ho an'ny mip.

A - dia midika fa tsy misy famantarana ao amin'ny arikitektila mifanaraka aminy.)

Ny singa ao amin'ny tsanganana "Action" ao amin'ny latabatra dia mamaritra ny fepetra mifehy ny mari-pamantarana, toy izao manaraka izao:

Term

Ny hetsika mety dia ny famaranana ny dingana.

Ign

Ny hetsika mety dia ny tsy miraharaha ilay famantarana.

Core

Ny fepetra hentitra dia ny famaranana ny dingana sy ny fanodinana fotodrafitrasa.

Mijanòna

Ny hetsika mety dia ny hampiato ny dingana.

Voalohany, ireo mari-pamantarana voalaza ao amin'ny ambaratonga voalohany POSIX.1.

Signal sarobidy Action Comment
na fahafatesana ny fizotran'ny fanaraha-maso
SIGINT 2 Term Atsaharo ny solosaina
SIGQUIT 3 Core Mialà amin'ny fampiasa keyboard
SIGILL 4 Core Fampianarana tsy ara-dalàna
SIGABRT 6 Core Fampandrenesana famantarana avy amin'ny fisintonana (3)
SIGFPE 8 Core Fivoahana tampoka
SIGKILL 9 Term Vonoy ny famantarana
SIGSEGV 11 Core Tsy mety ny famerenana memory
SIGPIPE 13 Term Rohila tapaka: Soraty amin'ny pipa tsy misy mpamaky
SIGALRM 14 Term Fanairana avy amin'ny fanairana (2)
SIGTERM 15 Term Famantaram-panafahana
SIGUSR1 30,10,16 Term Famaritana mpampiasa 1
SIGUSR2 31,12,17 Term Famaritana signal 2
SIGCHLD 20,17,18 Ign Ny zaza dia nijanona na nijanona
SIGCONT 19,18,25 Tohizo raha tapitra
SIGSTOP 17,19,23 Mijanòna Atsaharo ny dingana
SIGTSTP 18,20,24 Mijanòna Atsaharo ny sasantsasany amin'ny tty
SIGTTIN 21,21,26 Mijanòna tty fandraisam-peo ho an'ny dingana ambaratonga
SIGTTOU 22,22,27 Mijanòna tty output for process background

Ny famantarana SIGKILL sy SIGSTOP dia tsy azo tratra, voasakana, na tsy raharahiana.

Avy eo ireo mari-pamantarana izay tsy ao amin'ny standard POSIX.1 fa voafaritra ao amin'ny SUSv2 sy SUSv3 / POSIX 1003.1-2001.

Signal sarobidy Action Comment
SIGPOLL Term Fihetseham-barotra (Sys V). Synonym of SIGIO
SIGPROF 27,27,29 Term Nifarana ny famoahana ny famaranana
SIGSYS 12, -, 12 Core Fihetseham-po diso amin'ny SVIN (SVID)
SIGTRAP 5 Core Trace / breakpoint fandrika
SIGURG 16,23,21 Ign Ny fepetra maika eo amin'ny socket (4.2 BSD)
SIGVTALRM 26,26,28 Term Ny famantaranandro fanairana virtoaly (4.2 BSD)
SIGXCPU 24,24,30 Core Mihoatra lavitra ny CPU (4.2 BSD)
SIGXFSZ 25,25,31 Core Habaka fetra voafaritra (4.2 BSD)

Ankoatra ny Linux 2.2, ny fitondran-tena tsy mitanila ho an'ny SIGSYS , SIGXCPU , SIGXFSZ , ary (amin'ny architectures hafa ankoatra ny SPARC sy MIPS) SIGBUS dia ny hampitsahatra ny dingana (tsy misy dump fototra). (Ao amin'ny Unices hafa dia ny fametrahana ny paikady ho an'ny SIGXCPU sy SIGXFSZ dia ny famaranana ny dingana tsy misy fantsona fototra.) Linux 2.4 dia mifanaraka amin'ny fepetra takian'ny POSIX 1003.1-2001 ho an'ireo famantarana ireo, mamarana ny dingana miaraka amin'ny dump core.

Hisy famantarana hafa manaraka.

Signal sarobidy Action Comment
SIGEMT 7, -, 7 Term
SIGSTKFLT -, 16, - Term Stack diso amin'ny coprocessor (tsy ampiasana)
SIGIO 23,29,22 Term I / O ankehitriny azo atao (4.2 BSD)
SIGCLD -, -, 18 Ign Anarana mitovy amin'ny SIGCHLD
SIGPWR 29,30,19 Term Power failure (System V)
SIGINFO 29, -, - Anarana mitovy amin'ny SIGPWR
SIGLOST -, -, - Term Voafidy ny lock lock
SIGWINCH 28,28,20 Ign Ny fanovozan-teny dia manova tsiansa (4.3 BSD, Masoandro)
SIGUNUSED -, 31, - Term Fampahalalana tsy ampiasaina (dia SIGSYS)

(Ny signal 29 dia SIGINFO / SIGPWR amin'ny alfa saingy SIGLOST amin'ny sparc.)

SIGEMT dia tsy voatondro ao amin'ny POSIX 1003.1-2001, fa ny tsy fahampiana dia miseho any amin'ny ankamaroan'ny Unices, izay ny hetsika laharam-pahefana dia amin'ny ankapobeny mba hampitsahatra ny dingana miaraka amin'ny dump core.

SIGPWR (izay tsy voatondro ao amin'ny POSIX 1003.1-2001) dia matetika tsy raharahan'ny fenitry ny Unices izay miseho.

SIGIO (izay tsy voatondro ao amin'ny POSIX 1003.1-2001) dia tsy raharahian'ny fenitry ny Unices marobe.

Saina ara-potoana

Linux dia manohana ny famantarana ara-potoana amin'ny fotoana voafaritra efa voafaritra ao amin'ny POSIX.4 an-dalam-pandrosoana marina (ary ampidirina ao amin'ny POSIX 1003.1-2001). Linux dia manohana 32 famantarana amin'ny fotoana feno, isa 32 ( SIGRTMIN ) hatramin'ny 63 ( SIGRTMAX ). (Ny fandaharanasa dia tokony hiantefa foana ny famantarana ara-potoana amin'ny fampiasana ny anarana SIGRTMIN + n, satria ny isa misy ny mari-pahaizana isaky ny "Unices".)

Tsy toy ny fanevan'ny marika fa tsy misy dikany voafaritra mazava ny famantarana ny zava-misy: ny singa famantarana ny fotoana rehetra dia azo ampiasaina amin'ny tanjona voafaritra. (Mariho anefa fa ny fampiharana LinuxThreads dia mampiasa ny famantarana telo amin'ny fotoana voalohany.)

Ny hetsika lahasa natao ho an'ny fanalahidy tsy misy fe-potoana dia ny hampitsahatra ny fizotry ny fandraisana.

Ny mari-pamantarana ara-potoana dia miavaka amin'ireto manaraka ireto:

  1. Azo atao ny miditra amin'ny sehatr'asa maro samihafa. Raha mifanohitra kosa izany, raha toa ka misy maromaro maromaro amin'ny fehezan-dazam-panafahana atolotra, raha mbola voasakana izany fantsona izany, dia iray monja no tsy voafaritra.
  2. Raha alefa ny sanda amin'ny sigqueue (2), dia azo omena miaraka amin'ny mari-pamantarana ny isa mifanaraka (na integer na pointer). Raha mametraka mpikarakara an'io famantarana io amin'ny alàlan'ny sainan'ny SA_SIGACTION ny sigara (2), dia afaka mahazo izany tahirin-kevitra izany amin'ny sehatra si_value ao amin'ny siginfo_t ny tohodran-dàlana natao ho an'ny mpikarakara. Ankoatra izany, ny saha si_pid sy si_uid amin'ity rafitra ity dia azo ampiasaina mba hahazoana ny IDn'ny PID sy tena izy momba ny dingan'ny fandefasana ny signal.
  3. Ny mari-pamantarana ara-potoana dia atolotra amin'ny filaminana azo antoka. Misy mari-pamantarana maimaim-poana an-tapitrisany mitovy amin'izany no omena amin'ny baiko nirahina. Raha sendra misy tsiambaratelo samihafa any amin'ny dingana iray, dia atolotra izy ireo manomboka amin'ny mari-pamantarana ambany indrindra. (Eny, ireo mari-pamantarana ambany no laharam-pahamehana.)

Raha toa ny roa tonta sy ny fe-potoana misy eo amin'ny sehatra dia miandry ny dingana iray, ny POSIX dia mametraka izany tsy voamarina izay natolotra voalohany. Linux, toy ny fanatsarana maro hafa, dia manome laharam-pahamehana ireo mari-pamantarana misy eo amin'ity tranga ity.

Araka ny voalazan'ny POSIX, ny fampiharana dia tokony hamela farafaharatsiny hoe _POSIX_SIGQUEUE_MAX (32) famantarana ny fotoana hijanonana amin'ny dingana. Na izany aza, fa tsy mametraka fetran'ny per-process, Linux dia mametraka fetra farafahakeliny momba ny isan'ireo mari-pamantarana maimaika amin'ny fotoana rehetra ho an'ny dingana rehetra.

Ity fetra ity dia azo jerena (ary manana tombontsoa) miova amin'ny alalan'ny / proc / sys / kernel / rtsig-max rakitra. Ny rakitra mifandraika, / proc / sys / kernel / rtsig-max , dia azo ampiasaina mba hahafantarana hoe firy ny isa azo ampiasaina amin'izao fotoana izao.

CONFORMING TO

POSIX.1

Zava-dehibe: Ampiasao ny baikon'ny lehilahy ( % man ) mba hahitana ny fomba ampiasan'ny baiko amin'ny solosainao manokana.