免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: lmarsin
打印 上一主题 下一主题

学习linux内核时,模仿linux编写的操作系统 [复制链接]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
61 [报告]
发表于 2010-03-28 21:30 |只看该作者
回复  Godbach


    就是因为加了 0x400 导致 ax 溢出被清 0

 结果无论多少内存,都视为 0

 应 ...
mik 发表于 2010-03-28 21:15

是吗,我这里设置为512M,是可以正常启动的。
我自己编译的源码

论坛徽章:
0
62 [报告]
发表于 2010-03-28 21:40 |只看该作者
回复 61# Godbach


    LZ 已经修改过代码


LZ 在 24 楼说:

可能那个image比较旧,用代码编译后的image试试



在 25 楼说的:

新的代码修改为:
  1. 代码是这样的
  2. ; 取得物理内存大小 (1M以上的扩展内存, KB)
  3.     mov    ah, 0x88
  4.     int    0x15

  5. ;;探测内存是否小于16M,如果小于,则提示并死机
  6.     cmp    ax, 0x3C00
  7.     jae    next
  8.     mov    ax, SETUP_SEG
  9.     mov    ds, ax  
  10.     mov    si, mem_too_small             ;     
  11.     call   print_msg                     ;
  12.     jmp    $
复制代码
已经去掉 ax + 0x400 这条代码,直接比较是否大于 0x3c00 (16M)

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
63 [报告]
发表于 2010-03-29 10:03 |只看该作者
是吗。我这边编译的时候,就是带着ax+0x400的。

论坛徽章:
0
64 [报告]
发表于 2010-03-29 10:13 |只看该作者
boot代码我没改

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
65 [报告]
发表于 2010-03-29 10:24 |只看该作者
恩,昨天把启动部分的代码读了以便,短小精悍啊。

论坛徽章:
0
66 [报告]
发表于 2010-03-29 10:39 |只看该作者
崇拜加仰慕

论坛徽章:
0
67 [报告]
发表于 2010-03-29 15:48 |只看该作者
存放了好几年拉 LZ酿酒哇 哈哈

论坛徽章:
0
68 [报告]
发表于 2010-03-29 16:07 |只看该作者
下来看看,多谢LZ

论坛徽章:
0
69 [报告]
发表于 2010-03-30 12:19 |只看该作者
收藏~

论坛徽章:
0
70 [报告]
发表于 2010-03-31 13:14 |只看该作者
牛人啊!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP