linux ÄÚ´æ¹ÜÀíÖ®»ù´¡Æª
Ò».LinuxÄÚ´æ¹ÜÀíµÄһЩ»ù±¾¸ÅÄî
ÄÚ´æ¿Õ¼ä£º
¾ø´ó¶àÊýµÄǶÈëʽϵͳµÄϵͳÄÚ´æºÍI/OµØÖ·¿Õ¼äÊÇͳһ±àÖ·µÄ£¬ÄÚ´æºÍI/OµØÖ·¿Õ¼ä¹²Ïí0x00000000~0xFFFFFFFF¹²4GBµØÖ·¿Õ¼ä·¶Î§£¬Õâ4GBµÄµØÖ·¿Õ¼ä·¶Î§°üÀ¨ÒÔϼ¸ÖÖ´æ´¢¿Õ¼ä£ºÉ豸¿Õ¼ä¡¢ÄÚ²¿¸ßËÙSRAM¿Õ¼ä¡¢ÄÚ²¿mini cache¿Õ¼ä¡¢µÍ¶ËÖжÏÏòÁ¿¿Õ¼ä¡¢¸ß¶ËÖжÏÏòÁ¿¿Õ¼ä¡¢RAMÄÚ´æ¿Õ¼ä£¨ÏµÍ³µÄÄÚ´æ¿Õ¼ä£©¡¢ROM¿Õ¼ä¡£
ÄÚ´æÒ³£¨PAGE£©£º
LinuxÒ»°ãÒÔҳΪµ¥Î»¹ÜÀíÎïÀíÄÚ´æµÄ£¬Ò»°ãÒ³µÄ´óСÎÊ4kb£¬¶ÔÓÚÒ³¿ÉÒÔ×öµ½¶àС»¹ÊǺʹ¦ÀíÆ÷Óйصġ£
ÄÚ´æÇø¶Î£¨bank£©£º
Ò»¸öBANK±íʾһ¿éÁ¬ÐøµÄÄÚ´æ¿Õ¼ä£¬¶ÔÓ¦ÓÚ´¦ÀíÆ÷µÄramƬѡ¹Ü½ÅÁ´½ÓµÄramµÄÄÚ´æ¿Õ¼ä¡£¶ÔÓÚRAMÔÚϵͳµÄÆðʼµØÖ·ºÍ´óС¿ÉÒÔͨ¹ý´¦ÀíÆ÷¼Ä´æÆ÷ÉèÖõģ¬Èç¹û´¦ÀíÆ÷ËùÁ´½ÓËùÓÐRAMоƬ¶¼ÉèÖÃΪÊ×βµØÖ·ÏàÁ¬µÄ»°£¬Linux¾Í¿ÉÒÔÓÃÒ»¸öBANKÀ´±íʾÕâÆ¬ÄÚ´æ¿Õ¼ä¡£
ÄÚ´æ½Úµã£¨node£©£º
Æäʵ¾ÍÊÇÒ»¸ö»òÕß¶à¸öBANK×é³ÉµÄ¼¯ºÏ£¬¶ÔÓÚÉÏÊöµÄ1¸öBANKµÄ»°£¬¾ÍÊÇÖ»ÓÐÒ»¸öÄÚ´æ½ÚµãÁË¡£Èç¹ûRAMµÄÆðʼµØÖ·Êǹ̶¨µÄ£¬²»¿ÉÉèÖõϰ£¬¾ÍÓпÉÄÜÊÇÄÚ´æ¿Õ¼ä²»Á¬Ðø£¬ÕâÑù¾ÍÐèÒª¼¸¸öBANKÁË¡£Èç¹û¶ÔLinuxÅäÖÃÁËCONFIG_DISCONTIGMEMµÄ»°£¬¼´¿ÉÒÔÿ¸öBANK¿ÉÒÔ¶ÔÓ¦²»Í¬µÄÄÚ´æ½Úµã£¬»òÊǶà¸öBANK¶ÔÓ¦Ò»¸öÄÚ´æ½Úµã£¬²»ÅäÖõϰ£¬È«²¿¶¼¶ÔÓ¦ÄÚ´æ½Úµã0¡£µ±¶à¸öBANK¶ÔÓ¦Ò»¸öÄÚ´æ½Úµãʱ£¬ÔÚÉÏÊöµÄÇé¿ö¿ÉÄÜ»áÓÐÄÚ´æ¿×¶´£¬ÕâÑùÔÚÆô¶¯µÄʱºò¾ÍÒª²úÉúҳ֡λÂëºÍstruct pageÊý¾Ý½á¹¹¡£ÕâÑù»áÓ°Ï쵽ϵͳÔÚÆô¶¯µÄʱºò»ñµÃ×î´óÁ¬ÐøÎïÀíÄڴ棬µ«ÊÇÆô¶¯ºó¾Í²»»áÓÐÈκÎÓ°Ï죬ÒòΪmem_init()»á°ÑÕâЩҳ֡λÂëºÍstruct pageËùÕ¼µÄ¿Õ¼äÊͷŵô¡£
ÄÚ´æÒ³Çø£¨zone£©£º
ÿ¸öÄÚ´æ½Úµã¿É·ÖΪ3¸öÄÚ´æÒ³Çø£¬¼´DAMÒ³Çø¡¢NormalÒ³ÇøºÍHighMemÒ³Çø¡£Ã¿¸öÒ³ÇøµÄº¬ÒåÈçÏ£º
DAMÒ³Çø£º¿ÉÒÔ½øÐÐDAM²Ù×÷µÄRAMÄÚ´æÇøÓò¡£
NormalÒ³Çø£º²»¿ÉÒÔ½øÐÐDAM²Ù×÷µÄRAMÄÚ´æÇøÓò¡£
&
Ïà¹ØÎĵµ£º
/*
* ¸ÃÎļþʵÏÖϵͳµ÷ÓÃread£¬writeºÍlseek¡£
*/
/*
* linux/fs/read_write.c
*
* (C) 1991 Linus Torvalds
*/
#include <sys/stat.h>
#include <errno.h>
#include <sys/types.h>
#include <linux/kernel.h>
#include < ......
/*
* ¸ÃÎļþÖеÄÁ½¸öº¯Êýread_pipeºÍwrite_pipeÊÇÉϲ㺯Êý
* readºÍwriteµÄµ×²ãʵÏÖ
*/
/*
* linux/fs/pipe.c
*
* (C) 1991 Linus Torvalds
*/
#include <signal.h>
#include <linux/sched.h>
// ÄÚ´æ¹ÜÀíÍ·Îļþ¡£º¬ÓÐÒ³Ãæ´óС¶¨Òåº ......
1£¬ÍøÂçÕûÌåÁ÷Á¿²é¿´
ifconfig -s
cat /proc/net/dev
sar -n DEV/EDEV interval(ʱ¼ä¸ô) count(´ÎÊý)
nload -m [-d interface]
2£¬Ïêϸ²é¿´ÍøÂçÁ÷Á¿£¬±ÈÈç²é¿´Ä³Ò»¸öip/port£¬Ä³Ò»¸öÐÒé
iptraf£¬Îı¾´°¿Ú½çÃæ
ntop£¬webÍøÒ³½çÃæ ......
¹Ø×¢Android£¬¹Ø×¢Google ǰÈÕLinux Kernelά»¤ÕßGreg Kroah-Hartman°ÑAndroid´úÂë´ÓLinux Kernel´úÂë¿âÖÐɾ³ýµÄÏûÏ¢ÒýÀ´Á˹㷺¹Ø×¢£¬¿ª·¢½çÒÑÓкܶàÆÀÂÛ¶Ô´ËʽøÐÐÌÖÂÛ¡£ifanr½ñÈÕÌṩÁ˵±ÌìGregÉùÃ÷µÄÈ«ÒëÎÄ£¬ÏÂÃæ¾ÍÈÃÎÒÃÇÀ´¿´¿´¡£ 2.6.33 °æÄÚºËÒÆ³ýÁËAndroidµÄ´úÂë¡£ºÜ¶àÈ˲»¶ÏµØÎÊÎÒ·¢ÉúÁËʲô£¬¶ÔÓÚAnd ......