-
-
[求助]请问怎么才能反汇编BIOS呢
-
发表于:
2008-1-17 15:03
7137
-
从网上下的源代码有的太旧了
用于刷写的文件被不知道怎么处理过
看不出来是什么
还有
IDE控制器对应的那些端口怎么看都只支持28位的LBA
现在的硬盘随地都是大于137GB的
肯定用的是ATA/ATAPI-8标准,也就是肯定支持48位的LBA
CHS早就是历史遗迹了不知道为什么还那么多文章转载
我也稍微看了下ATA-8的文档,上面只有协议和指令集
那我估计端口应该是由主板决定的
不同厂商的可能还不一样
我自己NF4的主板好像是这样的(取自/proc/ioports)
e000-e00f : 0000:00:0e.0 e000-e00f : sata_nv
e080-e083 : 0000:00:0e.0 e080-e083 : sata_nv
e400-e407 : 0000:00:0e.0 e400-e407 : sata_nv
e480-e483 : 0000:00:0e.0 e480-e483 : sata_nv
e800-e807 : 0000:00:0e.0 e800-e807 : sata_nv
翻了下Linux内核源代码有关ATA的部分,只找到了ATA控制器寄存器的偏移量
基地址没法确认
本人能力有限,谁解释一下啊
如果按那些文章所说的用1f0-1f7,170-177那几个端口显然就只支持28位的LBA啊
因为看到不少消息升级了BIOS总算支持48位LBA了什么的
所以我才想看下BIOS的代码啊,特别是INT 13部分
或者说我上面列出的端口就是我主板上SATA控制器的端口,那样我就可以专心看看内核驱动,猜出来各端口对应的寄存器
或者说某处有芯片资料说明了这些,谁要是有的就提供一下啊
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课