Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxÖеÄÄÚ´æ·ÖÅäºÍÊÍ·ÅÖ®__free_pages()º¯Êý·ÖÎö

  ¼ÇµÃÎÒÃÇÔÚÉÏÆªÎÄÕÂmem_init()·ÖÎöÖÐÌáµ½__free_page()º¯ÊýÂð£¿ÎÒÃÇÏÖÔÚÀ´ÍêÉÆËü¡£ËüµÄµ÷Óùý³ÌÊÇÕâÑùµÄ£ºmem_init()->free_all_bootmem_node():ÎÒÃÇÖªµÀÕâ¸öº¯ÊýÊÇͳ¼ÆÒ»¹²ÊÍ·ÅÁ˶àÉÙ¿ÕÏÐÒ³¡£->free_all_bootmem_core()¾ÍÊÇÔÚÕâ¸öº¯ÊýÀïÃæÏȺó¶à´Îµ÷ÓÃ__free_pages()º¯Êý¡£Ä¿µÄ¾ÍÊÇΪÁËÊÍ·Åÿ¸öÄÚ´ænodeÀïÃæÎÞÓõÄÄÚ´æ¿×¶´Ò³¡£ÎÒÃÇÏÖÔÚ¾ÍÀ´ºÃºÃ̽ÌÖÕâ¸öº¯Êý¡£
  fastcall void __free_pages(struct page *page, unsigned int order)
{
   if (!PageReserved(page) && put_page_testzero(page)) {
       if (order == 0)
          free_hot_page(page);//ÎÒÃÇÏÈÀ´¿´¿´Õâ¸öº¯Êý¡£
   else
      __free_pages_ok(page, order);//ÎÒÃÇ×îºó²ÅÀ´ÌÖÂÛÕâ¸öº¯Êý¡£
   }
}
 
  void fastcall free_hot_page(struct page *page)
{
   free_hot_cold_page(page, 0);
}
  static void fastcall free_hot_cold_page(struct page *page, int cold)//Èç¹ûcoldÊÇ0µÄ»°£¬±íʾҪ°ÑpageËùÖ¸ÏòÄÚ´æÒ³Êͷŵ½
                                                                  //ÆäËùÔÚÄÚ´æÒ³ÇøÖе±Ç°´¦ÀíÆ÷µÄ“ÈÈÇø”ÄÚ´æÖУ¬Èç¹ûΪ1µÄ»°£¬¾ÍÊͷŵ½ÕâÒ³ËùÔÚÒ³Çø
                                                              //Öе±Ç°´¦ÀíÆ÷µÄ“ÀäÇø”¸ßËÙ»º´æÄÚ´æÖС£ÔÚÕâÀï¿Ï¶¨Óв»ÉÙÈ˲»Ì«Á˽âlinuxÔÚÆô¶¯ºóÊÇ
     &nbs


Ïà¹ØÎĵµ£º

linux yum°²×°mysqlºóҪעÒâµÄһЩ³õʼ»¯ÎÊÌâ

zz linux yum°²×°mysqlºóҪעÒâµÄһЩ³õʼ»¯ÎÊÌâ
ÎҵķþÎñÆ÷×°µÄÊÇcentos 5.3,ÓÉÓÚ×ʼ°²×°×öÁËÏêϸµÄ¼Ç¼,ËùÒÔÕû¸ö¹ý³ÌÒ²ÊÇÇá³µÊì·,һ·yumÏÂÀ´£¬¾Í¸ã¶¨ÁË£¬È»ºó¾ÍÊÇÊý¾Ý¿â¡¢ÍøÕ¾µÄ°á¼Ò£¬ÇáËɸ㶨~
¿ÉÊǽñÌìÔÚ¼Ò¿´ÁËϹ«Ë¾µÄÍøÕ¾£¬ÎÊÌâ³öÀ´ÁË~ ÓÐЩ²úÆ·µã»÷²é¿´ÏêϸÐÅÏ¢µÄʱºò£¬ÕÒ²»µ½ÍøÒ³~¾­¹ýÒ»·¬Ë¼¿¼£¬·¢ÏÖÊÇmysql ......

