当 Linux 出现段错误时,Segmentation fault (core dumped)
会在终端(如果有)打印错误信息,并终止程序。作为 C/C++ 开发人员,这种情况经常发生在我身上,我通常会忽略它并转到gdb
,重新创建我之前的操作以再次触发无效的内存引用。相反,我想我也许可以改用这个“核心”,因为一直运行gdb
是相当乏味的,而且我不能总是重新创建分段错误。
我的问题是三个:
这是一个相当低级的问题,我知道这可能不是最好的提问地点。但是,它似乎比任何其他 SE 网站都更合适,所以就这样吧。
我知道在 Linux 文件系统上,确实存在一些文件,例如:/usr/bin/bash
is one that exists。然而,(据我所知),有的还没有实际存在本身和更虚拟的文件,如:/dev/sda
,/proc/cpuinfo
等我的问题是(它们是两个,而是要独立的问题也密切相关):
/dev/random
将返回随机数据,读取自/dev/null
将返回EOF
. 它如何确定要从该虚拟文件中读取哪些数据(以及因此当/如果数据也写入虚拟文件时要做什么) - 是否有某种带有指向适合每个文件的单独读/写命令的指针的映射,甚至是虚拟目录本身?因此,一个条目/dev/null
可以简单地返回一个EOF
.