"吐核"笑谈

    一位同行询问为什么在他的CentOS系统里找不到core文件。对于这样的问题,老雷是非常有兴趣的。于是要了个账号,SSH上去,用vi输入几行代码,故意包含一个除零异常:

int main(int argc, char * argv[])

{

    int n,m=0;

    n = argc/m;

    return n;

}

随后用gcc编译,执行,果然崩溃。系统是中文的,提示消息让我差点跌掉眼镜:

浮点数意外(吐核

c48d70586ea81cb0bff27c463a80fa41.png

好一个吐核!英文原文是core dumped,翻译为吐核,真是让人喷饭。不知道是何人的智慧?难道是机器翻译的么?

这里的core是有点难理解的,即使是软件专业的人可能也不知其所以然。正确的理解是这样的。这里的core是指历史上曾经无比风光的磁核内存。从上世纪50年代到70年代的20多年里,它一直是占垄断地位的内存技术,是计算机系统中不可缺少的关键部件。直到RAM出现,它才退出历史舞台。

8b09391c013f9744f11839d302439b28.png

    几十年过去了,core内存只有在博物馆里才能见到了。虽然如此,core dumped这个词却常出现。虽然很多专业程序员可能也不知道core的历史,但是大多都知道它是用来帮助调试的。所以上面的“吐核”,多半出自某个非计算机专业的翻译之手。

    观察一下version文件,系统确实是大名鼎鼎的CentOS:

[root@netmonitor raymond]# cat /proc/version

Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015

    于是,不仅想问中文翻译难道没有review过么?汗啊!

    顺便说一下,core文件的位置是可以配置的,观察当前配置的方法很简单,只要:

    cat  /proc/sys/kernel/core_pattern

    到显示出的位置一看,其实core文件已经产生了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值