计算机中的魔数

笔者在学习操作系统时接触到了这个专业词,简单记录一下。

定义

魔数 (magic number):它被用来为重要的数据定义标签,用独特的数字唯 地标识该数据,这种独特的数字是只有少数人才能掌握其奥秘的"神秘力量"。

举个生动的例子:就像小姑娘对着小伙子伸出大拇指和食指,小伙子马上就意会了,这是让我晚上 点在村口东边老槐树下见。

简单来说,就是懂得人马上就意会其中的含义,不了解的人对次感到迷惑。

应用

魔数的应用场景比较多 ~

例如:

  • elf文件头
ELF Header
	Magic : 7f 45 4c 4 6 01 01 01 00 00 00 00 00 00 00 00 00

这个 Magic 后面的 长串就是魔数, elf 解析器(通常是程序加载器)用它来校验文件的类型是否是 elf。

  • 扇区是否可引导

主引导记录最后的两个字节的内容是 0x55, 0xaa,这表明这个扇区里面有可加载的程序, BIOS 就用它来校验该扇区是否可引导.

  • OS识别文件系统

一个硬盘上可以有很多分区,每个分区的格式又可以不同。

对于Linux系统而言,既可以识别ext3,又可识别ext4。

原因在于文件系统有自己的魔数。各分区都有超级块, 一般位于本分区的第 2 个扇区。超级块里面记录了此分区的信息,其中就有文件系统的魔数,1 种文件系统对应 1个魔数,比对此值便知道文件系统类型了

参考资料:

  • 《操作系统真象还原》
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值