为什么一个IDE接口不能同时接两个硬盘,请各位大侠指教!
各位大侠,你们好!
小弟现在有个问题请教一下,我现在调试IDE硬盘驱动,现在碰到了一个问题。
为什么我在同一个IDE接口上不能同时接两个硬盘呢?而且我已经设置好了主盘和从盘了,系统可以找到两个硬盘而且盘符也对,我是接在IDE0上,系统可以正确检测到我的硬盘型号,已经盘符hda和hdb。也可以对每个硬盘进行分区和格式化,我是格式化成ext2格式。但是通过mount挂载的时候就不行了,系统打印如下错误:
root@192.168.220.40:/# mount /dev/hda1 /mnt/vfat1
EXT2-fs error (device ide0(3,1)): ext2_check_descriptors: Block bitmap for grou
p 0 not in group (block 65407)!
EXT2-fs: group descriptors corrupted!
mount: wrong fs type, bad option, bad superblock on /dev/hda1,
or too many mounted file systems
如果我在IDE0上单独接一个主盘或单独接一个从盘,是没有问题的。同样,我如果在IDE0上接个从盘,在IDE1上也接个从盘,也是没有问题的。
大侠能帮我分析下原因吗?谢谢拉
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
跳线都跳线选,别设为主盘和从盘
cat /proc/partitions
把结果贴出来
大侠,我按照你说的做了,系统只能检测到一个hdb,hda检测不到了。
还有,其实我的两个硬盘中,好象有一块硬盘在fsck的时候有错误。是不是这个问题引起的?
一点建议:
你得确定是硬件问题,文件系统问题,还是驱动本身的问题。
更换一些磁盘和更换其它文件系统,看问题是否还存在?
在驱动中跟踪一下是不是每次读写操作都成功返回。也有可能是驱动处理数据不对,读写到错误的地址,造成bitmap不正确。
继续关注...
大侠您好:
谢谢你对我问题的关注,按照您的建议,我检测了一下硬盘,发现有快硬盘在用fsck检测的时候出现了问题。我现在还有一个现象,就是每个IDE接口接一个硬盘,系统可以检测到两个硬盘,并且可以对两个硬盘同时进行写操作,但是同时读的时候,那块检测有问题的硬盘就会读不出来,程序好象一直阻塞在那里。如果先读完一块硬盘之后,接着再去读另外一块硬盘,是没有问题的。
UDMA66以上的线序要求是很严格的,连接线最远端的必须是master,中间的是slave
跳线都是线选了吗?
to楼主:
你说同时读?怎么可能会同时读?你这应该是IDE硬盘,每个Channel在每个时刻只能有一个硬盘在工作。恐怕问题就在这里。
在启动DMA之前,你得读状态寄存器,检测当前Channel是否在工作,如果是busy,就要等待或是stop。
跳线跳线选,用U66以上的线
大侠,谢谢你呀。
可是我已经换了根80芯的硬盘线,而且也把跳线设置好了,还是这个样子啊?
为什么呢?谢谢你拉