¥×¥í¥Õ¥£¡¼¥ë

 kosaki

Author: kosaki
Ï¢ÍíÀè¤Ï¥³¥Á¥é

¥Ö¥í¥°¸¡º÷
ºÇ¶á¤Îµ­»ö
ºÇ¶á¤Î¥³¥á¥ó¥È
ºÇ¶á¤Î¥È¥é¥Ã¥¯¥Ð¥Ã¥¯
¥ê¥ó¥¯
¥«¥Æ¥´¥ê¡¼
·îÊÌ¥¢¡¼¥«¥¤¥Ö
RSS¥Õ¥£¡¼¥É
FC2¥Ö¥í¥°¥é¥ó¥­¥ó¥°
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

kdump¤ÎÀßÄ꤬¤Ç¤­¤ó

¤¢¤ä¤·¤²¤Ê¥á¥Ã¥»¡¼¥¸¤È¤È¤â¤Ë¥À¥ó¥Þ¥ê¤·¤Æ¤·¤Þ¤¦¡£
¥·¥ç¥Ü¡¼¥ó(¡­Ž¥¦ØŽ¥¡®)

sc420 login: SysRq : Trigger a crashdump
Memory for crash kernel (0x0 to 0x0) notwithin permissible range
PCI: BIOS Bug: MCFG area at e0000000 is not E820-reserved
PCI: Not using MMCONFIG.
ACPI: Getting cpuindex for acpiid 0x2
Mounting proc filesystem
Mounting sysfs filesys


¥Ö¡¼¥È¥Ñ¥é¥á¥¿¤Ë½ñ¤¤¤¿crashkernel=128M@16M ¥ª¥×¥·¥ç¥ó¤¬Àµ¤·¤¯Ç§¼±¤µ¤ì¤Æ¤¤¤ë¤³¤È¤Ï
/proc/iomem¤Ë¤Æ³ÎǧºÑ¤ß¤À¤·¡£
¤ª¤Ê¤¸¤¯¡¢/proc/iomem¤Ë¤Æe0000000 ¤¬reserved¤Ç¤¢¤ë¤³¤È¤Ï³Îǧ¤Ç¤­¤Æ¤ë¤ó¤À¤±¤É¡¦¡¦¡¦

¤à¤à¤à¡¦¡¦¡¦




linux | ¡Ú2008-01-28(Mon) 23:10:10¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

£²Æü¤Þ¤¨¤°¤é¤¤¤Ë

LKML¤Î [RFC] Parallelize IO for e2fsck ¤Ê¤ë¥¹¥ì¥Ã¥É¤Çmem_notify ¤Ë¸ÀµÚ¤µ¤ì¤Æ¤¿¤é¤·¤¤¤ó¤À¤±¤É¡¢£ã£ã¤µ¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢¤Þ¤Ã¤¿¤¯µ¤¤Å¤«¤Ê¤«¤Ã¤¿¤è¡£



linux | ¡Ú2008-01-26(Sat) 21:27:57¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¥¯¥í¥¹¥±¡¼¥Ö¥ë¤á¤É¤¤

mel ¤Ë¤¿¤Î¤Þ¤ì¤¿test¤ò¤¹¤ë¤¿¤á¤Ë¡¢¶á¤¯¤Î¥Ñ¥½¥³¥ó¥·¥ç¥Ã¥×¤Ç¥·¥ê¥¢¥ë¤Î¥¯¥í¥¹¥±¡¼¥Ö¥ë¤òÇã¤Ã¤Æ¤­¤¿¡£¤³¤ó¤Ê¤óÇ㤦¤Î£±£°Ç¯¤Ö¤ê¤«¤â¤·¤ì¤ó¡£
Linux¤Çµ¯Æ°»þ¤Ë¥Ñ¥Ë¥Ã¥¯¤·¤Á¤ã¤¦¾ì¹ç¥·¥ê¥¢¥ë¥±¡¼¥Ö¥ë¤Ä¤Ê¤²¤Æ¤ª¤«¤Ê¤¤¤È¥Ç¥Ð¥Ã¥°¤¬¤Û¤ÜÉÔ²Äǽ¤Ê¤Î¤À¤è¡£
¤Ç¡¢µ¢¤Ã¤Æ¤ß¤ë¤È¾×·â¤Î»ö¼Â¤¬¡ª¡ª
¤Ü¤¯¤Á¤ó¤ÎWindows¥Þ¥·¥ó¤Ë¤Ï¤Ê¤ó¤È¥·¥ê¥¢¥ë¥Ý¡¼¥È¤¬¤Ê¤«¤Ã¤¿¡£¥¤¥Þ¥É¥­¤ÎWindows¤Ã¤Æ¤½¤¦¤Ê¤Î¤Í£÷£÷£÷£÷
¤·¤ç¤¦¤¬¤Ê¤¤¤«¤é¡¢¼è¤Ã¤ÆÊÖ¤·¤ÆUSB - ¥·¥ê¥¢¥ëÊÑ´¹µ¡¤âÇã¤Ã¤Æ¤­¤¿¡£¥Ð¥«¥¹¡£
¤Æ¤æ¡¼¤«¡¢¤Á¤ç¤Ã¤È¤·¤¿Á±°Õ¤Ç£¶Àé±ß¤âÈô¤ó¤Ç¤¤¤¯¤Î¤Ï¼ã´³Ç¼ÆÀ¹Ô¤«¤Ê¤¤¤è¤¦¤Ê¡£¤à¤à¡£

¤Ç¡¢Linux¦¤ÎÀßÄê¤Ê¤Î¤À¤¬/boot/grub/grub.conf¤Î°Ê²¼¤Î²Õ½ê¤òÊѹ¹¤¹¤ì¤ÐOK


default=3
timeout=5
#splashimage=(hd0,0)/grub/splash.xpm.gz
serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console

hiddenmenu
title CentOS (2.6.18-53.1.4.el5PAE)
root (hd0,0)
kernel /vmlinuz-2.6.18-53.1.4.el5PAE ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.18-53.1.4.el5PAE.img

title kosatest
root (hd0,0)
kernel /vmlinuz-kosatest ro root=/dev/VolGroup00/LogVol00 rhgb quiet console=tty0 console=ttyS0,9600n8r
initrd /initrd-kosatest.img



»²¹ÍURL
JFʸ½ñ :http://www.linux.or.jp/JF/JFdocs/Remote-Serial-Console-HOWTO/index.html
IT¥á¥Ç¥£¥¢¡§¡¡http://www.itmedia.co.jp/help/tips/linux/l0617.html
Â裳¤Î¥Ú¥ó¥®¥ó¡§¡¡http://blog.miraclelinux.com/thethird/2007/02/linux_fb95.html
USB¤ò¥·¥ê¥¢¥ë¥³¥ó¥½¡¼¥ë¤Ë¡§ http://www.irori.org/doc/usb-console.html


linux | ¡Ú2008-01-26(Sat) 19:59:33¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

mem_notify v5¤ò post ¤·¤Æ¤­¤¿

Alan CoxÀèÀ¸¤ËÍ×˾¤µ¤ì¤Æ¤¤¤¿fasync¥µ¥Ý¡¼¥È¤¬¼ÂÁõ¤Ç¤­¤¿¤Î¤Ç¡¢mem_notify v5¤È¤·¤Æ¥Ý¥¹¥È¤·¤¿¡£
¤À¤ó¤À¤ó˰¤­¤Æ¤­¤¿¤Î¤Ç¡¢Ã¯¤«ÌÜ¿·¤·¤¤¥³¥á¥ó¥È¤¯¤ì¤ó¤«¤Î¤¥

linux | ¡Ú2008-01-24(Thu) 13:31:07¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¥¤¥ê¥Ô¡¼¡¦¥ª¥ó¥È¡¼¥ë

¥¤¥Þ¥É¥­¤Î¥¤¥ê¥Ô¡¼¤µ¤ó¤ÏÌܤ«¤é²ø¸÷Àþ¤ò½Ð¤·¤Æ¡¢¼þ°Ï¤ò¤Ê¤®Ê§¤¨¤ë¤é¤·¤¤¡£
¤à¤é¤à¤é¤¹¤ë¤Ê

»¨ÃÌ | ¡Ú2008-01-23(Wed) 14:01:01¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

MALLOC_TRIM_THRESHOLD_ ¤È MALLOC_MMAP_MAX_ ¥Ñ¥é¥á¥¿¤Ë¤Ä¤¤¤Æ

¤É¤¦¤â¤¢¤Þ¤êͭ̾¤Ç¤Ï¤Ê¤¤¤é¤·¤¤¤Î¤Ç¡¢¤³¤³¤Ç½ñ¤¤¤Æ¤ß¤ë¡£

http://mkosaki.blog46.fc2.com/blog-entry-241.html
¤Ç½ñ¤¤¤¿»ö¤È¤Û¤ÜƱ¤¸¤À¤±¤ì¤É¡£

Linux¤Ë¤ª¤¤¤Æ¡¢CPUÉé²Ù¤ò¬Äꤹ¤ë¥Ù¥ó¥Á¥Þ¡¼¥¯¤Ç¤Ï°Ê²¼¤Î´Ä¶­ÊÑ¿ô¤òÀßÄꤹ¤ë¤È±ý¡¹¤Ë¤·¤ÆÀ­Ç½¤¬¤¢¤¬¤ë¡£

% setenv MALLOC_TRIM_THRESHOLD_ -1
% setenv MALLOC_MMAP_MAX_ 0

MALLOC_TRIM_THRESHOLD_ ¤ÏOS¤Ë̤»ÈÍѤˤʤä¿¥á¥â¥ê¤òÊֵѤ¹¤ë·Àµ¡¤ò¤¢¤é¤ï¤·¤Æ¤¤¤Æ¡¢¡Ý£±¤Ï·è¤·¤ÆÊֵѤ·¤Ê¤¤»ö¤òɽ¤¹¡£
MALLOC_MMAP_MAX_ ¤ÏºÇÂçmmap¿ô¤Ç£°¤Ï·è¤·¤Æmmap¤»¤º¡¢¤É¤ó¤Ê¤ËÂ礭¤Ê¥á¥â¥ê¤Ç¤âbrk¤ò»È¤Ã¤Æ¥á¥â¥ê¤ò¼è¤ë»ö¤ò°ÕÌ£¤¹¤ë¡£

¤Ç¡¢À­Ç½¤Ë¸ú¤¯¤Î¤Ï¡Ê¤¿¤¤¤Æ¤¤¡ËMALLOC_MMAP_MAX_¤Î¤Û¤¦¡£
glibc¤Ï¥¢¥ó¥Á¥Õ¥é¥°¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Î´ÑÅÀ¤«¤é°ìÄê°Ê¾å¡Ê¤¿¤·¤«¥Ç¥Õ¥©¥ë¥È£±M¡Ë¤ÎÂ礭¤µ¤Îmalloc¤ÏÆâÉô¤ÇľÀÜmmap¸Æ¤Ó½Ð¤·¤ò¤¹¤ë¤è¤¦¤ËÊÑ´¹¤µ¤ì¤ë¡£
¤Ç¡¢¤³¤ì¤¬¤¢¤ë¼ï¤Î¾õ¶·²¼¤Ç¤Ï¡¢£²½Å¤Î°ÕÌ£¤Ç°­¤¤¸ú²Ì¤ò¤â¤¿¤é¤¹¡£

£±¡¥¥­¥ã¥Ã¥·¥å¥³¥ó¥Õ¥ê¥¯¥È
¡¡¡¡¤Þ¤¢¡¢¼ÂÁõ¤¬¤Ø¤³¤¤¤Î¤Ç¤¹¤¬mmap¸Æ¤Ó½Ð¤¹¤È¤­¤Ë¥­¥ã¥Ã¥·¥å¥«¥é¡¼¥ê¥ó¥°¤Î¥³¡¼¥É¤¬
¡¡¡¡¤Ï¤¤¤Ã¤Æ¤Ê¤¤¤ó¤Ç¤¹¡£
¡¡¡¡¤Ê¤Î¤Ç¡¢Ìá¤êÃÍ¥¢¥É¥ì¥¹¤¬Á´Éô¥Ú¡¼¥¸¥Ð¥¦¥ó¥À¥ê¤Ë¤½¤í¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡¡¡¤Ê¤Î¤ÇÊ£¿ô¥¹¥ì¥Ã¥É¤¬mallocÉüµ¢ÃͤòƱ¤¸¤è¤¦¤Ê¥¢¥¯¥»¥¹¥Ñ¥¿¡¼¥ó¤Ç¥¢¥¯¥»¥¹¤·¤Æ¤¤¤¯¤È
¡¡¡¡¤¬¤ó¤¬¤ó¥­¥ã¥Ã¥·¥å¥³¥ó¥Õ¥ê¥¯¥È¤·¤Þ¤¹¡£

£²¡¥munmap¥Í¥Ã¥¯
¡¡¡¡mmap¤·¤¿¤ä¤Ä¤Ïbrk¤Ç¤È¤Ã¤¿¤ä¤Ä¤È°ã¤¤¡¢¥Õ¥ê¡¼¥ê¥¹¥È´ÉÍý¤Ï¤»¤º¤Ë¡¢¥¢¥×¥ê¤¬free(3)¤ò
¡¡¡¡¸Æ¤ó¤À¤é¡¢¤¹¤°¤µ¤ÞOS¤Ëmunmap¤¹¤ë¼ÂÁõ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡¡¡¤Ç¡¢ÆÃ¤ËÂ絬ÌÏSMP¤Ë¤ª¤¤¤Æ¡¢munmap¤Ïmmap¤È°ã¤Ã¤Ælazy¤Ë½èÍý¤Ç¤­¤Ê¤¤¤Î¤Ç¡¢
¡¡¡¡Èó¾ï¤Ë¥³¥¹¥È¤¬¹â¤¤Áàºî¤Ç¤¢¤ë¡£¤È
¡¡¡¡ÂçÄñ¤Î¥¢¡¼¥­¤ÇÁ´CPU¤Ë³ä¤ê¹þ¤ß¤È¤Ð¤·¤Æ¶õ´Ö¤½¤®Íî¤È¤·¤ÆÊÖ»ö¤¬¤¯¤ë¤Î¤ò¤¸¤Ã¤È
¡¡¡¡¤Þ¤Ã¤Æ¤¤¤ë¤Î¤Ç¡£
¡¡¡¡¤«¤Ä¡¢Linux¤Ë¤ª¤¤¤Æ¥É¥é¥¤¥Ð¤¬¿ô¥ß¥êÉ䰤餤³ä¶Ø¤È¤«¤¹¤ë¤Î¤Ï¤á¤º¤é¤·¤¯¤Ê¤¤¤Î¤Ç¡¢
¡¡¡¡°ìÈÖÃÙ¤¤CPU¤Ë°ú¤ÃÄ¥¤é¤ì¤Æ¤Þ¤¹¤Þ¤¹ÃÙ¤¯¤Ê¤ë¡£

¤â¤Á¤í¤ó¡¢¤³¤Î´Ä¶­ÊÑ¿ô¤òÀßÄꤹ¤ë¤È¥Ò¡¼¥×¥Õ¥é¥°¥á¥ó¥Æ¡¼¥·¥ç¥ó¤¬¿Ê¤ß¤ä¤¹¤¯¤Ê¤ë¤Î¤Ç£³£¶£µÆüư¤­Â³¤±¤ë¶È̳¥¢¥×¥ê¤ÇÀßÄꤹ¤ë¤â¤Î¤Ï¹Í¤¨Êª¤Ç¤¢¤ë¤¬¡¢¥Ù¥ó¥Á¥Þ¡¼¥¯¤Î¿ô»úŪ¤Ë¤Ï·ë¹½¸ú²Ì¤¬¤¢¤ë¤Î¤Ç¡¢¥Ù¥ó¥Á¥Þ¡¼¥¯²°¤µ¤ó¤Ï¡¢¥ª¥Þ¥¸¥Ê¥¤Âå¤ï¤ê¤Ë»î¤·¤Æ¤ß¤ë²ÁÃͤϤ¢¤ë¡£





¤³¤Þ¤Ã¤¿¤È¤­¤Î¤ª¤Þ¤¸¤Ê¤¤
¤ª¤Þ¤¸¤Ê¤¤Âå¤ï¤ê¡ª¡¡¥é¥ó¥­¥ó¥°¡ª


