Linux»·¾³½ø³Ì¼äͨÐÅ£¨Îå
ÎĵµÑ¡Ïî
´òÓ¡±¾Ò³
½«´ËÒ³×÷Ϊµç×ÓÓʼþ·¢ËÍ
¼¶±ð£º ³õ¼¶
Ö£ÑåÐË (mlinux@163.com), ¹ú·À¿Æ´ó¹¥¶Á²©Ê¿Ñ§Î»
2003 Äê 5 ÔÂ 01 ÈÕ
¹²ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£¬±ØÈ»ÐèҪijÖÖͬ²½»úÖÆ£¬»¥³âËøºÍÐźÅÁ¿¶¼¿ÉÒÔ¡£
²ÉÓù²ÏíÄÚ´æÍ¨ÐŵÄÒ»¸öÏÔ¶øÒ×¼ûµÄºÃ´¦ÊÇЧÂʸߣ¬ÒòΪ½ø³Ì¿ÉÒÔÖ±½Ó¶ÁдÄڴ棬¶ø²»ÐèÒªÈκÎÊý¾ÝµÄ¿½±´¡£¶ÔÓÚÏñ¹ÜµÀºÍÏûÏ¢¶ÓÁеÈͨÐÅ·½Ê½£¬ÔòÐèÒªÔÚÄں˺ÍÓû§¿Õ¼ä½øÐÐËĴεÄÊý¾Ý¿½±´£¬¶ø¹²ÏíÄÚ´æÔòÖ»¿½±´Á½´ÎÊý¾Ý[1]£ºÒ»´Î´ÓÊäÈëÎļþµ½¹²ÏíÄÚ´æÇø£¬ÁíÒ»´Î´Ó¹²ÏíÄÚ´æÇøµ½Êä³öÎļþ¡£Êµ¼ÊÉÏ£¬½ø³ÌÖ®¼äÔÚ¹²ÏíÄÚ´æÊ±£¬²¢²»×ÜÊǶÁдÉÙÁ¿Êý¾Ýºó¾Í½â³ýÓ³É䣬ÓÐеÄͨÐÅʱ£¬ÔÙÖØÐ½¨Á¢¹²ÏíÄÚ´æÇøÓò¡£¶øÊDZ£³Ö¹²ÏíÇøÓò£¬Ö±µ½Í¨ÐÅÍê±ÏΪֹ£¬ÕâÑù£¬Êý¾ÝÄÚÈÝÒ»Ö±±£´æÔÚ¹²ÏíÄÚ´æÖУ¬²¢Ã»ÓÐд»ØÎļþ¡£¹²ÏíÄÚ´æÖеÄÄÚÈÝÍùÍùÊÇÔÚ½â³ýÓ³Éäʱ²Åд»ØÎļþµÄ¡£Òò´Ë£¬²ÉÓù²ÏíÄÚ´æµÄͨÐÅ·½Ê½Ð§ÂÊÊǷdz£¸ßµÄ¡£
LinuxµÄ2.2.xÄÚºËÖ§³Ö¶àÖÖ¹²ÏíÄڴ淽ʽ£¬Èçmmap()ϵͳµ÷Óã¬Posix¹²ÏíÄڴ棬ÒÔ¼°ÏµÍ³V¹²ÏíÄÚ´æ¡£linux·¢Ðа汾ÈçRedhat 8.0Ö§³Ömmap()ϵͳµ÷Óü°ÏµÍ³V¹²ÏíÄڴ棬µ«»¹Ã»ÊµÏÖPosix¹²ÏíÄڴ棬±¾ÎĽ«Ö÷Òª½éÉÜmmap()ϵͳµ÷Óü°ÏµÍ³V¹²ÏíÄÚ´æAPIµÄÔÀí¼°Ó¦Óá£
Ò»¡¢ÄÚºËÔõÑù±£Ö¤¸÷¸ö½ø³ÌѰַµ½Í¬Ò»¸ö¹²ÏíÄÚ´æÇøÓòµÄÄÚ´æÒ³Ãæ
1¡¢page cache¼°swap cacheÖÐÒ³ÃæµÄÇø·Ö£ºÒ»¸ö±»·ÃÎÊÎļþµÄÎïÀíÒ³Ãæ¶¼×¤ÁôÔÚpage cache»òswap cacheÖУ¬Ò»¸öÒ³ÃæµÄËùÓÐÐÅÏ¢ÓÉstruct pageÀ´ÃèÊö¡£struct pageÖÐÓÐÒ»¸öÓòΪָÕëmapping £¬ËüÖ¸ÏòÒ»¸östruct address_spaceÀàÐͽṹ¡£page cache»òswap cacheÖеÄËùÓÐÒ³Ãæ¾ÍÊǸù¾Ýaddress_space½á¹¹ÒÔ¼°Ò»¸öÆ«ÒÆÁ¿À´Çø·ÖµÄ¡£
2¡¢ÎļþÓëaddress_space½á¹¹µÄ¶ÔÓ¦£ºÒ»¸ö¾ßÌåµÄÎļþÔÚ´ò¿ªºó£¬Äں˻áÔÚÄÚ´æÖÐΪ֮½¨Á¢Ò»¸östruct inode½á¹¹£¬ÆäÖеÄi_mappingÓòÖ¸ÏòÒ»¸öaddress_space½á¹¹¡£ÕâÑù£¬Ò»¸öÎļþ¾Í¶ÔÓ¦Ò»¸öaddress_space½á¹¹£¬Ò»¸öaddress_spaceÓëÒ»¸öÆ«ÒÆÁ¿Äܹ»È·¶¨Ò»¸öpage cache »òswap cacheÖеÄÒ»¸öÒ³Ãæ¡£Òò´Ë£¬µ±ÒªÑ°Ö·Ä³¸öÊý¾Ýʱ£¬ºÜÈÝÒ׸ù¾Ý¸ø¶¨µÄÎļþ¼°Êý¾ÝÔÚÎļþÄ򵀮«ÒÆÁ¿¶øÕÒµ½ÏàÓ¦µÄÒ³Ãæ¡£
3¡¢½ø³Ìµ÷ÓÃmmap()ʱ£¬Ö»ÊÇÔÚ½ø³Ì¿Õ¼äÄÚÐÂÔöÁËÒ»¿éÏàÓ¦´óСµÄ»º³åÇø£¬²¢ÉèÖÃÁËÏàÓ¦µÄ·ÃÎʱêʶ£¬µ«²¢Ã»Óн¨
Ïà¹ØÎĵµ£º
Ê×ÏÈÒªÀí½âǶÈëÊ½ÏµÍ³ÒÆÖ²µÄ»ù±¾¸ÅÄ
Èí¼þµÄÒÆÖ²ÊÇϵͳ¿ª·¢ÖÐ×î³£¼ûµÄÒ»Ï×÷¡£Ç¶ÈëÊ½ÏµÍ³ÒÆÖ²Ò»°ãÀ´ËµÖ¸µÄÊÇÒýµ¼³ÌÐò¡¢²Ù×÷ϵͳµÈºÍÓ²¼þ¹ØÏµ
±È½ÏÃÜÇеÄÈí¼þÔÚÒ»¸öеÄÓ²¼þƽ̨ÉÏÔËÐÐÆðÀ´µÄ¹ý³Ì¡£
ǶÈëÊ½ÏµÍ³ÒÆÖ²·ÖΪÒÔϼ¸ÖÖ£º
Òýµ¼³ÌÐòÒÆÖ²
²Ù×÷ÏµÍ³ÒÆÖ²
Ó¦ÓóÌÐòÒÆÖ²
Òýµ¼³ÌÐòÒÆÖ²
1¡¢Òýµ¼³ÌÐò¾ÍÊÇÔÚ²Ù×÷ÏµÍ ......
·½·¨Ò»¡¢
bool ReadElemnt(string& szFileName)
{
TiXmlDocument myDocument(szFileName);
bool loadOkay = myDocument.LoadFile();
if(loadOkay == false)
return false;
TiXmlElement *rootElement = myDocument.RootElement();
if(rootEle ......
×°Íê
NeoShine
Linux 4.0
ºó£¬²åÉ϶ú»úºó£¬¶ú»úºÍÀ®°Èͬʱ·¢Éù¡£
Òª½â¾öÕâ¸ö¹ÊÕÏ£¬ ¹Ø¼üÎÊÌâÔÚÓÚÕÒµ½Îļþ
ALSA-Configuration.txt
¡£
Õâ¸öÎļþÀïÓÐÉù¿¨ÀàÐÍÓë
model
£¨Ä£¿é£©µÄ¶ÔÕÕ±í¡£
ÏÂÃæÊDzÙ×÷µÄÕýÈ·²½Ö裺
1
¡¢ÏÂÔØÉù¿¨Çý¶¯³ÌÐò¡¢¿âÎļþ¡¢¹¤¾ß£¬ÏÂÃæÊÇĿǰ×îеÄÇý¶¯³ÌÐò£¬ÏÂÔØÍøÖ·£º
Çý¶¯³ÌÐò£º
ftp: ......
ÕâÊÇÒ»¸öÔÚlinuxÃüÁîÐÐÏÂʹÓÃVBE½øÐлæÍ¼µÄ²âÊÔ³ÌÐò
ÓÃlibx86ʵÏÖÔÚreal modeϵÄvesaģʽÉ趨ºÍͼÐÎÏÔʾ¹¦ÄÜ
ʵÏÖÔÚlinuxµÄ±£»¤Ä£Ê½, Îı¾ÃüÁîÐÐÏÂÇл»µ½vesaģʽ£¬ÔÙ»¸öÊ®×ÖµÄ×ø±ê£¬ÔÙ¼¸¸öԲȦ^_^
ÐÞ¸Ä×Ôvbespy
°²×°ÔËÐУº
Ö±½ÓÔËÁîÐÐÔËÐÐ "make", ±àÒë³É¹¦ºó
......
bool InstertNode(string& szFileName)
{
TiXmlDocument myDocument(szFileName);
bool loadOkay = myDocument.LoadFile();
if(loadOkay == false)
return false;
//»ñµÃ¸ùÔªËØ
TiXmlElement *r ......