¹ØÓÚLinuxʹÓõÄÕæʵÄÚ´æ
ÎÒÃÇʹÓõÄLinuxºÍWindows¿É²»Ì«Ò»Ñù£¬ÓÃtopÃüÁîµÃ³öÀ´µÄ¿ÉÄܲ»ÊÇÕæʵʹÓõÄÄڴ棬ÓÃfreeÃüÁîµÚ¶þÐвÅÊÇϵͳÕæʵʹÓõÄÄÚ´æ¡£Èç¹û·¢ÏÖPHP-CGI°ÑÄãµÄÄÚ´æÕ¼ÂúÁ˿ɲ»Òª¾ª»ÅŶ¡£
Page cacheºÍbuffer cacheÒ»Ö±ÒÔÀ´ÊÇÁ½¸ö±È½ÏÈÝÒ×»ìÏýµÄ¸ÅÄÔÚÍøÉÏÒ²ÓкܶàÈËÔÚÕù±çºÍ²ÂÏëÕâÁ½¸öcacheµ½µ×ÓÐʲôÇø±ð£¬ÌÖÂÛµ½×îºóҲһֱûÓÐÒ»¸öͳһºÍÕýÈ·µÄ½áÂÛ£¬ÔÚÎÒ¹¤×÷µÄÕâÒ»¶Îʱ¼ä£¬page cacheºÍbuffer cacheµÄ¸ÅÄîÔø¾À§ÈŹýÎÒ£¬µ«ÊÇ×Ðϸ·ÖÎöһϣ¬ÕâÁ½¸ö¸ÅÄîʵ¼ÊÉϷdz£µÄÇåÎú¡£Èç¹ûÄܹ»Á˽⵽ÕâÁ½¸öcacheµÄ±¾ÖÊ£¬ÄÇôÎÒÃÇÔÚ·ÖÎöioÎÊÌâµÄʱºò¿ÉÄÜ»á¸ü¼ÓµÃÐÄÓ¦ÊÖ¡£
Page cacheʵ¼ÊÉÏÊÇÕë¶ÔÎļþϵͳµÄ£¬ÊÇÎļþµÄ»º´æ£¬ÔÚÎļþ²ãÃæÉϵÄÊý¾Ý»á»º´æµ½page cache¡£ÎļþµÄÂß¼²ãÐèÒªÓ³É䵽ʵ¼ÊµÄÎïÀí´ÅÅÌ£¬ÕâÖÖÓ³Éä¹ØϵÓÉÎļþϵͳÀ´Íê³É¡£µ±page cacheµÄÊý¾ÝÐèҪˢÐÂʱ£¬page cacheÖеÄÊý¾Ý½»¸øbuffer cache£¬µ«ÊÇÕâÖÖ´¦ÀíÔÚ2.6°æ±¾µÄÄÚºËÖ®ºó¾Í±äµÄºÜ¼òµ¥ÁË£¬Ã»ÓÐÕæÕýÒâÒåÉϵÄcache²Ù×÷¡£
Buffer cacheÊÇÕë¶Ô´ÅÅÌ¿éµÄ»º´æ£¬Ò²¾ÍÊÇÔÚûÓÐÎļþϵͳµÄÇé¿öÏ£¬Ö±½Ó¶Ô´ÅÅ̽øÐвÙ×÷µÄÊý¾Ý»á»º´æµ½buffer cacheÖУ¬ÀýÈ磬ÎļþϵͳµÄÔªÊý¾Ý¶¼»á»º´æµ½buffer cacheÖС£
¼òµ¥ËµÀ´£¬page cacheÓÃÀ´»º´æÎļþÊý¾Ý£¬buffer cacheÓÃÀ´»º´æ´ÅÅÌÊý¾Ý¡£ÔÚÓÐÎļþϵͳµÄÇé¿öÏ£¬¶ÔÎļþ²Ù×÷£¬ÄÇôÊý¾Ý»á»º´æµ½page cache£¬Èç¹ûÖ±½Ó²ÉÓÃddµÈ¹¤¾ß¶Ô´ÅÅ̽øÐжÁд£¬ÄÇôÊý¾Ý»á»º´æµ½buffer cache¡£
²¹³äÒ»µã£¬ÔÚÎļþϵͳ²ãÿ¸öÉ豸¶¼»á·ÖÅäÒ»¸ödef_blk_opsµÄÎļþ²Ù×÷·½·¨£¬ÕâÊÇÉ豸µÄ²Ù×÷·½·¨£¬ÔÚÿ¸öÉ豸µÄinodeÏÂÃæ»á´æÔÚÒ»¸ö radix tree£¬Õâ¸öradix treeÏÂÃ潫»á·ÅÖûº´æÊý¾ÝµÄpageÒ³¡£Õâ¸öpageµÄÊýÁ¿½«»áÔÚtop³ÌÐòµÄbufferÒ»À¸ÖÐÏÔʾ¡£Èç¹ûÉ豸×öÁËÎļþϵͳ£¬ÄÇô»áÉú³ÉÒ»¸ö inode£¬Õâ¸öinode»á·ÖÅäext3_opsÖ®ÀàµÄ²Ù×÷·½·¨£¬ÕâЩ·½·¨ÊÇÎļþϵͳµÄ·½·¨£¬ÔÚÕâ¸öinodeÏÂÃæͬÑù´æÔÚÒ»¸öradix tree£¬ÕâÀï»á»º´æÎļþµÄpageÒ³£¬»º´æÒ³µÄÊýÁ¿ÔÚtop³ÌÐòµÄcacheÒ»À¸½øÐÐͳ¼Æ¡£´ÓÉÏÃæµÄ·ÖÎö¿ÉÒÔ¿´³ö£¬2.6ÄÚºËÖеÄbuffer cacheºÍpage cacheÔÚ´¦ÀíÉÏÊDZ£³ÖÒ»Öµģ¬µ«ÊÇ´æÔÚ¸ÅÄîÉϵIJî±ð£¬page cacheÕë¶ÔÎļþµÄcache£¬bufferÊÇÕë¶Ô´ÅÅÌ¿éÊý¾ÝµÄcache£¬½ö´Ë¶øÒÑ¡£
ÏÖÔÚ²»¶¼ÊÇÖ»ÓÐpage cacheÁËÂ𣿠buffer pagesÆäʵҲÊÇpage cacheÀïÃæµÄÒ³¡£Ö»ÊǶàÁËÒ»²ã³éÏó£¬Í¨¹ýbuffer_headÀ´½øÐÐһЩ·ÃÎʹÜÀí¡£
¶Ô,´ÓLinuxË㷨ʵÏֵĽǶȣ¬page cacheºÍbuffer cacheÄ¿Ç°ÊÇÒ»ÑùµÄ£¬µ«ÊÇ´Ó¹¦ÄܳéÏóºÍ¾ßÌåÓ¦ÓÃÀ´½²£¬ÕâÁ½Õ
Ïà¹ØÎĵµ£º
Link from: http://www.faqs.org/docs/Linux-mini/C++-dlopen.html
//1. == main.cpp =============================================
// How to build?
// g++ -o main main.cpp -ldl
//=======================================================
#include <iostream>
#include <dlfcn.h>
int main() { ......
¼òµ¥½âÊÍÒ»ÏÂipcsÃüÁîºÍipcrmÃüÁî¡£
È¡µÃipcÐÅÏ¢£º
ipcs [-m|-q|-s]
-m Êä³öÓйع²ÏíÄÚ´æ(shared memory)µÄÐÅÏ¢
-q Êä³öÓйØÐÅÏ¢¶ÓÁÐ(message queue)µÄÐÅÏ¢
-s Êä³öÓйؓÕÚ¶ÏÆ÷”(semaphore)µÄÐÅÏ¢
%ipcs -m
ɾ³ýipc
ipcrm -m|-q|-s shm_id
%ipcrm -m 105
ÀýÈ磬ÎÒÃÇÔÚÒÔ0x12345678ΪKEY´´½¨ÁËÒ»¸ö¹ ......
¡¡1 ÒýÑÔ
¡¡¡¡Linux²Ù×÷ϵͳÒò¾ßÓÐÔ´´úÂ빫¿ª¡¢±ãÓڲüõ¡¢Óй㷺µÄ´¦ÀíÆ÷Ö§³ÖµÈÓŵ㣬³ÉΪµ±Ç°Ç¶ÈëʽϵͳµÄÈÈÃÅÑ¡Ôñ¡£»ùÓÚI2C×ÜÏߵļüÅÌÀ©Õ¹É豸Ö÷ÒªÓÃÓÚÂú×ãǶÈëʽÉ豸ÖжԶఴ¼üµÄÐèÇó£¬Çý¶¯³ÌÐòÔÚϵͳÆô¶¯Ê±¶ÔÓ²¼þ½øÐгõʼ»¯¡£ÔÚϵͳÆô¶¯ºóʵÏÖÓ²¼þºÍÓ¦ÓóÌÐòÖ®¼äµÄÊý¾Ý½»»¥¡£Õë¶ÔS3C2410΢´¦ÀíÆ÷ºÍ¼üÅÌɨÃè¹ÜÀíÆ÷¼þ£¬É ......
¡¾51CTO¾«Ñ¡ÒëÎÄ¡¿¶ÔÓÚLinux¹ÜÀíÔ±À´Ëµ£¬Óкܶà·Ç³£ÓÐÓõŤ¾ß¿É¹©Ñ¡Ôñ¡£ÔÚÕâÀÎÒÖ»ÊÇÁоٳöÆäÖÐ5¸ö£¬Linux¹ÜÀíÔ±ÈÕ³£²Ù×÷¶¼ÒªÓõ½µÄ¹¤¾ß¡£ÎÒÈÏΪ£¬¹¦ÄÜ×îÇ¿µÄ¹¤¾ß¿ÉÄܲ¢²»ÊʺÏÄãµÄʹÓÃÇé¿ö£¬¶øÇÒ¾ø¶ÔÓÐЩ¹¤¾ßÎÒ»¹ÍüÁË°ÑËüÃÇͳ¼Æ½øÀ´£¬Èç¹ûÊÇÕâÑùµÄ»°£¬ÎÒ¿ÒÇë´ó¼Ò°ÑÎÒûÊÕ¼µÄ¹¤¾ßÔÚÆÀÂÛÖÐд³öÀ´¡£ÁíÍ⣬±¾ÎÄÖÐÌáµ½µÄ¹¤¾ß ......