当前时区 GMT+8, 现在时间是 2008-8-30 19:09 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: 我对Skyeye-1.0.0的一点点改进地方思考:
want_king
新手上路
Rank: 1



UID 216344
精华 0
积分 35
帖子 14
阅读权限 10
注册 2006-4-19
状态 离线
发表于 2006-8-8 19:40  资料  短消息  加为好友 
我对Skyeye-1.0.0的一点点改进地方思考:

在armemu.c中STR/LDR调用的函数中总有

//存储数据地址错误
if (VECTORACCESS (address) || ADDREXCEPT (address))
       
//#define ADDREXCEPT(address)   (address > LEGALADDR && !state->data32Sig)
//#define LEGALADDR 0x03ffffff
//我觉得这点有个小小的错误。假如是一个字的话并且是little-endian,那么address> LEGALADDR-4地址就应该是错误的。
//而且我觉得这是一个Bug,它只能选择一个64M的空间,那么模拟的开发板的存储空间或者IO地址超过这个范围那么对IO地址的访问就会出现错误的结果。

顶部
want_king
新手上路
Rank: 1



UID 216344
精华 0
积分 35
帖子 14
阅读权限 10
注册 2006-4-19
状态 离线
发表于 2006-8-9 19:19  资料  短消息  加为好友 
呵呵 ,我又看了几次
发现原来的sim/arm/armvirt.c中getword 和putword中介绍了arm4G地址空间的计算方法。看来if (VECTORACCESS (address) || ADDREXCEPT (address)) 不是地址空间。以前理解错误了

顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP