前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >位于计算机内存中的黑洞

位于计算机内存中的黑洞

作者头像
冬瓜哥
发布2019-06-10 17:59:25
5940
发布2019-06-10 17:59:25
举报
文章被收录于专栏:大话存储大话存储

人类历史上第一张实拍黑洞照片出炉了,实际上,这幅照片也是利用有限的数据进过计算推演出来的,因为要实拍下这个黑洞全貌,需要大于地球直径口径的望远镜。

然而你知道么,计算机的内存中竟然也存在“黑洞”!!

宇宙是个大空间,在这个空间中弥漫着大量的火花——恒星,如果把宇宙演化的过程加快,这些恒星就像转瞬即逝的烟花一样。以及行星和星云等各种天体。

而CPU的可寻址范围也是个大空间,被称为物理地址空间,比如64bit物理地址空间中最大可包含2的64次方个地址,每个地址上可以存放一个字节。然而,如同宇宙一样,CPU的这64bit物理地址空间其实蛮大的,而也如同宇宙一样,在这个物理空间中,分布着各种存储器,包括:

  1. SDRAM。也就是俗称的主存。这里存放着操作系统和应用程序代码和数据。
  2. BIOS ROM。包括主板BIOS ROM和外部设备比如各类PCIE卡上的BIOS ROM。这里存放着用于早期启动的原始程序和数据。
  3. 设备寄存器/存储器。这里存储的是用于与设备之间交互的各种控制信息或者数据缓冲。

上述三种存储器在实际计算机中的容量都是有限的,比如单台计算机配备的RAM通常从几GB到几TB之间,而ROM也就是数MB空间,外部设备中的存储器空间通常在数KB到数GB之间。这些存储器空间被映射在CPU的物理地址空间中,至于应设在哪段区域,则由BIOS和操作系统共同管理和决定。

也就是说,整个CPU物理地址空间中很大一部分其实是真空的,没有存储任何内容,而程序也不会发出针对这些地址的访问,否则会被认为是非法访问而。目前物理和天文学家认为,宇宙中充满了暗能量,也就是那些没有被物质填充的所谓“真空”中,其实是有能量形式存在的,这就像应用程序认为整个物理存储器都是它自己的,一马平川,而实际上SDRAM中还存在操作系统内核程序和数据,以及其他应用程序的代码和数据,而这些它看不到的东西,就是计算机空间中的暗物质/暗能量。

那么,CPU物理地址空间中是否存在类似宇宙中黑洞的结构呢?答案是肯定的。在《大话计算机》一书第862页上,该书作者冬瓜哥进行了详细的阐释:

原来,主板BIOS ROM和Video BIOS ROM都可以被shadow到SDRAM中从而加速CPU执行ROM中的代码,那么这两块ROM被映射在物理空间中的区域就成了“黑洞”。在早期32bit CPU时代,没开启PAE的话,CPU最大可访问32bit物理地址空间,也就是那时的宇宙只有4GB大小,而那时候已经有4GB的RAM了,一个RAM就能把整个宇宙占满,如果宇宙中还存在这些黑洞的话,那么就不得不砍掉一些RAM容量,少映射一些到空间中,那就很不划算了。

冬瓜哥在其著作《大话计算机》中,对hole给出了详细的阐释,在尾声部分,也思考了整个宇宙模型与计算机模型之间的联系和区别,对事物本质、过程的思考丝丝入扣,令人拍案惊奇!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大话存储 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档