linux | ¡Ú2008-01-23(Wed) 11:47:30¡Û | Trackback:(0) | Comments:(4)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

lkml¤Ëtiny¥Ñ¥Ã¥ÁÅꤲ¤¿¤é

Andrew MortonÀèÀ¸¤Ë¤½¤ó¤Ê¥ë¡¼¥È¤ÏÀäÂФËÄ̤é¤Ê¤¤¤È¸À¤ï¤ì¤¿¤Î¤Ç¡¢

¡¡¡¡¡¡¤¦¤ë¤Ø¡¼¡¢¤¤¤¤¤«¤é¤ä¤Ã¤Æ¤ß¤í

¤ÈÊÖ¿®¤·¤Æ¤·¤Þ¤Ã¤¿¡£
¤â¤¦¤Á¤ç¤Ã¤È¸ÀÍÕ¸¯¤¤¤ò¹Í¤¨¤Þ¤·¤ç¤¦¡£È¿¾Ê¡£

linux | ¡Ú2008-01-18(Fri) 18:14:14¡Û | Trackback:(0) | Comments:(2)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¤É¤ª¤ê¤Ç

quilt¤Î·ë²Ì¤Îdiffstat¤¬¤ª¤«¤·¤¤¤È»×¤Ã¤Æ¤¤¤¿¤é .quiltrc¤¬¥¹¥Ú¥ë¥ß¥¹¤Ã¤Æ¤¿¡£
¤ª¤«¤²¤ÇLKML¤ÇÃѤò¤«¤¤¤¿¤ï¤¤ (Çώߢώ߼¯)¢ö

linux | ¡Ú2008-01-15(Tue) 22:23:17¡Û | Trackback:(0) | Comments:(2)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¤Ä¤¤¤µ¤Ã¤­

kzk bench²þÎɥѥåÁ¤Èmem notify patch v4¤òLKML¤ËÅꤲ¤¿¡£
¸å¤ÏÌî¤È¤Ê¤ì»³¤È¤Ê¤ì(Žß§ÕŽß¡®)


linux | ¡Ú2008-01-15(Tue) 11:01:05¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

kzk bench¤½¤Î¸å

¤ï¤ê¤È¾®¤µ¤¯¤Æmmap copy¤¬¤Á¤ã¤ó¤È¹â®²½¤Ç¤­¤ë¥Ñ¥Ã¥Á¤¬¤Ç¤­¤¿¤è¤¦¤Êµ¤¤¬¤¹¤ë

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡2.6.24-rc6¡¡¡¡+my patch¡¡¡¡¡¡ratio
¡¡¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡¡¡¡¡¡¡rw_cp¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡59.32¡¡¡¡¡¡¡¡¡¡¡¡58.60¡¡¡¡¡¡¡¡¡¡98.79%
¡¡¡¡¡¡¡¡¡¡rw_fadv_cp¡¡¡¡ ¡¡¡¡¡¡¡¡57.96¡¡¡¡¡¡¡¡¡¡¡¡57.96¡¡¡¡¡¡¡¡¡¡100.0%
¡¡¡¡¡¡¡¡¡¡mm_sync_cp¡¡¡¡¡¡¡¡¡¡ 69.97¡¡¡¡¡¡¡¡¡¡¡¡61.68¡¡¡¡¡¡¡¡¡¡88.15%
¡¡¡¡¡¡¡¡¡¡mm_sync_madv_cp¡¡¡¡69.41¡¡¡¡¡¡¡¡¡¡¡¡62.54¡¡¡¡¡¡¡¡¡¡90.10%
¡¡¡¡¡¡¡¡¡¡mw_cp¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ 61.69¡¡¡¡¡¡¡¡¡¡¡¡63.11¡¡¡¡¡¡¡¡¡¡102.30%
¡¡¡¡¡¡¡¡¡¡mw_madv_cp¡¡¡¡¡¡¡¡¡¡¡¡61.35¡¡¡¡¡¡¡¡¡¡¡¡61.31¡¡¡¡¡¡¡¡¡¡99.93%

ratio¤¬£±£°£°°Ê²¼¤¬¹â®²½¤Ç¤¢¤ë¡£
¾¡¼ê¤ÊÍý¶þ¤À¤¬£±£°¡óÄøÅٰʾå¤Î¹â®²½¤òsignificant¤ÈÄêµÁ¤·¤Æ¤¤¤ë¡£


¥Ñ¥Ã¥Á¤ÎÀâÌÀ¤À¤¬¡¢¥á¥â¥ê¤¬ÉÔ­¤·¤¿¤È¤­¤Î¥Ú¡¼¥¸²ó¼ýÏÀÍý¤Ë¤ª¤¤¤Æaccessed bit¤¬Î©¤Ã¤Æ¤¤¤¿¥Ú¡¼¥¸¤ò»Ä¤·¡¢¤½¤ì°Ê³°¤ò¼Î¤Æ¤ë¡£¤È¤¤¤¦ÏÀÍý¤¬¤¢¤ë¤Î¤À¤¬¡¢¤½¤³¤Ë

¡¦¼þÊդΥڡ¼¥¸¤¬¤º¤Ã¤È¡¢accessed bit¤¬Î©¤Á³¤±¤Æ¤¤¤¿¤émmaped copyÃæ¤È¤ß¤Ê¤·¤Æaccessed bit¤ò̵»ë¤¹¤ë

¤È¤¤¤¦ÏÀÍý¤¬¤¤¤ì¤Æ¤¢¤ë¡£
ËܳÊŪ¤Ë¤ä¤ë¤Ë¤Ïpage->flags¤Ë¥Õ¥é¥°¥Ó¥Ã¥È¤òÄɲ䷤ʤ¤¤È¤¤¤±¤Ê¤¤¤¬¡¢Linux¤Ë¤ª¤¤¤Æ¤½¤ì¤Ï¥Õ¥ì¡¼¥à¤Î¸µ¤Ê¤Î¤Ç¡¢¶¯°ú¤ËÈò¤±¤Æ¤¢¤ë¡£

Íè½µ¤°¤é¤¤¤Ëlinux-mm¤ËÅꤲ¤Æ¤ß¤ë¤Ù


---
mm/vmscan.c | 46 +++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 43 insertions(+), 3 deletions(-)

