关注
A segmentation fault (often shortened to SIGSEGV) is a particular error condition that can occur during the operation of computer software. A segmentation fault occurs when a program attempts to access a memory location that it is not allowed to access, or attempts to access a memory location in a way that is not allowed (for example, attempting to write to a read-only location, or to overwrite part of the operating system). Segmentation is one approach to memory management and protection in the operating system. It has been superseded by paging for most purposes, but much of the terminology of segmentation is still used, "segmentation fault" being an example. Some operating systems still have segmentation at some logical level although paging is used as the main memory management policy. On Unix-like operating systems, a process that accesses an invalid memory address receives the SIGSEGV signal. On Microsoft Windows, a process that accesses invalid memory receives the STATUS_ACCESS_VIOLATION exception. 就是:所谓的段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的gdt表,后13位保存相应于gdt的下标,最后3位包括了程序是否在内存中以及程序的在cpu中的运行级别,指向的gdt是由以64位为一个单位的表,在这张表中就保存着程序运行的代码段以及数据段的起始地址以及与此相应的段限和页面交换还有程序运行级别还有内存粒度等等的信息。一旦一个程序发生了越界访问,cpu就会产生相应的异常保护,于是segmentation fault就出现了。 即“当程序试图访问不被允许访问的内存区域(比如,尝试写一块属于操作系统的内存),或以错误的类型访问内存区域(比如,尝试写一块只读内存)。这个描述是准确的。为了加深理解,我们再更加详细的概括一下SIGSEGV。段错误应该就是访问了不可访问的内存,这个内存区要么是不存在的,要么是受到系统保护的。
查看原帖
点赞 评论
相关推荐
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
1332519次浏览 18707人参与
# 非技术岗薪资爆料 #
53765次浏览 732人参与
# 不去互联网可以去金融科技 #
47789次浏览 508人参与
# 和牛牛一起刷题打卡 #
45640次浏览 3597人参与
# 产品每日一题 #
2025次浏览 99人参与
# 来聊聊你目前的求职进展 #
230417次浏览 2917人参与
# OPPO开奖 #
59378次浏览 856人参与
# 晒一晒我的offer #
4037019次浏览 60426人参与
# 写简历别走弯路 #
360829次浏览 4543人参与
# 硬件兄弟们 甩出你的华为奖状 #
38116次浏览 224人参与
# 软件开发2024笔面经 #
1572198次浏览 36096人参与
# 华子oc时间线 #
11546次浏览 60人参与
# 如果可以选,你最想从事什么工作 #
220648次浏览 3406人参与
# 互联网公司评价 #
106295次浏览 1379人参与
# 参加过提前批的机械人,你们还参加秋招么 #
16873次浏览 383人参与
# 我想象的工作vs实际工作 #
117378次浏览 1813人参与
# 百度工作体验 #
32224次浏览 317人参与
# 机械制造笔面经 #
12781次浏览 346人参与
# 24届软开秋招面试经验大赏 #
1241592次浏览 18685人参与
# 如何写一份好简历 #
342744次浏览 4763人参与
# 我的成功项目解析 #
102179次浏览 2845人参与
# 滴!实习打卡 #
293150次浏览 4299人参与