LinuxͼÐλ¯Àú³Ì

LinuxͼÐλ¯Àú³Ì
    ×¢£º´Ë¶ÎÎÄÕÂ×ÛºÏÁËÖÚ¶à×ÊÁÏ£¬Ö÷ÒªÒýÓøöÈ˵çÄÔµÄÎÄÕÂ
   
    ̸ÆðOPIE£¬¾Í²»Äܲ»Ì¸Qt£¬È»¶øÒª¶ÔQtÓиöÀ´ÁúÈ¥ÂöµÄÈÏʶ£¬ÐèÒª´ÓLinux
ͼÐλ¯ËµÆð¡£ÈÃÎÒÃǻعËÏÂLinuxͼÐλ¯½çÃæ·¢Õ¹µÄÀúÊ·¡£
    Linuxʵ¼ÊÉÏÊÇÒÔUNIXΪģ°åµÄ£¬Ëü¼Ì ......

linuxÎļþϵͳÌåϵ½á¹¹ ºÍ ÐéÄâÎļþϵͳ(VFS)

ͼ 1. Linux Îļþϵͳ×é¼þµÄÌåϵ½á¹¹
 
Óû§¿Õ¼ä°üº¬Ò»Ð©Ó¦ÓóÌÐò£¨ÀýÈ磬ÎļþϵͳµÄʹÓÃÕߣ©ºÍ GNU C ¿â£¨glibc£©£¬ËüÃÇΪÎļþϵͳµ÷Ó㨴ò¿ª¡¢¶ÁÈ¡¡¢Ð´ºÍ¹Ø±Õ£©ÌṩÓû§½Ó¿Ú¡£ÏµÍ³µ÷ÓýӿڵÄ×÷ÓþÍÏñÊǽ»»»Æ÷£¬Ëü½«ÏµÍ³µ÷ÓôÓÓû§¿Õ¼ä·¢Ë͵½Äں˿ռäÖеÄÊʵ±¶Ëµã¡£
VFS ÊǵײãÎļþϵͳµÄÖ÷Òª½Ó¿Ú¡£Õâ¸ö×é¼þµ¼³öÒ» ......

linuxÃæÊÔ´óÈ«

linuxÃæÊÔ´óÈ«
Ò»£®Ìî¿ÕÌ⣺
1. ÔÚLinuxϵͳÖУ¬ÒÔ Îļþ ·½Ê½·ÃÎÊÉ豸 ¡£
2. LinuxÄÚºËÒýµ¼Ê±£¬´ÓÎļþ /etc/fstab ÖжÁȡҪ¼ÓÔØµÄÎļþϵͳ¡£
3. LinuxÎļþϵͳÖÐÿ¸öÎļþÓà i½Úµã À´±êʶ¡£
4. È«²¿´ÅÅÌ¿éÓÉËĸö²¿·Ö×é³É£¬·Ö±ðΪÒýµ¼¿é ¡¢×¨ÓÃ¿é ¡¢ i½Úµã±í¿é ºÍÊý¾Ý´æ´¢¿é¡£
5. Á´½Ó·ÖΪ£º Ó²Á´½Ó ºÍ ·ûºÅÁ´½Ó ¡ ......

LinuxÄں˱àÂëʰ½õ

1.Ò»ÖÖ¶¨Ò庯ÊýÖ¸ÕëµÄ·½·¨
<linux/proc_fs.h>
typedef int (read_proc_t)(char *page, char **start, off_t offset, int count, int *eof, void *data);
read_proc_t *proc_read;
    ÕâÖÖ¶¨Òå·½·¨ÓÐÒ»¸öÓÅÊÆ¾ÍÊÇ£¬¼´Ê¹ÄãûÓп´µ½read_proc_tµÄ¶¨Ò壬ҲÄܹ»Çå³þµÄÖªµÀproc_readÊÇÒ»¸öÖ¸Õ룬ÈçÏÂÃæ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