Index: linux-2.6.24-rc6-cp3/mm/vmscan.c
===================================================================
--- linux-2.6.24-rc6-cp3.orig/mm/vmscan.c 2008-01-13 21:58:03.000000000 +0900
+++ linux-2.6.24-rc6-cp3/mm/vmscan.c 2008-01-13 22:30:27.000000000 +0900
@@ -446,13 +446,18 @@ static unsigned long shrink_page_list(st
struct pagevec freed_pvec;
int pgactivate = 0;
unsigned long nr_reclaimed = 0;
+ unsigned long nr_scanned = 0;
+ LIST_HEAD(l_mapped_pages);
+ unsigned long nr_mapped_page_activate = 0;
+ struct page *page;
+ int reference_checked = 0;

cond_resched();

pagevec_init(&freed_pvec, 1);
+retry:
while (!list_empty(page_list)) {
struct address_space *mapping;
- struct page *page;
int may_enter_fs;
int referenced;
@@ -466,6 +471,7 @@ static unsigned long shrink_page_list(st

VM_BUG_ON(PageActive(page));

+ nr_scanned++;
sc->nr_scanned++;

if (!sc->may_swap && page_mapped(page))
@@ -493,11 +499,17 @@ static unsigned long shrink_page_list(st
goto keep_locked;
}

- referenced = page_referenced(page, 1);
- /* In active use or really unfreeable? Activate it. */
- if (sc->order <= PAGE_ALLOC_COSTLY_ORDER &&
- referenced && page_mapping_inuse(page))
- goto activate_locked;
+ if (!reference_checked) {
+ referenced = page_referenced(page, 1);
+ /* In active use or really unfreeable? Activate it. */
+ if (sc->order <= PAGE_ALLOC_COSTLY_ORDER &&
+ referenced && page_mapping_inuse(page)) {
+ nr_mapped_page_activate++;
+ unlock_page(page);
+ list_add(&page->lru, &l_mapped_pages);
+ continue;
+ }
+ }

#ifdef CONFIG_SWAP
/*
@@ -604,7 +616,31 @@ keep:
list_add(&page->lru, &ret_pages);
VM_BUG_ON(PageLRU(page));
}
+
+ if (nr_scanned == nr_mapped_page_activate) {
+ /* may be under copy by mmap.
+ ignore reference flag. */
+ reference_checked = 1;
+ list_splice(&l_mapped_pages, page_list);
+ goto retry;
+ } else {
+ /* move active list just now */
+ while (!list_empty(&l_mapped_pages)) {
+ page = lru_to_page(&l_mapped_pages);
+ list_del(&page->lru);
+ prefetchw_prev_lru_page(page, &l_mapped_pages, flags);
+
+ if (!TestSetPageLocked(page)) {
+ SetPageActive(page);
+ pgactivate++;
+ unlock_page(page);
+ }
+ list_add(&page->lru, &ret_pages);
+ }
+ }
+
list_splice(&ret_pages, page_list);
+
if (pagevec_count(&freed_pvec))
__pagevec_release_nonlru(&freed_pvec);
count_vm_events(PGACTIVATE, pgactivate);




¸«¤»¤Æ¤¯¤ì¤ë¤Î¡ª
¥Ñ¥Ã¥Á¤°¤é¤¤¤¤¤¯¤é¤Ç¤â¸«¤»¤Þ¤¹¤¬¤Ê


linux | ¡Ú2008-01-13(Sun) 23:24:47¡Û | Trackback:(0) | Comments:(5)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

2.6.24-rc6-mm1¤¬¤¦¤´¤«¤Í¡¼

¤È¤ª¤â¤Ã¤¿¤é¡¢¤È¤Ã¤¯¤ÎÀΤËlinux-mm¤Ë¥Ñ¥Ã¥Á¤Ç¤Æ¤¿¡£
¤·¤«¤·¡¢i386¤¬Æ°¤«¤Ê¤¯¤Ê¤ë¤è¤¦¤Ê¥Ñ¥Ã¥Á¤òÅꤲ¤ëµ¤¤¬¤·¤ì¤ó¤Ê¡£

¤È¤ê¤¢¤¨¤º¡¢mem_notify v4¤Îºî¶È¤Ï¤¹¤Ù¤Æ´°Î»¡£
Í轵Ƭ¤°¤é¤¤¤Ë°ìÅ٤ʤ²¤ë¤Ù¡£

linux | ¡Ú2008-01-13(Sun) 20:20:17¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

McAfee¤¬GPL¤ËÂФ¹¤ëFUD¤ò¹Ô¤Ã¤¿¤È¤¤¤¦ÏÃ

matzÆüµ­¤è¤ê
http://www.rubyist.net/~matz/20080108.html#p03

McAfee throws some FUD at the GPL - The INQUIRER

McAfee¤¬GPL¤ËÂФ¹¤ëFUD¤ò¹Ô¤Ã¤¿¤È¤¤¤¦Ïá£

In its annual report, Windows security software vendor McAfee told its investors that open source software licence terms it vaguely characterised as " ambiguous" might "result in unanticipated obligations regarding our products."

Åê»ñ²È¤ËÂФ¹¤ëǯ¼¡Êó¹ð¤Ë¤ª¤¤¤ÆMcAfee¤Ï°Ê²¼¤Î¤è¤¦¤ËÊó¹ð¤·¤¿¡£¡Ö¥ª¡¼¥×¥ó¥½¡¼¥¹¥½¥Õ¥È¥¦¥§¥¢¤ÎÛ£Ëæ¤ÊÀ­¼Á¤Ë¤è¤Ã¤Æ¡¢²æ¡¹¤Î¥×¥í¥À¥¯¥È¤Ëͽ´ü¤·¤Ê¤¤µÁ̳¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¡×

"To the extent that we use 'open source' software, we face risks," McAfee stated.

¡Ö¥ª¡¼¥×¥ó¥½¡¼¥¹¥½¥Õ¥È¥¦¥§¥¢¤ÎÍøÍѤˤè¤Ã¤Æ¡¢²æ¡¹¤Ï¥ê¥¹¥¯¤ËľÌ̤·¤Æ¤¤¤ë¡×



΢¤Ï¼è¤Ã¤Æ¤¤¤Ê¤¤¤±¤É¡¢¤³¤ì¤¬¿¿¼Â¤Ç¤¢¤ë¤È¤·¤¿¤é¡¢¤«¤Ê¤ê¤Ò¤É¤¤Ïá£



¤¦¡¼¤ó¡¢¤½¤¦¤Ï»×¤ï¤Ê¤«¤Ã¤¿¤ê¤¹¤ë¡£
Åê»ñ²È¸þ¤±¤Îǯ¼¡Êó¹ð½ñ¤Ï¡¢³ô²Á¤¬Íî¤Á¤¿¤È¤­¤Ë¤½¤Î¥ê¥¹¥¯¤¬Á°Ç¯ÅÙ¤ÎÊó¹ð½ñ¤Ë½ñ¤¤¤Æ¤Ê¤¤¤È¡¢¤À¤Þ¤·¤¿¤Ê¡¼°·¤¤¤ÇÁʤ¨¤é¤ì¤Æµã¤­¤ÃÌ̤Ë˪¤È¤¤¤¦¤«°ìγ¤ÇÆóÅÙ¤ª¤¤¤·¤¤¤È¤¤¤¦¤«¡¢¤½¤¦¤¤¤¦Äˤ¤¾õ¶·¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç°­¤¤Êý¸þ¤Ë²áÉҤ˽ñ¤¯¤Î¤Ï¡¢¤¢¤Ã¤Á¤ÎÀ¤³¦¤Ç¤Ï¤à¤·¤íÎÉ¿´Åª¹Ôư¡£
Windows¤¬Ë×Í¤ë¤³¤È¤Ë¤è¤ê³ô²Á²¼Íî¤Î²ÄǽÀ­¤¬¤¢¤ë¤Î¤Ï»ö¼Â¤Ê¤ó¤À¤·¡£

¤à¤·¤íannual report¤ÎÆâÍÆ¤ò¶õµ¤ÆÉ¤Þ¤º¤Ë¥®¡¼¥¯¤ËžºÜ¤·¤Á¤ã¤¦¤Î¤¬¤è¤¯¤Í¡¼¤È»×¤¦¤À¤ï¤è¡£Ê̤˥ץ쥹¥ê¥ê¡¼¥¹¤È¤«¤Ç¸ì¤Ã¤¿¤ï¤±¤¸¤ã¤Ê¤¤¤ó¤Ç¤·¤ç¡£
°ã¤¦À¤³¦¤Îʸ²½¤â¼õ¤±Æþ¤ì¤Æ¤¢¤²¤ë¤Ù¤­¤À¤È»×¤¦¤Ê

¤È¤«»×¤Ã¤¿¤ê¡¢»×¤ï¤Ê¤«¤Ã¤¿¤ê¡£
ÂÌʸ¡£¡£¡£


¥Ó¥¸¥Í¥¹¤È¥Þ¡¼¥±¥Æ¥£¥ó¥° | ¡Ú2008-01-09(Wed) 05:02:30¡Û | Trackback:(0) | Comments:(2)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¤¤¤Þ¤´¤íǯ²ì¾õ¤È¤É¤¤¤¿

¤Ã¤Æ¡¢¤â¤¦£¸Æü¤ä¤¾¡ª
¤¤¤¯¤é°ú±Û¤·¤·¤ÆÅ¾Á÷¤µ¤ì¤Æ¤ë¤«¤é¤Ã¤ÆÃÙ¤¹¤®¤Ê¤¤¤«¡©¡ª

¡ô£±£°Ë礰¤é¤¤¤¤¤Ã¤­¤ËÍ褿¤Î¤Ç¡¢º¹½Ð¿Í¤Î¤ß¤Ê¤µ¤ó¤Ï£±¡¿£±¤ËÆÏ¤¯¤è¤¦¤Ë¤·¤Æ¤¤¤¿¤È»×¤ï¤ì¤ë

¤¤¤Þ¤«¤éÊÖ»ö¤ò½ñ¤¤¤Æ¤â»þ´ü¤Ï¤º¤ì¤À¤·¤Ê¡¼¡£¤É¤¦¤·¤è¤¦¤«¤Ê¡¼
¤½¤ì¤ò¤¤¤¤¤ï¤±¤Ë¤·¤ÆÊÖ»ö¤ò¤µ¤Ü¤ë¤«¡¼



»¨ÃÌ | ¡Ú2008-01-08(Tue) 19:30:28¡Û | Trackback:(0) | Comments:(1)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

spam¥³¥á¥ó¥È¤à¤«¤Ä¤¯

ºÇ¶áIE¤Î¿·¤·¤¤ÀȼåÀ­¤¬È¯¸«¤µ¤ì¤¿¤è¤¦¤Ç¥¹¥Ñ¥à¥³¥á¥ó¥È¤¬³èȯ²½¤·¤Æ¤¤¤ë¡£
¥¨¥í¥µ¥¤¥ÈͶƳ¤È¤«¤ÏÆÃ¤Ë¼Â³²¤Ê¤¤¤Î¤ÇÊüÃÖ¤ò´ðËܤˤ·¤Æ¤¤¤ë¤¬¡¢¤µ¤¹¤¬¤Ë¥¯¥é¥Ã¥·¥å¤ä¤éHDD¥Õ¥©¡¼¥Þ¥Ã¥È¤ä¤é¤ò»Å¹þ¤Þ¤ì¤ë¤È¿ÍÍͤËÌÂÏǤ¬¤«¤«¤ë¤Î¤Ç¡¢¾Ã¤·¤¿¤¯¤Ê¤ë¡£
¤ó¤Ç¥¤¥¿¥Á¥´¥Ã¥³¡¡¢«¤¤¤Þ¤³¤³

¤Ï¤²¤·¤¯¥á¥É¥¤
¤Ê¤ó¤«¤¤¤¤¥Õ¥£¥ë¥¿¡¼ÊýË¡¤Ê¤¤¤«¤·¤é¤Í


blog | ¡Ú2008-01-04(Fri) 16:01:51¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

¼ÂÂÖ¤ò¸ÒÅɤ·¤ÆÀ®²Ì¤òÂ礭¤¯¸«¤»¤ëÊýË¡

kzk bench¤Î¹â®²½¤Ë¤Ä¤¤¤Æ¤Þ¤Ã¤¿¤¯¤ä¤ëµ¤¤¬¤ª¤­¤Ê¤¯¤Æ¡¢º£Æü¤Ï¤À¤é¤À¤é¤¹¤´¤·¤Æ¤·¤Þ¤Ã¤¿¡£

¤ó¤Ç¡¢ºÇ¶áº´Æ£Í¥¤Î°ìÏ¢¤ÎÃøºî¤òÆÉ¤ß¤Þ¤¯¤Ã¤¿¤Î¤Ç¥¤¥ó¥Æ¥ê¥¸¥§¥ó¥¹¶È³¦¤Î¤ä¤ê¸ý¤¬¤¹¤³¤·Ê¬¤«¤Ã¤Æ¤­¤¿¤Î¤Ç¡¢¼«Ê¬¤Î¤ä¤ëµ¤¤ËÂФ·¤Æ±þÍѤ·¤Æ¤ß¤ë¥Æ¥¹¥È¡£


À®²Ì¤¬£µ¡ó¡£¤È½ñ¤¯¤È¤Þ¤ë¤Ç¥À¥á¤Ê»Ò¤ß¤¿¤¤¤Ç¤¢¤ë¤¬¡¢¤³¤³¤Ç»ëÅÀ¤òÊѤ¨¤Æ¤ß¤è¤¦¡£
¤¦¤Á¤Î¥Þ¥·¥ó¤Ë¤ª¤¤¤Æ¤Ï¥Ç¥£¥¹¥¯I/OÀ­Ç½¤¬¤À¤¤¤¿¤¤20MB/s¤Ç¤¢¤ë¤³¤È¤¬·Ð¸³Â§¤Çʬ¤«¤Ã¤Æ¤¤¤ë¡£¤Ê¤Î¤Ç¡¢1(GB)/20(MB/s)=50s¤¬¥½¥Õ¥È¥Í¥Ã¥¯¤¬¤Ê¤¯¡¢¥Ç¥£¥¹¥¯¥·¡¼¥¯¤âȯÀ¸¤·¤Ê¤«¤Ã¤¿»þ¤Î®ÅÙ¡£
¤À¤«¤é¡¢58.17s -> 55.03s ¤È¤¤¤¦¤Î¤Ï¥ª¡¼¥Ð¥Ø¥Ã¥É¤¬8.17 -> 5.03¤È¤¤¤¦¸«Êý¤â¤Ç¤­¤ë¡ª

¤Ä¤Þ¤ê


¡¡¡¡¡¡¡¡¡¡¡¡,.ލ , - ޤ.¡²¡¡¡¡ ¡¡ ¡¢
.¡¡¡¡¡¡ ¡¡ ,޲/ l/¡¡¡¡¡¡ ¡¡ ¡±¡±¡®¡³!__
¡¡¡¡ ¡¡ ŽÄ/ |'¡¡{¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡ ¡¡ ¡¡ ¡®¡³.¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ,ŽÍ
¡¡ ¡¡ £Î¨¢ ¡³. `¡¡¡¡¡¡¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡³¡¡¡¡ ¡¡ ¡¡ ¡¡ /¡³¡¡/¡¡ ¢Ë
¡¡¡¡ N.¡³.¡³¡¢¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ,¡¡¡¡¡¡ ¡¡ ¡¡ }¡¡¡¡¡¡¡¡l¡À/¡¡¡¡`¡ì
.¡¡¡¡¡³¡³.¡À¡¡¡¡¡¡¡¡ ¡¡ ¡¡ ,.ލ޲ŽÊ¡¡¡¡¡¡¡¡ ¡¡ |¡¡¡¡ ¡²|
¡¡¡¡ ¡´¥Ëް¡¡__¡¡_¡¡-=_×ÄŽ¿ŽÉ u_¡À¡³¡¢ ¡¡ |¡¡¡¡¡À¡¡¡¡¡¡ ¼Â¤Ï¡Ü£´£°¡ó¤Î
.¡¡¡¡ ¡¡ ¡±ŽÞr=<¡¾ŽÓŽÐޤޯr;¡á=Žª;Ž­¡ã_¡¶-=7¡­¡³¡¡¡¡¡¡> ¹â®²½¤ËÀ®¸ù¤·¤Æ
.¡¡¡¡¡¡¡¡ ¡¡ l ¡¡ ¡±ŽØ¡¼h ¡® ް¡¾¡¾'¡¡l¡¾''¡­ÑÒ)'./¡¡¢Ü__¡¡¡¡¤¤¤¿¤ó¤À¤è¡ª¡ª
¡¡¡¡¡¡¡¡¡¡¡¡ ŽÞiް- ޲'__¡¡¡³Ž¤..¡²__¥Î¡¡¡¡ ŽÄr¡¾'¡¡¡¡¡¡¡¡/¡¡¡¡ ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡l¡¡¡¡ `¡²__,.¡¢ ¡¡ ¡¡ u¡¡./¨¢¡¡¡¡¡¡¡¡/¡²¡¡
.¡¡¡¡¡¡¡¡¡¡ ¡¡ ¡³.¡¡ }z¡¾r--|¡¡¡¡ ¡¡ ¡¿¡¡ ŽÄ,¡¡¡¡¡¡ ¡¡ ¡¡ |¡¡ ,¡¢
¡¡¡¡¡¡¡¡ ¡¡ ¡¡ ¡¡ >ޤ`ް-- '¡¡¡¡.¡¿¡¡ ¡¿¡¡|¡³¡¡¡¡¡¡¡¡¡¡l¡¿¡¡¡³¡¡¡¡ ,ŽÍ
¡¡¡¡¡¡¡¡¡¡¡¡_,.¡¿| ¡³`ް--¡¾ _¡­.. ¡¾''¡­ ¡¡ ./¡¡ ¡Àޤ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡À/¡¡¡³/
-¡¾ '''" ¡± /¡¡ :| ¡¡ ,¡µ=¡ã¡¡¡¡¡¡¡¡¡¡¡¡/¡¡¡¡¡¡ |¡¡`'''¡¾-¡¡Ž¤.._
¡¡¡¡¡¡¡¡¡¡/¡¡¡¡ !.¡¿l;';';';';';';¡À¡¡¡¡¡¡ ./¡¡¡¡¡¡¡¡¨¢ ¡¡ ¡²
¡¡ ¡¡ ¡¡ _,¡ä '¡­|l. ŽÐ:¡µŽ¤;';';_/,¡­¡À¡¡ ./|._ , --ޤ¡¡|¡¡i¡­!¢Þ!l¡¡ r:,¡ái ¡¡¡¡
.¡¡¡¡ ¡¡ | ¡¡ ¡¡ |:.l.¡¡/';';';';';|=¡¡¡¡¡³/:.|¡¡.|l¢Þ£ì £ìŽÆ._ | ŽÞް=':|¡¡|. L._Ž£¡¡¡Ë¡Ë
¡¡ ¡¡ ¡¡ l.¡¡ ¡¡ |:.:.l./';';';';';';'!¡¡ ¡¡ /:.:.| i¡­|.ް¡¾' | /¡¡|¡¡ ¡¡ |.¡¡!¡¡¡¡ l
.¡¡¡¡¡¡¡¡ l.¡¡¡¡ |:.:.:.!';';';';';';';'|¡¡¡¡/:.:.:.:!.|"'|.¡¡¡¡ l'¡¡ ¨¢-==:|.¡¡!¡¡==l¡¡¡¡ ,. -¡¾;
¡¡¡¡¡¡¡¡¡¡l¡¡¡¡ |:.:.:.:l;';';';';';';';|¡¡/:.:.:.:.:| i¡á!ް=;: l¡¡¡¡ |¡¡ ¡¡ l.¡¡|¡¡¡¡ |¡¡/ ¡¡ //
¡¡¡¡ ¡¡ ¡¡ l¡¡¡¡|:.:.:.:.:l;';';';';';';'|/:.:.:.:.:.:.!¨¢¡¡l¡¡ ¡¡ l¡¢¡¡:|¡¡ ¡¡ |¡¡}¡¡¡²|,.{::¡¡¡¡7¡¡¡Ë¡Ë
¡¡ ¡¡ ¡¡ ¡¡ l¡¡ |:.:.:.:.:.:l;';';';';'/:.:.:.:.:.:.:.:|¡¡|__,.¡³Ž¤__,. ¡³._Ž£ ް=:::ŽÚ'¡¡ ::::::|;¡¡¡¡ 7
.¡¡¡¡¡¡¡¡¡¡¡¡l¡¡|:.:.:.:.:.:.l;';';'/:.:.:.:.:.:.:.:.:.|.¡¡¡À:::::¡À:::::¡¡¡³¡¡ ::::::!¡ì¡¡:::| ¡¡ .:/
.¡¡¡¡¡¡¡¡¡¡¡¡ £ì |:.:.:.:.:.:.:¢Ë:.:.:.:.:.:.:.:.:.:.:.! ¡¡ /¡³:::¡¡`:::¡¡¡¡¡¡¡¡::::¡¡¡¡....::....¡¿¡¡



¡¦¡¦¡¦¡¦¤À¤á¤À
̵Íý¤¬¤¢¤ê¤¹¤®¤ë¡£

¤ä¤ëµ¤¤ò¤À¤¹¤Ê¤ó¤ÆÌµÍý¡£

linux | ¡Ú2008-01-03(Thu) 20:11:27¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

marcelo¤«¤éÊÖ»öÍ褿

¤À¤á¤À¡¢¤³¤¤¤Äʬ¤«¤Ã¤Æ¤Í¡¼



¡¡¡¡¡¡¡¡/::::i::::ޤ:::¡³Ž¤:::::¡À:¡³:¡À::::::¡³:::ޤ::¡³::ޤ:',
¡¡ ¡¡¡¡/::i|::l::ŽÄޤ¡³::ޤ:::¡³:ޤ::::::¡À::¡³::::l::::¡³::i:::i:::!
¡¡¡¡¡¡/:/:!:::!:|::¡³:¡À¡³::::ޤ:¡À::::¡³:::¡³!::::::i::|:::!::!
¡¡¡¡¡¡!ŽÊ::|::::i::l:|¿´Ž¤:¡³::¡À:¡³_¡Àޤ¡À:::¡³:::|!::|:|i
¡¡¡¡¡¡¡¡iޤ:!:|:ޤN{ޤŽËj¡³¡µ¡À¡´Ž² ŽË£ê¡¡>ޤ¡³i:ޤ|!:|:l
¡¡¡¡¡¡¡¡¡¡¡³:!::ŽÄ¡³¡±¡¡l! `¡¡¡¡¡®¡±¡­¡¡|::l::|:|j:,!:!¡¡¡¡ÂÌÌܤÀ¤³¤¤¤Ä
¡¡¡¡¡¡¡¡¡¡¡¡ŽÄޤ::! u¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ê |::/lj:::!ŽØ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡´¡¢¡¡ Ц -¡¡¡¡¡¡¡¡u¡¡ŽØŽ²:|ŽØ¡¡¡¡¡¡¡¡¡¡¡¡Á᤯¤Ê¤ó¤È¤«¤·¤Ê¤¤¤È¡Ä¡Ä
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ŽØ¡³¡¡¡¾Ž¤Ž°- ޤ_¡¡¡¡ ¡¿Ž²:::i
¡¡¡¡¡¡¡¡¡¡¡¡ rް'"ŽÄ:lŽÞޤ ¡¡¡± ¡¡ .¡¿¡¡ , |::!
¡¡¡¡¡¡¡¡¡¡¡¡/ ŽÍ¡¡¡´¡¡¡³Ž¤ _,.¡¡'¡¡¡¡ /¡¡|:'




linux | ¡Ú2008-01-03(Thu) 13:05:30¡Û | Trackback:(0) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

ºÇ¿·Linux¤Çmm_mun_cp¤¬¼Â¹Ô¤Ç¤­¤ó

¤É¤¦¤â¥á¥â¥ê´ÉÍý¤¬ÊѤï¤Ã¤¿Çï»Ò¤Ë
¤³¤ÎÄêÍý¤Ë´Ø¤·¤Æ¡¢»ä¤Ï¿¿¤Ë¶Ã¤¯¤Ù¤­¾ÚÌÀ¤ò¸«¤Ä¤±¤¿¤¬¡¢¤³¤Î32bit¥¢¥É¥ì¥¹¶õ´Ö¤Ï¤½¤ì¤òmmap¤¹¤ë¤Ë¤Ï¶¹¤¹¤®¤ë

¤È°ä¸À¤µ¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë¤é¤·¤¤¡£Æî̵


linux | ¡Ú2008-01-03(Thu) 03:31:28¡Û | Trackback:(0) | Comments:(1)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

³¡¹kzk bench¤¬»Â¤ë

Àµ·î¤«¤é²¿¤ò¤ä¤Ã¤Æ¤¤¤ë¤Î¤«¼«Ê¬¤Ç¤âʬ¤«¤ê¤Þ¤»¤ó¤¬kzk bench²òÀϤΤĤŤ­¡£

¥½¡¼¥¹¤òÆÉ¤ß¤Ê¤¬¤é¤Ä¤é¤Ä¤é¤È¹Í¤¨¤Æ¤ß¤¿¤È¤³¤í¡¢mw_madv_cp¤Ç¤Ï¡¢¤É¤¦¤ä¤é°Ê²¼¤Î¥ë¡¼¥È¤Ç½èÍý¤¬¿Ê¤ó¤Ç¤¤¤ë¤è¤¦¤À¤Èʬ¤«¤Ã¤Æ¤­¤Þ¤·¤¿

Á°ÄóÃμ±¤Ç¤¹¤¬¡¢Linux¤Ë¤ª¤¤¤Æ¤Ï¥Ú¡¼¥¸¤Ïactive¥ê¥¹¥È¤Èinactive¥ê¥¹¥È¤È¤¤¤¦£²ËܤÎ
LRU¥ê¥¹¥È¤Ç´ÉÍý¤µ¤ì¤Æ¤¤¤Þ¤¹¡Ê/proc/meminfo¤Ç¤Îactive, inactiveÍó¤Í¡Ë
¤Ê¤ó¤Ç¡¢ÆóËܤ¢¤ë¤Î¤«¤È¤¤¤¦¤È¥Ú¡¼¥¸²ó¼ý¤¹¤ë¤È¤­¤ËÉÑÈˤ˻²¾È¤µ¤ì¤Æ¤¤¤ë¥Ú¡¼¥¸¤ò
ºÇ½é¤«¤é½ü³°¤Ç¤­¤ë¤È¤ª¤¤¤·¤¤¤Ç¤·¤ç¡©¤Ã¤Æ¤°¤é¤¤¤ËÍý²ò¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
̾Á°¤«¤éʬ¤«¤ë¤è¤¦¤Ëinactive¤Ê¤Û¤¦¤¬¡¢¼Î¤Æ¤é¤ì¤ë¡Êor ¥¹¥ï¥Ã¥×¥¢¥¦¥È¤µ¤ì¤ë¡ËľÁ°¤Î¥Ú¡¼¥¸·²¤Í¡£

£±¡¥¤Þ¤ºmmaped¤Ê¥á¥â¥ê¥¢¥¯¥»¥¹¤ò·Àµ¡¤Ëread ahead¤¬Áö¤ê¤Þ¤¹¡£
¡¡¡¡¤Ç¡¢read ahead¤ÏÆÉ¤ß¹þ¤ó¤À¥Ú¡¼¥¸¤òinactive¥ê¥¹¥È¤Ë¤Ä¤Ê¤®¤Þ¤¹
£²¡¥memcpy·¯¤¬¼ÂºÝ¤Ë¥á¥â¥ê¤Ë¿¨¤ê¤Þ¤¹¡£¤³¤³¤ÇPTE¤Îaccess bit£ô¤¬ON¤Ë¤Ê¤ê¤Þ¤¹¡£
£³¡¥¤É¤³¤«¤Î¥¿¥¤¥ß¥ó¥°¤Ç¥á¥â¥ê¤¬Â­¤ê¤Ê¤¯¤Ê¤Ã¤Æ¥Ú¡¼¥¸²ó¼ý¤¬Áö¤ê¤Þ¤¹
¡¡¡¡¡Ê¤ª¤¤¤é¤Î¥Þ¥·¥ó¤Ï£µ£±£²M¤·¤«¤Ê¤¤¤Î¤Ç¡¢¥ª¥ó¥á¥â¥ê¤Ç£±G¥³¥Ô¡¼¤ÏÀäÂФ¢¤ê¤¨¤Ê¤¤¡Ë
£´¡¥¤³¤³¤Ç¥¹¥ï¥Ã¥×¥¢¥¦¥È¤·¤è¤¦¤«¤Ê¡¼¤Èinactive¥ê¥¹¥È¤òçÓ¤á¤Æ¤¤¤ë¤È¤­¤Ë¡¢access bit¤¬
Ω¤Ã¤Æ¤¤¤ë¤È¡¢¤Ê¤ó¤À»È¤Ã¤Æ¤ë¤¸¤ã¤ó¤È¤¤¤¦¤³¤È¤Ç¤½¤Î¥Ú¡¼¥¸¤Ïactive list¤Ë°Ü¤µ¤ì¤Þ¤¹¡£
¡¡¡¡º£²ó¤Î¥±¡¼¥¹¤Ç¤Ï¤Ê¤ó¤ÈÁ´¥Ú¡¼¥¸active list¹Ô¤­
£µ¡¥¤ÇLinux¤Î¥á¥â¥ê´ÉÍý¤Î¥Ý¥ê¥·¡¼¤È¤·¤Æmapped page¤ÈÉáÄ̤Υե¡¥¤¥ë¥­¥ã¥Ã¥·¥å¤Ï
active¤«¤éinactive¤Ø¤ÎžÍ¤ä¤¹¤µ¤¬°ã¤¤¤Þ¤¹¡£
¤Þ¤¢¡¢ÉáÄ̤˹ͤ¨¤Æ¥á¥â¥ê¤È¤·¤Æ¥¢¥¯¥»¥¹¤¹¤ë¥Ú¡¼¥¸¤Î¤Û¤¦¤¬¥é¥ó¥À¥à¥¢¥¯¥»¥¹¤µ¤ì¤ë
¡¡¡¡²ÄǽÀ­¤Ï¹â¤¤¤ï¤±¤Ç¡¢¥·¡¼¥±¥ó¥·¥ã¥ë¥¢¥¯¥»¥¹¤Î²ÄǽÀ­¤¬¹â¤¤mmap¤µ¤ì¤Æ¤¤¤Ê¤¤
¡¡¡¡ÉáÄ̤Υե¡¥¤¥ë¥­¥ã¥Ã¥·¥å¤òÀè¤Ë¼Î¤Æ¤Æ¤¤¤¯¤Î¤Ï¹çÍýŪ¤È¤¤¤¨¤Ê¤¯¤â¤Ê¤¤¡£
£¶¡¥¤Ç¡¢memory pressure¤¬½½Ê¬¹â¤Þ¤ë¤Þ¤Ç¤Ïactive list¤Ë»Ä¤Ã¤¿read¥á¥â¥ê¤¬
¤¼¤ó¤¼¤ó¼Î¤Æ¤é¤ì¤Ê¤¤¤Î¤Ç¡¢writeÍѤΥá¥â¥êÎΰ褬¤¹¤¯¤Ê¤¯¤Ê¤Ã¤Æ¤¯¤ë¡£
¤Ç¡¢¤É¤¦¤·¤è¤¦¤â¤Ê¤¯¤Ê¤ë¤È¡¢¤¢¤ëïçÃͤòͤ¨¤¿¤È¤³¤í¤Ç°ìµ¤¤Ëinactive list¤Ë
°Üư¤¹¤ë¤Î¤Çή¤ìºî¶È¤¬Íð¤ì¤Þ¤¯¤ê¡£¤È
¡¡¡¡¼ÂºÝiostat¤Ç¸«¤ë¤ÈI/OžÁ÷¥ì¡¼¥È¤¬¤Û¤ó¤È¤¦¤Ë¾å²¼¤·¤Þ¤¯¤ë

¤Ê¤Î¤Ç¡¢£´¤ÎÃʳ¬¤Ç¥·¡¼¥±¥ó¥·¥ã¥ë¥¢¥¯¥»¥¹¤À¤è¤ó¡£¤Èmadvise¤µ¤ì¤Æ¤¤¤¿¤é¡¢
active list¤Ë¤¤¤«¤Ê¤¤¡£¤È¤¤¤¦¥Ñ¥Ã¥Á¤ò¤³¤µ¤¨¤Æ¤ß¤Þ¤·¤¿¡£

·ë²Ì¤Ï°Ê²¼¡£¤è¤¦¤ä¤Ã¤Èrw_cpÊ¡£
Ì󣵡ó¤ÎÀ­Ç½¸þ¾å¤ä¤Í¡£


+(eval):1> sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
+./test.sh:10> time ./rw_cp testfile1G testfile1G2
0.04user 4.40system 0:55.81elapsed 7%CPU (0avgtext+0avgdata 0maxresident)k
2099512inputs+2097152outputs (0major+91minor)pagefaults 0swaps

+(eval):1> sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
+./test.sh:17> time ./mw_madv_cp testfile1G testfile1G2
0.00user 5.11system 0:55.03elapsed 9%CPU (0avgtext+0avgdata 0maxresident)k
2099368inputs+2097152outputs (1major+262233minor)pagefaults 0swaps


¤Á¤Ê¤ß¤Ë¡¢¤¢¤Æ¤¿¥Ñ¥Ã¥Á¤Ï°Ê²¼


---
mm/vmscan.c | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)

Index: linux-2.6.24-rc6-cp2/mm/vmscan.c
===================================================================
--- linux-2.6.24-rc6-cp2.orig/mm/vmscan.c 2008-01-03 02:05:11.000000000 +0900
+++ linux-2.6.24-rc6-cp2/mm/vmscan.c 2008-01-03 02:25:39.000000000 +0900
@@ -435,6 +435,30 @@ cannot_free:
return 0;
}

+static bool page_sequential_mapped(struct page *page)
+{
+ struct address_space *mapping = page->mapping;
+ pgoff_t pgoff = page->index << (PAGE_CACHE_SHIFT - PAGE_SHIFT);
+ struct vm_area_struct *vma;
+ struct prio_tree_iter iter;
+ bool ret = true;
+
+ if (!page_mapped(page))
+ return false;
+
+ spin_lock(&mapping->i_mmap_lock);
+ vma_prio_tree_foreach(vma, &iter, &mapping->i_mmap, pgoff, pgoff) {
+ if (!VM_SequentialReadHint(vma)) {
+ ret = false;
+ break;
+ }
+ }
+ spin_unlock(&mapping->i_mmap_lock);
+ return ret;
+}
+
+
+
/*
* shrink_page_list() returns the number of reclaimed pages
*/
@@ -496,7 +520,8 @@ static unsigned long shrink_page_list(st
referenced = page_referenced(page, 1);
/* In active use or really unfreeable? Activate it. */
if (sc->order <= PAGE_ALLOC_COSTLY_ORDER &&
- referenced && page_mapping_inuse(page))
+ referenced && page_mapping_inuse(page) &&
+ !page_sequential_mapped(page))
goto activate_locked;

#ifdef CONFIG_SWAP



¤¬¡¢¤·¤«¤·¡¢¤³¤Î¥Ñ¥Ã¥Á¤Ï°Ê²¼¤ÎÃ×̿Ū¤Ê·çÅÀ¤¬¤¢¤ë

¡¦ÉáÄ̤οͤÏmadvise¤Ê¤ó¤«»È¤ï¤Ê¤¤¤Î¤Ç¡¢ÌÀ¼¨Åª¤Ê¥Ò¥ó¥È¤Ê¤·¤Ë¥·¡¼¥±¥ó¥·¥ã¥ë¥¢¥¯¥»¥¹¤«
¥é¥ó¥À¥à¥¢¥¯¥»¥¹¤«¤ò¿ä¬¤·¤Ê¤¤¤ÈËܼÁŪ¤Ê²ò·è¤Ë¤Ï¤Ê¤é¤Ê¤¤¡£
¡¡¡Ê¤³¤Î¥Ñ¥Ã¥Á¤Ç¤Ïmw_cp¤Ï¤¼¤ó¤¼¤ó¹â®²½¤µ¤ì¤Æ¤¤¤Ê¤¤¡Ë
¡¡¤Ê¤ó¤À¤±¤É¡¢mmap¤Ç¤½¤ì¤ò¿ä¬¤¹¤ë¤Î¤Ï¤á¤Á¤ã¤¯¤Á¤ãÆñ¤·¤¤¤¾¡¦¡¦¡¦
¡¦¤½¤â¤½¤â¡¢lock dependencyŪ¤Ë¹Ôµ·¤¬°­¤¤¤Î¤Ç¡¢¤¿¤Þ¤Ë¥Ç¥Ã¥É¥í¥Ã¥¯¤·¤ÆOS¥Ï¥ó¥°¤¹¤ë
¡¡¢¬¥Ð¥«¥¹£÷£÷£÷

º£¸å¤Îwork¤È¤·¤Æ¤Ï
¡¦mw_cp¤Îmajor faultÎ̤«¤é¤¤¤Ã¤Æread ahead¤¬¤¦¤Þ¤¯Æ°¤¤¤Æ¤¤¤Ê¤¤¤Î¤Çư¤¯¤è¤¦¤Ë¤¹¤ë
¡¦read ahead¤¬¤¦¤Þ¤¯HIT¤·¤Æ¤¤¤ë¤È¤­¤Ï¥·¡¼¥±¥ó¥·¥ã¥ë¥¢¥¯¥»¥¹¤È¤ß¤Ê¤¹¤è¤¦¤Ë¤¹¤ë

¤Î£²Ãʳ¬¤Çºî¶È¤ò¿Ê¤á¤ì¤Ð¤¤¤¤¤È»×¤ï¤ì¤ë¡£
¤Æ¤«¡¢ËÜÅö¤Ë¤Ê¤Ë¤ò¤ä¤Ã¤Æ¤¤¤ë¤ó¤À¤«


¥µ¥¶¥¨¤µ¤ó
¤Ê¤Ë¤ò¤ä¤Ã¤Æ¤ë¤Î¡©¡¡¥é¥ó¥­¥ó¥°¡ª



linux | ¡Ú2008-01-03(Thu) 03:17:40¡Û | Trackback:(1) | Comments:(0)
¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯

kzk bench¤Ä¤Å¤­

±µÅ¸³«¤È¤¤¤¦¤ä¤Ä¤Ç¤¹¤Í¡£

²þ¤¤·¤ä¤¹¤¤¤è¤¦¤Ë¤È¡¢ºÇ¿·¥«¡¼¥Í¥ë¥Ó¥ë¥É¤·¤ÆºÆ¥Æ¥¹¥È¤·¤¿¤é¤á¤Ã¤µÂ®¤¤¤ó¤Ç¤ä¤ó¤Î¡£
¤ä¤ëµ¤¤Ê¤¯¤¹¤ï¡¼

2.6.24-rc6¤Ç¤Î·ë²Ì¤Ï°Ê²¼

[kosaki@sc420 copy]$ ./test.sh
+./test.sh:10> time ./rw_cp testfile1G testfile1G2
0.06user 4.70system 0:56.17elapsed 8%CPU (0avgtext+0avgdata 0maxresident)k
2099456inputs+2097152outputs (0major+106minor)pagefaults 0swaps

+./test.sh:12> time ./rw_fadv_cp testfile1G testfile1G2
0.04user 4.54system 0:53.10elapsed 8%CPU (0avgtext+0avgdata 0maxresident)k
2099448inputs+2097152outputs (0major+107minor)pagefaults 0swaps

+./test.sh:14> time ./mm_sync_cp testfile1G testfile1G2
0.46user 3.52system 1:07.61elapsed 5%CPU (0avgtext+0avgdata 0maxresident)k
2099904inputs+2097160outputs (32772major+491656minor)pagefaults 0swaps

+./test.sh:16> time ./mm_mun_cp testfile1G testfile1G2
0.54user 3.55system 1:06.09elapsed 6%CPU (0avgtext+0avgdata 0maxresident)k
2100168inputs+2097160outputs (32773major+491654minor)pagefaults 0swaps

+./test.sh:18> time ./mm_sync_madv_cp testfile1G testfile1G2
0.78user 2.91system 1:17.44elapsed 4%CPU (0avgtext+0avgdata 0maxresident)k
2100136inputs+2097160outputs (8major+524420minor)pagefaults 0swaps

+./test.sh:20> time ./mm_mun_madv_cp testfile1G testfile1G2
0.76user 3.22system 1:09.66elapsed 5%CPU (0avgtext+0avgdata 0maxresident)k
2100224inputs+2097168outputs (8major+524422minor)pagefaults 0swaps

+./test.sh:22> time ./mw_cp testfile1G testfile1G2
0.00user 4.94system 0:59.05elapsed 8%CPU (0avgtext+0avgdata 0maxresident)k
2100288inputs+2097408outputs (16391major+245892minor)pagefaults 0swaps

+./test.sh:24> time ./mw_madv_cp testfile1G testfile1G2
0.00user 5.06system 0:58.17elapsed 8%CPU (0avgtext+0avgdata 0maxresident)k
2100352inputs+2097152outputs (8major+262276minor)pagefaults 0swaps



ÁêÊѤï¤é¤ººÇ®ÃͤϤդĤ¦¤Îread-write¤Ç¤Î¥³¥Ô¡¼¤Ç¤¹¤¬¡¢¤³¤Î¤°¤é¤¤¤À¤È¤Û¤«¤ÎÊýË¡¤Ç¤â¤¼¤ó¤¼¤óµö¤»¤ëµ¤¤¬¤·¤Þ¤¹
mmap-mmap¥³¥Ô¡¼¤Î¹â®²½¡ÊÌó£²Çܡˤ⤹¤´¤¤¤·¡¢madvise¤«¤±¤¿¤È¤­¤Î¥Ú¡¼¥¸¥Õ¥©¥ë¥È¤Î¿ô¤¬Ì󣱡¿£±£°£°£°¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¹âÉé²Ù»þ¤Ë¸ú¤­¤½¤¦¤Ç¤¹¤Í¡£

¡¦¡¦¡¦

¡¦¡¦¡¦¡¦¡¦¡¦

¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦


¤µ¤Æ¡¢¼¡¤Î¥Í¥¿¤ò¤µ¤¬¤¹¤«


¥Ñ¥ä¥ª¤Îͫݵ
ͫݵ¡ª¡¡¥é¥ó¥­¥ó¥°¡ª


linux | ¡Ú2008-01-02(Wed) 01:55:27¡Û | Trackback:(1) | Comments:(0)