SIGSEGV

Multi tool use
SIGSEGV
描述 |
无效内存引用 |
默认动作 |
进程异常终止 |
SA_SIGINFO宏 |
SEGV_MAPERR |
地址没有映射到对象
|
SEGV_ACCERR |
对映射的对象没有权限
|
|
在POSIX兼容的平台上,SIGSEGV是当一个进程执行了一个无效的内存引用,或发生段错误时发送给它的信号。SIGSEGV的符号常量在头文件signal.h
中定义。因为在不同平台上,信号数字可能变化,因此符号信号名被使用。通常,它是信号#11。[1]
语源
SIG是信号名的通用前缀。SEGV是segmentation violation(段违例)的缩写。
使用
对于不正确的内存处理(见段错误),计算机程序可能抛出SIGSEGV。操作系统可能使用信号栈向一个处于自然状态的应用程序通告错误,由此,开发者可以使用它来调试程序或处理错误。
在一个程序接收到SIGSEGV时的默认动作是异常终止。这个动作也許會结束进程,但是可能生成一个核心文件以帮助调试,或者执行一些其他特定于某些平台的动作。例如,使用了grsecurity补丁的Linux系统可能记录SIGSEGV信号以监视可能的使用缓存溢出的攻击尝试。
SIGSEGV可以被捕获。也就是说,应用程序可以请求它们想要的动作,以替代默认发生的动作。这样的动作可以是忽略它、调用一个函数,或恢复默认的动作。在一些情形下,忽略SIGSEGV导致未定义行为。[2]
一个应用程序可能处理SIGSEGV的例子是调试器,它可能检查信号栈并通知开发者目前所发生的,以及程序终止的位置。
SIGSEGV通常由操作系统生成,但是有适当权限的用户可以在需要时使用kill
系统调用或kill命令(一个用户级程序,或者一个shell内建命令)来向一个进程发送信号。
参考
^ sourceware.org Git - glibc.git/blob - bits/signum.h. 2001-07-06 [2009-11-18]. [永久失效連結]
^ System Interfaces Chapter 2. 2004年 [2009-11-18].
外部链接
- The Open Group Base Specifications Issue 6 signal.h
计算机信号
|
|
POSIX |
SIGABRT · SIGALRM · SIGFPE · SIGHUP · SIGILL · SIGINT · SIGKILL · SIGPIPE · SIGQUIT · SIGSEGV · SIGTERM · SIGUSR1 · SIGUSR2 · SIGCHLD · SIGCONT · SIGSTOP · SIGTSTP · SIGTTIN · SIGTTOU · SIGBUS · SIGPOLL · SIGPROF · SIGSYS · SIGTRAP · SIGURG · SIGVTALRM · SIGXCPU · SIGXFSZ ·
实时信号可由用户定义(SIGRTMIN+n至SIGRTMAX) |
|
非POSIX |
SIGIOT · SIGEMT · SIGSTKFLT · SIGIO · SIGCLD · SIGINFO · SIGPWR · SIGLOST · SIGWINCH · SIGUNUSED
|
|
uwrHHOaSnHQ8LgB engrnjsK pPPTkmwTu5
Popular posts from this blog
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
1
I have 4 tables namely stud, country_master_academic,master_state and master_city. The main problem is that my form consists of many different fields like textbox, radio buttons, dropdown and an image file, so i am getting really confused. I can't insert data in database. Please help me. I tried many times but its not working. Thanks for the help in advance. Modal in home.php page <div class="container"> <div class="modal fade" id="add_data_modal" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> ...
6
$begingroup$
This is an entry in the Fortnightly Topic Challenge #41: Short and Sweet. 1 letter only could be mean anything . With an additional letter in front , could be used as medicine component and something you definitely learn or at least heard once. Add another letter in front , you would possibly hear that many times . Add an additional letter in front , you would found an independent country . With an additional letter, in the end , you would found something related to apple . Add another letter in the end , you would found something bad . Hint: Each letter is unique .
word knowledge letters chemistry
share | improve this question
...
0
I am trying to run a scheduled task with User Group (not a single user). This is working fine when I in the field "when running a task, use the following user account:" insert BUILTIN User Group (for example: Administrators or Users). But when I try it with the created Local User Group (example: TestGroup) it is not working. The Users in the TestGroup are the same as in the Administrators group. What could be the problem? Are there some restrictions to the Created User Group compared to BUILTINUsers?
scheduled-tasks taskscheduler windowstaskschedule
share | improve this question
asked Nov 15 '18 at 15:36
Far...