|
|||||||
|
|
MLOCKALLSection: Linux Programmer's Manual (2)Updated: 1995-11-26 Index Return to Main Contents ̾Á°mlockall - ¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤Î¥Ú¡¼¥¸¥ó¥°¤ò¶Ø»ß¤¹¤ë½ñ¼°#include <sys/mman.h> int mlockall(int flags); ÀâÌÀmlockall ¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤Î¥¢¥É¥ì¥¹¶õ´Ö¤Ë¥Þ¥Ã¥×¤µ¤ì¤Æ¤¤¤ëÁ´¤Æ¤Î¥Ú¡¼¥¸¤Î ¥Ú¡¼¥¸¥ó¥°(paging)¤ò¶Ø»ß¤¹¤ë¡£¤³¤ì¤Ë¤Ï¥³¡¼¥É¡¢¥Ç¡¼¥¿¡¢¥¹¥¿¥Ã¥¯¤Î ³Æ¥»¥°¥á¥ó¥È¡¢¶¦Í¥é¥¤¥Ö¥é¥ê¡¢¥«¡¼¥Í¥ë¤Î¥æ¡¼¥¶¡¼¶õ´Ö¥Ç¡¼¥¿¡¢ ¶¦Í¥á¥â¥ê¡¢¥á¥â¥ê¡¦¥Þ¥Ã¥×¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò´Þ¤ó¤Ç¤¤¤ë¡£ mlockall ¥·¥¹¥Æ¥à¡¦¥³¡¼¥ë¤¬À®¸ù¤·¤¿¾ì¹ç¤Ë¤ÏÁ´¤Æ¤Î¥Þ¥Ã¥×¤µ¤ì¤¿¥Ú¡¼¥¸¤Ï RAM ¤Ë »Ä¤ê³¤±¤ë¤³¤È¤òÊݾڤµ¤ì¤ë¡¢¤½¤·¤Æ munlock ¤ä munlockall ¤Ë¤è¤Ã¤Æ¥Ú¡¼¥¸¤¬¥¢¥ó¥í¥Ã¥¯¤µ¤ì¤¿¤ê¡¢¥×¥í¥»¥¹¤¬½ªÎ»¤·¤¿¤ê¡¢ exec ¤Ë¤è¤Ã¤ÆÂ¾¤Î¥×¥í¥°¥é¥à¤ò³«»Ï¤·¤¿¤ê¤¹¤ë¤Þ¤Ç¤Ï RAM ¤Ë»Ä¤ë¤³¤È¤¬ Êݾڤµ¤ì¤ë¡£ fork ¤ò¹Ô¤Ê¤Ã¤¿¾ì¹ç¤Ë»Ò¥×¥í¥»¥¹¤Ï¥Ú¡¼¥¸¤Î¥í¥Ã¥¯¤ò·Ñ¾µ¤·¤Ê¤¤¡£¥á¥â¥ê¤Î¥í¥Ã¥¯¤Ë¤Ï¼ç¤ËÆó¤Ä¤Î»È¤¤Æ»¤¬¤¢¤ë¡£¥ê¥¢¥ë¡¦¥¿¥¤¥à(real-time) ¥¢¥ë¥´¥ê¥º¥à¤È¹â¤¤¥»¥¥å¥ê¥Æ¥£¤Î¥Ç¡¼¥¿½èÍý¤Ç¤¢¤ë¡£¥ê¥¢¥ë¡¦¥¿¥¤¥à¤Î ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï·èÄêŪ¤Ê¥¿¥¤¥ß¥ó¥°¤ä¥¹¥±¥¸¥å¡¼¥ê¥ó¥°¤òÍ׵ᤷ¡¢ ¥Ú¡¼¥¸¥ó¥°¤Ïͽ´ü¤·¤Ê¤¤¥×¥í¥°¥é¥à¤Î¼Â¹ÔÃÙ¤ì¤ò¤â¤¿¤é¤¹½ÅÍפÊÍ×°ø¤Ç¤¢¤ë¡£ ¥ê¥¢¥ë¡¦¥¿¥¤¥à¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¤¿¤¤¤Æ¤¤¤Ï sched_setscheduler ¤Ç¥ê¥¢¥ë¡¦¥¿¥¤¥à¡¦¥¹¥±¥¸¥å¥é¡¼¤ËÊѹ¹¤µ¤ì¤ë¡£ °Å¹æ¤ä¥»¥¥å¥ê¥Æ¥£¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ï¤·¤Ð¤·¤Ð¥Ñ¥¹¥ï¡¼¥É¤äÈëÌ©¸°¤Î¥Ç¡¼¥¿¤Î ¤Î¤è¤¦¤Ê½ÅÍפʥХ¤¥È¤ò¤¢¤Ä¤«¤¦¡£¥Ú¡¼¥¸¥ó¥°¤Î·ë²Ì¡¢¤³¤ì¤é¤ÎÈëÌ©¤¬ ¥¹¥ï¥Ã¥×ÍѤθÇÄêÇÞÂΤËžÁ÷¤µ¤ì¤ë¤«¤â¤·¤ì¤Ê¤¤¡£¤½¤·¤Æ¤½¤ì¤Ï¥»¥¥å¥ê¥Æ¥£ ¡¦¥½¥Õ¥È¥¦¥§¥¢¤¬ RAM ¾å¤ÎÈëÌ©¤òºï½ü¤·¤Æ½ªÎ»¤·¤¿¤º¤Ã¤È¸å¤Ë¤Ç¤âŨ¤Ë¤è¤Ã¤Æ ¥¢¥¯¥»¥¹¤¬²Äǽ¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Ê¤¤¡£¥»¥¥å¥ê¥Æ¥£¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï ¥á¥â¥ê¤Î¤Û¤ó¤Î¾®¤µ¤ÊÉôʬ¤Î¤ß¤¬¥í¥Ã¥¯¤µ¤ì¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤½¤Î¤¿¤á¤Ë mlock ¤¬»ÈÍѤǤ¤ë¡£ flags ¥Ñ¥é¥á¡¼¥¿¡¼¤Ï°Ê²¼¤ÎÆâÍÆ¤Î¥Ó¥Ã¥È OR ¤«¤é¤Ê¤ë:
MCL_FUTURE ¤¬»ØÄꤵ¤ì¤Æ¤ª¤ê¡¢¥í¥Ã¥¯¤µ¤ì¤¿¥Ú¡¼¥¸¤Î¿ô¤¬¥í¥Ã¥¯¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¥Ú¡¼¥¸¿ô¤Î ¾å¸Â¤òͤ¨¤¿¾ì¹ç¤Ë¤Ï¡¢¿·¤·¤¯¥Ú¡¼¥¸¤ò¥Þ¥Ã¥×¤¹¤ë¥·¥¹¥Æ¥à¡¦¥³¡¼¥ë¤Ï ENOMEM ¤È¤Ê¤Ã¤Æ¼ºÇÔ¤¹¤ë¡£ À®Ä¹¤¹¤ë¥¹¥¿¥Ã¥¯¤Ë¤è¤Ã¤Æ¿·¤·¤¤¥Ú¡¼¥¸¤¬¥Þ¥Ã¥×¤µ¤ì¤ë¾ì¹ç¤Ï¡¢¥«¡¼¥Í¥ë¤Ï ¥¹¥¿¥Ã¥¯¤Î³ÈÄ¥¤òµñÈݤ·¡¢ SIGSEGV ¤òÁ÷¤ë¡£ ¥ê¥¢¥ë¡¦¥¿¥¤¥à¡¦¥×¥í¥»¥¹¤Ï´Ø¿ô¸Æ¤Ó½Ð¤·¤Ç¥Ú¡¼¥¸¡¦¥Õ¥©¡¼¥ë¥È¤¬È¯À¸¤·¤Ê¤¤ ¤è¤¦¤Ë»þ´Ö¤¬Ã×̿Ū¤ÊÉôʬ¤ËÆþ¤ëÁ°¤Ë½½Ê¬¤Ê¥í¥Ã¥¯¤µ¤ì¤¿¥¹¥¿¥Ã¥¯¤ò³ÎÊݤ·¤Æ ¤ª¤¯É¬Íפ¬¤¢¤ë¡£¤³¤ì¤Ï½½Ê¬¤ËÂ礤ʼ«Æ°ÊÑ¿ô¤ò³ÎÊݤ¹¤ë´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¡¢ ¤³¤ì¤é¤Î¥¹¥¿¥Ã¥¯ÍѤΥڡ¼¥¸¤¬¥á¥â¥ê¤Ë³ÎÊݤµ¤ì¤ë¤è¤¦¤Ë¤³¤ÎÂ礤ÊÇÛÎó¤Ë ½ñ¤¹þ¤ß¤ò¹Ô¤Ê¤¦¤³¤È¤Ë¤è¤Ã¤ÆÃ£À®¤Ç¤¤ë¡£¤³¤ÎÊýË¡¤Ë¤è¤Ã¤Æ½½Ê¬¤Ê¥Ú¡¼¥¸¤¬ ¥¹¥¿¥Ã¥¯¤Ë¥Þ¥Ã¥×¤µ¤ì¡¢RAM ¤Ë¥í¥Ã¥¯¤µ¤ì¤ë¡£¥À¥ß¡¼¤Î½ñ¤¹þ¤ß¤ÏÃ×̿Ū¤Ê Éôʬ¤Ç½ñ¤¹þ¤ß»þ¥³¥Ô¡¼(copy-on-write)¤Ë¤è¤ë¥Ú¡¼¥¸¡¦¥Õ¥©¡¼¥ë¥È¤µ¤¨ µ¯¤¤Ê¤¤¤³¤È¤òÊݾڤ¹¤ë¡£ ¥á¥â¥ê¤Î¥í¥Ã¥¯(lock)¤ÏÎßÀѤ·¤Ê¤¤¡£Î㤨¤ÐÊ£¿ô²ó mlock ¤ä mlockall ¤ò¸Æ¤Ó½Ð¤·¤Æ¥í¥Ã¥¯¤µ¤ì¤¿¥Ú¡¼¥¸¤â°ì²ó¤Î munlockall ¤Ë¤è¤Ã¤Æ¥¢¥ó¥í¥Ã¥¯(unlock)¤µ¤ì¤ë¡£ Ê£¿ô¤Î¾ì½ê¤äÊ£¿ô¤Î¥×¥í¥»¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤Æ¤¤¤ë¥Ú¡¼¥¸¤Ï¡¢¾¯¤Ê¤¯¤È¤â°ì¤Ä¤Î¾ì½ê¡¢ °ì¤Ä¤Î¥×¥í¥»¥¹¤Ç¥í¥Ã¥¯¤µ¤ì¤Æ¤¤¤ë¸Â¤ê¤Ï RAM ¤Ë»Ä¤ê³¤±¤ë¡£ mlockall ¤È munlockall ¤¬»ÈÍѲÄǽ¤Ç¤¢¤ë POSIX ¥·¥¹¥Æ¥à¤Ç¤Ï _POSIX_MEMLOCK ¤¬ <unistd.h> ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£ ÊÖ¤êÃÍÀ®¸ù¤·¤¿¾ì¹ç¤Ï¡¢ mlockall ¤Ï¥¼¥í¤òÊÖ¤¹¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï¡¢-1 ¤¬ÊÖ¤µ¤ì¡¢ errno ¤¬Å¬ÀÚ¤ËÀßÄꤵ¤ì¤ë¡£¥¨¥é¡¼
½àµòPOSIX.1b, SVR4. SVr4 ¤Ë¤Ï¾¤Ë EAGAIN ¥¨¥é¡¼¤Ë¤Ä¤¤¤Æ¤Îµ½Ò¤¬¤¢¤ë¡£´ØÏ¢¹àÌÜmunlockall(2), mlock(2), munlock(2)
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man2". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |