LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1031|回复: 6

CF卡上跑Linux的问题

[复制链接]
发表于 2009-7-26 11:36:19 | 显示全部楼层 |阅读模式
有点慢,我用的是宇瞻200X 2G,照理说可以达到30MB/sec,现在只有20MB/sec,相当于133X


  1. hdparm -tT /dev/hda

  2. /dev/hda:
  3. Timing cached reads:   388 MB in  2.01 seconds = 192.60 MB/sec
  4. Timing buffered disk reads:   60 MB in  3.05 seconds =  19.64 MB/sec
复制代码


  1. hdparm -I /dev/hda

  2. /dev/hda:

  3. CompactFlash ATA device, with removable media
  4.         Model Number:       CF Card                                 
  5.         Serial Number:      0008504011181      
  6.         Firmware Revision:  Ver2.20
  7. Standards:
  8.         Likely used: 4
  9. Configuration:
  10.         Logical         max     current
  11.         cylinders       3909    3909
  12.         heads           16      16
  13.         sectors/track   63      63
  14.         --
  15.         bytes/track: 32256      bytes/sector: 512
  16.         CHS current addressable sectors:    3940272
  17.         LBA    user addressable sectors:    3940272
  18.         device size with M = 1024*1024:        1923 MBytes
  19.         device size with M = 1000*1000:        2017 MBytes (2 GB)
  20. Capabilities:
  21.         LBA, IORDY(may be)(cannot be disabled)
  22.         Buffer size: 1.0kB      bytes avail on r/w long: 4
  23.         Standby timer values: spec'd by Vendor
  24.         R/W multiple sector transfer: Max = 1   Current = 1
  25.         DMA: mdma0 mdma1 mdma2 udma0 udma1 *udma2 udma3 udma4 udma5
  26.              Cycle time: min=120ns recommended=120ns
  27.         PIO: pio0 pio1 pio2 pio3 pio4
  28.              Cycle time: no flow control=120ns  IORDY flow control=120ns
复制代码


竟然运行在udma2模式,我用的是这种转接卡
http://bak2.beareyes.com.cn/2/lib/200709/24/20070924109_1.htm


  1. dmesg | grep hda
  2. Kernel command line: root=/dev/hda2 acpi=force lapic
  3.     ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:pio
  4. hda: CF Card, CFA DISK drive
  5. hda: drive side 80-wire cable detection failed, limiting max speed to UDMA33
  6. hda: selected mode 0x42
  7. hda: max request size: 128KiB
  8. hda: 3940272 sectors (2017 MB) w/1KiB Cache, CHS=3909/16/63, UDMA(33)
  9. hda: hda1 hda2
  10. EXT3 FS on hda2, internal journal
复制代码


上面是启动记录,就算“drive side 80-wire cable detection failed”也应该可以进udma4(ATA33)啊
发表于 2009-7-26 11:42:33 | 显示全部楼层
除传输线的物理限制外,所采用的文件系统也是瓶颈之一
回复 支持 反对

使用道具 举报

发表于 2009-7-26 22:13:09 | 显示全部楼层
用hdparm手工设定一下看。看看有什么出错消息?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-7-27 19:18:23 | 显示全部楼层
手工设置硬盘数据传输模式设不了

  1. hdparm -X udma4 /dev/hda

  2. /dev/hda:
  3. setting xfermode to 68 (UltraDMA mode4)
  4. hda: UDMA speeds >UDMA33 cannot be set
复制代码


还好我在第1分区装了Windows XP,进去用HWinfo32看了一下,发现Windows下CF卡的模式是udma5(ATA-100),测试读速度也到达了30MB/sec,完全正常

  1. General Information                    
  2. Drive Controller:                      E-IDE
  3. Drive Channel:                         Primary, Master
  4. Drive Model:                           CF Card
  5. Drive Revision:                        Ver2.20
  6. Drive Serial Number:                   0008504011181
  7. Drive Capacity:                        1,923 MBytes (2 GB)

  8. Drive Geometry                        
  9. Number of Cylinders:                   3909
  10. Number of Heads:                       16
  11. Sectors Per Track:                     63
  12. Bytes Per Sector:                      512
  13. Bytes Per Track:                       32256
  14. Number Of ECC Bytes:                   4
  15. Number of Sectors:                     3940272
  16. Total 32-bit LBA Sectors:              3940272
  17. Cache Buffer Size:                     1 KBytes
  18. Controller Type:                       Unknown

  19. Transfer Modes                        
  20. Max. PIO Transfer Mode:                4
  21. Multiword DMA Mode:                    Total: 2, Active: -
  22. Singleword DMA Mode:                   Total: -, Active: -
  23. Ultra-DMA Mode:                        Total: 5 (ATA-100), Active: 5 (ATA-100)
  24. Max. Multiword DMA Transfer Rate:      16.7 MBytes/s
  25. Max. PIO with IORDY Transfer Rate:     16.7 MBytes/s
  26. Max. PIO w/o IORDY Transfer Rate:      16.7 MBytes/s
  27. Transfer Width:                        16-bit
  28. Native Command Queuing:                Not Supported
复制代码


各位有用CF卡的,请说下你们的CF卡运行在什么模式?读速度能达到多少?
回复 支持 反对

使用道具 举报

发表于 2009-7-28 16:42:12 | 显示全部楼层
放弃吧,我试过,非常慢,而且容易死机,至少我的死机,估计是没有写入缓存的关系
回复 支持 反对

使用道具 举报

发表于 2009-7-28 16:52:25 | 显示全部楼层
我没跑过完整的发行版,不过去年做网通的小区宽带的时候在CF卡上跑基于Linux的软路由,去年年底卡挂了,后来换了个IDE硬盘跑着。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-7-28 20:20:53 | 显示全部楼层
我的CF卡用了半年多了,什么事都没有,感觉速度还可以,别看hdparm测试读速度只有20MB/sec,实际使用感觉和ATA33的硬盘差不多,测了一下开机从启动菜单按下Enter到见到桌面只用了25秒,而Windows XP要1分3秒,Windows太庞大太复杂了!

现在只想把Linux下CF卡的工作模式提高到udma5(ATA100),看看速度能不能再快一点
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表