LinuxÖеÄÄÚ´æ·ÖÅäºÍÊÍ·ÅÖ®free_bootmem()º¯Êý·ÖÎö
free_bootmem()Õâ¸öº¯ÊýÊÇϵͳÆô¶¯³õÆÚÄÚ´æÊͷŵĺËÐĺ¯Êý£¬ÎÒÃÇÀ´¿´¿´ËüµÄ´úÂë¡£
void __init free_bootmem (unsigned long addr, unsigned long size)//addrÊÇÒªÊͷŵÄÎïÀíÆðʼµØÖ·£¬sizeÊÇÒªÊͷſռäµÄ´óС¡£
{
free_bootmem_core(NODE_DATA(0)->bdata, addr, size);//Ö±½Ó´ÓÄÚ´ænode0ºÅ¿ªÊ¼ÊÍ·ÅÄÚ´æ¿Õ¼ä¡£
}//¿ÉÒÔ¿´³öÕæÕýµÄºËÐĺ¯ÊýÊÇfree_bootmem_core()Õâ¸öº¯Êý£¬Õâ¸ö²ÅÊǺËÐIJ¿·Ö¡£ÎÒÃÇÀ´¿´¿´ËüµÄ¾ßÌåÄÚÈݰɡ£
static void __init free_bootmem_core(bootmem_data_t *bdata, unsigned long addr, unsigned long size)
{
unsigned long i;
unsigned long start;
/*
* round down end of usable mem, partially free pages are
* considered reserved.
*/
unsigned long sidx;
unsigned long eidx = (addr + size - bdata->node_boot_start)/PAGE_SIZE;//¼ÆËã³öÒªÊͷſռäµÄ½áÊøÎ»ÖÃÏà¶ÔÓÚ¸ÃÄÚ´æ½ÚµãµÄÆðʼλÖÃµÄÆ«ÒÆÒ³Êý¡£
unsigned long end = (addr + size)/PAGE_SIZE;//Êͷſռä×îºóλÖõľø¶ÔÒ³ºÅ¡£
BUG_ON(!size);//Èç¹ûÊÍ·Å¿ÕÄڴ棬ϵͳ±ÀÀ£¡£
BUG_ON(end > bdata->node_low_pfn);//²»ÄÜÊͷų¬¹ý±¾½Úµã·¶Î§ÄÚµÄÄÚ´æ¿Õ¼ä£¬·ñÔòϵͳ±ÀÀ£¡£
if (addr < bdata->last_success)
bdata->last_success = addr;
/*
* Round up the beginning of the address.
*/
start = (addr + PAGE_SIZE-1) / PAGE_SIZE;//ÕâÀï¼ÆË㿪ʼµØÖ·µÄÈ«ÐÂÒ³£¬¼ÙÉèaddrÊÇÔÚ0~4kbµÄµØÖ··¶Î§µÄ»°£¬ÆäÊµÕæÕýÔÚ0ºÅÒ³µÄλÖ㬵«ÊÇÈç¹ûͨ¹ýÉÏÃæµÄÔËË㣬Çó³öÀ´µÄ¾ÍÊÇ1ºÅÒ³µÄλÖá£ÎªÊ²Ã´ÕâÑù×öÄØ£¿ÒòΪÈç¹ûÆðʼµØÖ·²»Êǰ´Ò³¶ÔÆëµÄ£¬Èç¹ûÖ±½ÓÊÍ·Å£¬¾Í»á°ÑÇ°Ãæ²»ÊôÓÚÕâ¸öÄÚ´ænodeµÄ¿Õ¼äÒ²ÊÍ·ÅÁË¡£
sidx = start - (bdata->node_boot_start/PAGE_SIZE);//Õâ¸ö¾ÍÊǼÆËãÐÂÒ³ºÍÔÀ´µÄÆðʼµØÖ·ËùÔÚÒ³µÄÆ«ÒÆÒ³Êý¡£
 
Ïà¹ØÎĵµ£º
LinuxÕýÔò±í´ïʽ¼¼ÊõÖ¸ÄÏ
µ¼¶Á£º±¾ÎĽéÉÜLinuxÕýÔò±í´ïʽ¼¼Êõ¡£°üÀ¨Ê¹Óò»Í¬µÄ¹¤¾ßÈçgrep¡¢awkÒÔ¼°sedÈ¥²éÕÒ°üº¬Ìض¨Îı¾´®µÄÎļþ¡£
¹Ø¼ü´Ê£ºLinuxÕýÔò±í´ïʽ grep awk sed
ÕýÔÚ¼ÓÔØÊý¾Ý...
¡¾TechTargetÖйúÔ´´¡¿×÷Ϊһ¸öLinux¹ÜÀíÔ±£¬ÄúÐèÒª¶ÔÎı¾Îļþ½øÐд¦Àí¡£Äú¿ÉÒÔʹÓò»Í¬µÄ¹¤¾ßÈçgrep¡¢awkÒÔ¼°sedÈ¥ ......
Îå´ó·Ç³£¼ûLinuxÃüÁî
2010-1-29
µ¼¶Á£º±¾ÎĽéÉÜLinux²»³£¼ûµÄÎå¸öÃüÁî¡£°üÀ¨logsave¡¢diff3ºÍpstreeµÈ¡£
¹Ø¼ü´Ê£ºLinux logsave diff3 pstree
ÕýÔÚ¼ÓÔØÊý¾Ý...
¡¾TechTargetÖйúÔ´´¡¿LinuxÓдóÁ¿µÄÃüÁîÐй¤¾ß£¬´ÓÿÌì¶¼»áʹÓõÄls¡¢cdÒÔ¼°psÕâЩ¹¤¾ß£¬µ½Äú¿ÉÄÜ»¹Ã»ÓÐʹÓùý£¬»òÕßÉõÖÁûÓÐÌý˵¹ýµÄ²»³ ......
modinfo(module infomation)
¹¦ÄÜ˵Ã÷£ºÏÔʾkernelÄ£¿éµÄÐÅÏ¢¡£
Óï¡¡¡¡·¨£ºmodinfo [-adhpV][Ä£¿éÎļþ]
²¹³ä˵Ã÷£ºmodinfo»áÏÔʾkernelÄ£¿éµÄ¶ÔÏóÎļþ£¬ÒÔÏÔʾ¸ÃÄ£¿éµÄÏà¹ØÐÅÏ¢¡£
²Î¡¡¡¡Êý£º
-a»ò--author ¡¡ÏÔʾģ¿é¿ª·¢ÈËÔ±¡£
-d»ò--description ¡¡ÏÔʾģ¿éµÄ˵Ã÷¡£& ......
Q. How do I install Languages in Linux after installation? I don’t have any language specific support installed but need to install the same. I’m using both RHEL 5 and CentOS 5.
A. Yellow dog Updater, Modified, a package manager for RPM-compatible Linux systems such as Cento ......
ת×Ô£º http://blog.csdn.net/kongqz/archive/2009/05/15/4184415.aspx
¾ÍÊÇÔÚÒÑÓеÄÊý¾Ý¿âʵÀýÉÏ´´½¨Ò»¸öеÄÕʺţ¬·ÃÎÊһЩеıí
²Ù×÷²½ÖèÈçÏ£º
1¡¢µÇ¼linux£¬ÒÔoracleÓû§µÇ¼£¨Èç¹ûÊÇrootÓû§µÇ¼µÄ£¬µÇ¼ºóÓà su - oracleÃüÁîÇл»³ÉoracleÓû§£©
2¡¢ÒÔsysdba·½Ê½À´´ò¿ªsqlplus£¬ÃüÁîÈçÏ£º s ......