Linux styður bæði POSIX áreiðanlegar merki (hér á eftir "staðalmerki") og POSIX rauntíma merki.
Staðalmerki
Linux styður staðalmerkin sem taldar eru upp hér að neðan. Nokkrir merki tölur eru arkitektúr háð, eins og fram kemur í "Value" dálknum. (Þar sem þrír gildi eru gefnar er fyrsta gildið venjulega gild fyrir alfa og sparc, miðjan fyrir i386, ppc og sh, og síðasta fyrir mips.
A - táknar að merki er fjarverandi á samsvarandi arkitektúr.)
Uppfærslur í "Aðgerð" dálki töflunnar tilgreina sjálfgefin aðgerð fyrir merki, sem hér segir:
Hugtakið
Sjálfgefin aðgerð er að segja upp ferlinu.
Ign
Sjálfgefin aðgerð er að hunsa merki.
Kjarni
Sjálfgefin aðgerð er að segja upp ferlið og afrita kjarna.
Hættu
Sjálfgefin aðgerð er að stöðva ferlið.
Fyrst merki sem lýst er í upprunalegu POSIX.1 staðlinum.
Merki | Gildi | Aðgerð | Athugasemd |
eða dauða stjórnunarferlis | |||
SIGINT | 2 | Hugtakið | Slökkva á lyklaborðinu |
SIGQUIT | 3 | Kjarni | Hætta frá lyklaborðinu |
SIGILL | 4 | Kjarni | Ólögleg kennsla |
SIGABRT | 6 | Kjarni | Afnema merki frá abort (3) |
SIGFPE | 8 | Kjarni | Undantekning flotts |
SIGKILL | 9 | Hugtakið | Drepa merki |
SIGSEGV | 11 | Kjarni | Ógilt minni tilvísun |
SIGPIPE | 13 | Hugtakið | Broken pípa: skrifa til pípa án lesenda |
SIGALRM | 14 | Hugtakið | Tímamælismerki frá viðvörun (2) |
SIGTERM | 15 | Hugtakið | Uppsagnarmerki |
SIGUSR1 | 30,10,16 | Hugtakið | Notandi skilgreint merki 1 |
SIGUSR2 | 31,12,17 | Hugtakið | Notandi skilgreint merki 2 |
SIGCHLD | 20,17,18 | Ign | Barn hætt eða lokað |
SIGCONT | 19,18,25 | Haltu áfram ef þú hættir | |
SIGSTOP | 17,19,23 | Hættu | Hættu ferli |
SIGTSTP | 18,20,24 | Hættu | Hættu að slá inn á tty |
SIGTTIN | 21,21,26 | Hættu | tty inntak fyrir bakgrunn ferli |
SIGTTOU | 22,22,27 | Hættu | tty framleiðsla fyrir bakgrunn ferli |
Merkið SIGKILL og SIGSTOP er ekki hægt að veiða, læst eða hunsa.
Næsta merki eru ekki í POSIX.1 staðlinum en lýst er í SUSv2 og SUSv3 / POSIX 1003.1-2001.
Merki | Gildi | Aðgerð | Athugasemd |
SIGPOLL | Hugtakið | Mælanleg atburður (Sys V). Samheiti SIGIO | |
SIGPROF | 27,27,29 | Hugtakið | Sjálfvirk tímamörk útrunnið |
SIGSYS | 12, -, 12 | Kjarni | Slæm rök til venja (SVID) |
SIGTRAP | 5 | Kjarni | Trace / breakpoint gildru |
SIGURG | 16,23,21 | Ign | Brýn skilyrði á fals (4,2 BSD) |
SIGVTALRM | 26,26,28 | Hugtakið | Raunverulegur vekjaraklukka (4,2 BSD) |
SIGXCPU | 24,24,30 | Kjarni | Tímamörk CPU yfir (4.2 BSD) |
SIGXFSZ | 25,25,31 | Kjarni | Skráarstærðarmörk (4.2 BSD) |
Allt að og með Linux 2.2, sjálfgefna hegðun SIGSYS , SIGXCPU , SIGXFSZ og (á öðrum arkitektúr en SPARC og MIPS) SIGBUS var að segja upp ferlinu (án kjarna sorphaugur). (Á sumum öðrum Unices er sjálfgefið aðgerð fyrir SIGXCPU og SIGXFSZ að ljúka ferlinu án kjarna sorphaugs.) Linux 2.4 uppfyllir kröfur POSIX 1003.1-2001 fyrir þessi merki og lýkur ferlinu með kjarna sorphaug.
Næsta ýmis önnur merki.
Merki | Gildi | Aðgerð | Athugasemd |
SIGEMT | 7, -, 7 | Hugtakið | |
SIGSTKFLT | -, 16, - | Hugtakið | Stakk sök á coprocessor (ónotaður) |
SIGIO | 23,29,22 | Hugtakið | Ég / O núna mögulegt (4,2 BSD) |
SIGCLD | -, -, 18 | Ign | Samheiti fyrir SIGCHLD |
SIGPWR | 29,30,19 | Hugtakið | Rásbilun (kerfi V) |
SIGINFO | 29, -, - | Samheiti fyrir SIGPWR | |
SIGLOST | -, -, - | Hugtakið | Skrá læsa glataður |
SIGWINCH | 28,28,20 | Ign | Gluggastærð resize merki (4.3 BSD, Sun) |
SIGUNUSED | -, 31, - | Hugtakið | Ónotað merki (verður SIGSYS) |
(Signal 29 er SIGINFO / SIGPWR á alfa en SIGLOST á sparc.)
SIGEMT er ekki tilgreint í POSIX 1003.1-2001, en aldrei kemur fram á flestum öðrum Unices, þar sem vanræksla er venjulega að ljúka ferlinu með kjarna sorphaug.
SIGPWR (sem er ekki tilgreint í POSIX 1003.1-2001) er yfirleitt hunsuð sem sjálfgefið á þessum öðrum Unices þar sem það birtist.
SIGIO (sem er ekki tilgreint í POSIX 1003.1-2001) er hunsað sjálfgefið á nokkrum öðrum Unices.
Rauntíma merki
Linux styður rauntíma merki eins og upphaflega skilgreint í POSIX.4 rauntíma viðbótunum (og er nú með í POSIX 1003.1-2001). Linux styður 32 rauntíma merki, talin úr 32 ( SIGRTMIN ) í 63 ( SIGRTMAX ). (Forrit skulu alltaf vísa til rauntíma merkja með merkingu SIGRTMIN + n, þar sem fjöldi rauntíma merkjanna er mismunandi á milli Unices.)
Ólíkt staðalmerkjum hafa rauntímarit ekki neina fyrirfram skilgreindar merkingar: Allt sett af rauntíma merkjum er hægt að nota til að skilgreina forrit. (Athugaðu þó að LinuxThreads framkvæmdin notar fyrstu þrjá rauntíma merkin.)
Sjálfgefin aðgerð fyrir óviðráðanlegt rauntíma merki er að segja upp móttökuferlinu.
Rauntímamerki eru áberandi af eftirfarandi:
- Mörg dæmi um rauntíma merki geta verið í biðstöðu. Hins vegar, ef mörg dæmi um stöðluð merki eru afhent meðan þessi merki er lokað, þá er aðeins eitt dæmi í biðstöðu.
- Ef merki er sent með því að nota sigqueue (2) er hægt að senda meðfylgjandi gildi (annaðhvort heiltala eða bendilinn) með merki. Ef móttökuferlið stofnar handhafa fyrir þetta merki með því að nota SA_SIGACTION fánann við sigaction (2) þá getur það fengið þessar upplýsingar í gegnum si_value reitinn í siginfo_t uppbyggingunni sem liðið er sem seinni rökin til umsjónarmanns. Enn fremur er hægt að nota si_pid og si_uid sviðin í þessari uppbyggingu til að fá PID og raunveruleg notandanafn ferilsins sem sendir merkiið.
- Rauntímamerki eru afhent í tryggðri röð. Margfeldi rauntíma merki af sömu gerð eru afhent í þeirri röð sem þau voru send. Ef mismunandi rauntíma merki eru send til ferlis eru þau afhent með því að byrja með lægsta númerið. (Þ.e. Lágarnúmer merki eru í forgang.)
Ef bæði stöðluðu og rauntíma merki eru í bið fyrir ferli, skilur POSIX það ótilgreint sem er fyrst afhent. Linux, eins og margir aðrir framkvæmdarráðstafanir, gefur forgang staðlaða merki í þessu tilfelli.
Samkvæmt POSIX ætti framkvæmd að leyfa að minnsta kosti _POSIX_SIGQUEUE_MAX (32) rauntíma merki í biðstöðu í ferli. Hins vegar leggur Linux, í stað þess að setja viðmiðunarmörk fyrir hverja vinnslu, kerfisbundið takmörk á fjölda biðröð rauntíma merki fyrir öll ferli.
Þessi takmörk er hægt að skoða (og með forréttindi) breytt með / proc / sys / kernel / rtsig-max skrá. Tengd skrá, / proc / sys / kernel / rtsig-max , er hægt að nota til að finna út hversu mörg rauntíma merki eru í biðstöðu.
SAMÞYKKI TIL
POSIX.1
Mikilvægt: Notaðu stjórn mannsins ( % maður ) til að sjá hvernig stjórn er notuð á tölvunni þinni.