ºìÁªLinuxÃÅ»§
Linux°ïÖú

ÔÚLinuxÏ´ò¿ª32λI/OºÍDMA

·¢²¼Ê±¼ä:2006-04-13 13:08:52À´Ô´:ºìÁª×÷Õß:·ÉÃÎ
¡¡¡¡ LinuxϵÄ32λI/OºÍDMAĬÈÏÊǹرյģ¬¿ÉÊÇÏÖÔÚµçÄÔµÄÓ²Å̲»»áÄÇôÂäÎé°É£¡LinuxºÃÊǺ㬵«Èç¹ûÓõÄÊÇ16λI/OµÄ»°£¬µçÄÔµÄÐÔÄܾÍÎÞ·¨µÃµ½³ä·Ö·¢»Ó£¬ÄãÐÄÀïÒ»¶¨»á¾õµÃºÜÔ©£¡Ã»¹Øϵ£¬¸úÎÒÀ´°É¡£

¡¡¡¡ Òª´ò¿ª32λI/OºÍDMA£¬ÐèÒªÒÔRootÉí·Ý½øÐÐÉèÖá£ÎªÁ˽µµÍÒò³ö´í¶øÖØÆôϵͳ¶ÔÎļþϵͳµÄË𺦣¬×îºÃÒÔµ¥Óû§Ä£Ê½½øÐС£¿ÉÒÔÏÈÓÃÏÂÃæµÄÃüÁî¼ì²éÓ²¼þÇý¶¯Æ÷µÄI/OÇé¿ö¡£

¡¡¡¡ #hdparm -t /dev/hda

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ Timing buffered disk reads:64MB in 30.93 seconds=2.07MB/sec

¡¡¡¡ Èç¹ûÒªÏÔʾµ±Ç°I/O¡¢DMAÅäÖã¬ÃüÁî·Ö±ðÈçÏ£º

¡¡¡¡ #hdparm -c /dev/had £¨×¢£ºÏÔʾI/OÅäÖÃÃüÁ

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ I/O support=0(16bit)

¡¡¡¡ # hdparm -d /dev/had £¨×¢£ºÏÔʾDMAÅäÖÃÃüÁ

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ using_dma=0(off)

¡¡¡¡ ÔÚÈ·¶¨32λI/OºÍDMAÊǹرյÄÒÔºó£¬ÓÃÏÂÃæµÄÃüÁÆä´ò¿ª£º

¡¡¡¡ #hdparm -c 1 /dev/hda £¨×¢£º´ò¿ª32λI/OµÄÃüÁ

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ setting 32-bit I/O support flag to 1

¡¡¡¡ I/O support= 1 (default 16-bit)

¡¡¡¡ #hdparm -d 1 /dev/had (×¢£º´ò¿ªDMAµÄÃüÁî)

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ setting using_dma to 0(on)

¡¡¡¡ hda:DMA inabled

¡¡¡¡ using_dma=1 (on)

¡¡¡¡ È»ºóÖ´ÐÐÏÂÃæµÄÃüÁîÒÔʹÅäÖÃÉúЧ£º

¡¡¡¡ #hdparm -k 1 /dev/hda

¡¡¡¡ ÆÁÄ»ÏÔʾÈçÏ£º

¡¡¡¡ /dev/hda:

¡¡¡¡ setting keep_settings to 1(on)

¡¡¡¡ keepsettings=1(on)

¡¡¡¡ È»ºó£¬¿ÉÒÔÔÙÓÃÃüÁhdparm -t /dev/hda À´¿´¿´Ð§¹û£º

¡¡¡¡ /dev/hda:

¡¡¡¡ Timing buffered disk reads:64MB in 14.53 seconds=4.40MB/sec

¡¡¡¡ ÔõôÑù£¬ÐÔÄÜÌá¸ßÁËÒ»±¶¶à£¡

¡¡¡¡ ÉÏÃæµÄ·½·¨£¬¿ÉÒÔʵÏÖÔÚÒ»´Î¿ª»úÖÐÉúЧ£¬¶øÏÂÒ»´Î¿ª»úÓÖÒªÖØÐÂÉèÖá£Èç¹ûҪʵÏÖÿһ´Î¿ª»úʱ¶¼ÉúЧ£¬Ó¦¸ÃÔÚÎļþ/etc/rc.d/rc.localµÄ½áβ¼ÓÈëÒÔÏÂÃüÁhdparm -c 1 -d 1 -k 1 /dev/hda£¬Ëü¿ÉÒÔʹÉèÖÃÔÚÿ´ÎÖØÐÂÆô¶¯ÏµÍ³Ê±ÉúЧ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