LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1070|回复: 7

低手问个很弱智问题,请人回答!

[复制链接]
发表于 2004-8-6 11:23:59 | 显示全部楼层 |阅读模式
我在看linux0.11的源代码分析,看到了引导部分了。
有一个地方我非常的疑惑:
里面说,CPU加电后执行bios里的程序,bios里的程序就会将0扇区的内容读到绝对地址0x7C000处,既然这是绝对地址那么应该可以算出内存的大小=2的20次方?!太小了吧?
本人愚钝,对于这个问题百思不得其解,还请高人告诉我啊。谢谢了!
如果有好心人愿做免费老师的话请加我QQ:7686208
我独自学习linux0.11内核太辛苦了,有时有些地方一看就是一天也不思其解
谢谢了!
发表于 2004-8-6 12:15:28 | 显示全部楼层

回复: 低手问个很弱智问题,请人回答!

最初由 pimpyan 发表
我在看linux0.11的源代码分析,看到了引导部分了。
有一个地方我非常的疑惑:
里面说,CPU加电后执行bios里的程序,bios里的程序就会将0扇区的内容读到绝对地址0x7C000处,既然这是绝对地址那么应该可以算出内存的大小=2的20次方?!太小了吧?
本人愚钝,对于这个问题百思不得其解,还请高人告诉我啊。谢谢了!
如果有好心人愿做免费老师的话请加我QQ:7686208
我独自学习linux0.11内核太辛苦了,有时有些地方一看就是一天也不思其解
谢谢了!

没错,x86的实地址模式的内存空间只有1MB(2的20次方),有什么疑问吗?

ps:0.11的源码很简单;
我看2.6.7的源码,花费了一个星期,呵呵
 楼主| 发表于 2004-8-6 21:25:49 | 显示全部楼层
那我们常常说的128MB256MB的内存在这个时候是不是没用啊?
只用到其中1MB?
详细解释一下啊!
老大
发表于 2004-8-6 22:11:58 | 显示全部楼层
你找本汇编的书看看,搞清楚实模式和保护模式寻址有什么区别。
发表于 2004-8-7 17:56:41 | 显示全部楼层

回复: 低手问个很弱智问题,请人回答!

最初由 pimpyan 发表
我在看linux0.11的源代码分析,看到了引导部分了。
有一个地方我非常的疑惑:
里面说,CPU加电后执行bios里的程序,bios里的程序就会将0扇区的内容读到绝对地址0x7C000处,既然这是绝对地址那么应该可以算出内存的大小=2的20次方?!太小了吧?


楼主书看的不专心啊。
不是
0x7C000
而是:0x7C00
再说吧,地址的表示中,前面的0会省掉,再按2的XX次方来算是没意义的。

PS:当P C启动时,I n t e l系列的C P U首先进入的是实模式,并开始执行位于地址0 x F F F F 0处的代码,也就是R O M - B I O S起始位置的代码。
发表于 2004-8-7 18:06:45 | 显示全部楼层

回复: 回复: 低手问个很弱智问题,请人回答!

最初由 home_king 发表

我看2.6.7的源码,花费了一个星期,呵呵


昏...
练葵花宝典也没那么快吧?!
 楼主| 发表于 2004-8-8 00:08:56 | 显示全部楼层
五楼的让我粉受教育啊,我回头看了一下书,真的是0x7c00 啊
惭愧惭愧~
偶一定更专心的学习,向版主老大们学习,敬礼!
发表于 2004-8-19 01:31:02 | 显示全部楼层
最初由 锋锋 发表
昏...
练葵花宝典也没那么快吧?!




想问一下,看内核代码要自宫吗? ^_^
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表