![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 08:33 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » sata硬盘接口的问题! |
| 可打印版本 3,385 / 6 |
| 第1楼 zhgwbzhd | 发表于 2006-09-29 23:40 |
| 高级用户 发帖 187 积分 506 | |
|
sata硬盘接口的问题! 现在的硬盘很多都是sata,原来是ide。
对硬盘读写可通过int13. 现在使用int13对sata和ide硬盘都可以进行读写。这个测试完毕。 但是使用io对硬盘进行读写时。用ide没问题,可以使用1f0进行端口的读写。 可是在使用sata时,就不能写成功。 所以我认为是参数不正确,那位朋友知道的可以指点一下。谢谢。 |
|
| 第2楼 zhgwbzhd | 发表于 2006-09-30 03:15 |
| 高级用户 发帖 187 积分 506 | |
|
目前只是解决了把sata硬盘认作是第1硬盘的可以解决了。
|
|
| 第3楼 jasonjason | 发表于 2007-03-01 04:15 |
| 新手上路 发帖 2 积分 6 | |
|
急,在dos7.1里如何读取硬盘序列号?在线等待 急,在dos7.1里如何读取硬盘序列号?在线等待
|
|
| 第4楼 netwinxp | 发表于 2008-07-01 18:15 |
| 高级用户 发帖 366 积分 741 | |
|
SATA IDE模式仍然映射1F0/170口,这个问题不大。对于SATA AHCI模式你可能需要从PCICFG取得分配到的I/O口基址,然后向取得的I/O口发ATA命令看上面是否挂有硬盘。
[ Last edited by netwinxp on 2008-7-1 at 06:44 PM ] |
|
| 第5楼 libeili | 发表于 2008-08-22 16:11 |
| 新手上路 发帖 5 积分 7 | |
Originally posted by netwinxp at 2008-7-1 06:15 PM: 同意此种说法,但是AHCI只是intel公司的一个协议,如果主板支持AHCI的话,可以通过AHCI来访问sata硬盘,具体的端口访问以及fis表及command表的设置需要参考AHCI spec,如果是其它公司的就要看相应spec了 |
|
| 第6楼 netwinxp | 发表于 2008-09-28 13:46 |
| 高级用户 发帖 366 积分 741 | |
Originally posted by libeili at 2008-8-22 16:11: 硬盘控制器只不过是用来向硬盘发送ATA命令的芯片,一般的ATA读写命令兼容所有的EIDE、PATA、SATA硬盘控制器和硬盘,仅仅用PIO读写而不使用的NCQ的话就不需要用SATA专用的ATA命令。通过PIO模式读写硬盘主要要解决两个问题: 1、IO口基址,不同的Port或Channel对应的口不同。 2、设备选择,大多数PATA、EIDE每个Channel对应两个设备(也有单通道的,只支持一个设备),所以要在ATA包填写DEV段的内容。 |
|
| 第7楼 Carolwhy | 发表于 2009-02-09 10:34 |
| 新手上路 发帖 1 积分 2 | |
|
sata 硬盘 在AHCI 模式下如何读取硬盘 我现在已经可把Ahci base address读取出来了,可是下面应该如何操作ATA命令呢,可以用WINIO的读取内存函数操作吗,还有在AHCI spec中的port control register中没有找到data寄存器阿,如何读书据呢,望高手赐教。非常感谢
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |