“segfault”是 segmentation fault(段错误) 的非正式说法,指程序在运行时 非法访问内存(例如访问未分配的地址、越界访问、解引用空指针等)而被操作系统强制终止的一类错误。在类 Unix 系统里常见提示为 “Segmentation fault”。
My program segfaults when I click the button.
我一点击那个按钮,程序就段错误崩溃。
After the refactor, the service started to segfault intermittently, which turned out to be a use-after-free bug in the cache code.
重构之后,服务开始间歇性段错误崩溃,后来发现是缓存代码里的“释放后继续使用”(use-after-free)漏洞导致的。
/ˈsɛɡ.fɔːlt/
“segfault”是 segmentation fault 的缩略口语形式:segment(内存“段/分段”)+ fault(故障/错误)。早期操作系统与硬件的内存保护机制会把进程的地址空间划分并进行权限检查,当程序越权访问内存时就触发这种“段错误”。
signal(7)、sigaction(2) 相关资料)——对 “Segmentation fault / SIGSEGV” 有直接说明与示例。