得知了神秘的 0x08048000 的来历

2018-02-13 20:45:00 +08:00
 byaiu

一度困惑为何要选择这样一个数字,结果发现是 System V ABI 里的规定。

http://sco.com/developers/devspecs/abi386-4.pdf

第 32 页。

6641 次点击
所在节点    Linux
3 条回复
byaiu
2018-02-13 20:48:08 +08:00
是 48 页……
eaglexiang
2018-02-14 02:16:20 +08:00
这还不是根本。我曾经翻译过一篇考据帖,最初的原因是当年某个系统(忘了哪个)在某个型号主板(忘了型号)上工作时,要避免覆盖内存前端存放的 BIOS 中断。内存位数过来正好是魔数。后来就成了标准。
byaiu
2018-02-14 08:28:59 +08:00
@eaglexiang 求链接……

我想到这个地址是 32 位的,印象中只有进了操作系统后才有 32 位地址,而操作系统应该都会重新设置中断向量,是否可能不存在覆盖 BIOS 中断的情况?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/430633

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX