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

Linux ÄÚ´æ°ó¶¨ÔÚ¾Ö²¿´æ´¢Æ÷µÄʵÏÖ


3.2.1 Linux ÄÚ´æ°ó¶¨ÔÚ¾Ö²¿´æ´¢Æ÷µÄʵÏÖ×ÜÌå²½Öè
×ÜÌå²½Ö裺
l         ²ÉÓ÷½°¸Èý£¬ÔÚÔÚÔ­À´·ÖÎöµÄ»ù´¡ÉÏ£¬ÒÔ¼°ÒÑÖªLinuxϵͳÄÚ´æµÄ³õʼ»¯µÄÇé¿ö£¬¶ÔÄں˴úÂë½øÐÐÐ޸ģ¬Ö÷Òª°üÀ¨È·¶¨ÐÂÇøµÄ·¶Î§£¬½¨Á¢ÐÂÇø£¬ÖØжԷÖÅäÄÚ´æµÄ·ÖÅä»úÖƽøÐÐÉèÖá£
l         ÐÂÇø»®·Öºó£¬¶Ôн¨µÄÁ½¸öÇø½øÐÐÒ»¶¨³Ì¶ÈÉϵÄÑÓ³Ù£»
l         ½¨Á¢ÏµÍ³µ÷Óã¬ÏµÍ³µ÷Óý«ÌṩÓû§½øÐÐÊÖ¶¯ÉèÖ÷ÃÎÊ·½Ê½¡£
l         ¶ÔÄں˽øÐÐÅäÖ㬲¢½øÐÐÏà¹Øµ÷ʽ¡£
l         Óû§³ÌÐò½øÐÐ×îÖյIJâÊÔ£¬²¢ÑéÖ¤Ïà¹Ø½áÂÛ¡£
3.2.2 Linux Äں˰ó¶¨ÔÚ¾Ö²¿´æ´¢Æ÷´úÂëʵÏÖ
(Ò»)¡¢Ð޸ĴúÂ룺
1)       ÔÚinit/main.cÕâ¸öÎļþÖÐ,ÔÚÕâÒ»¶Î´úÂë
#ifdef CONFIG_X86_LOCAL_APIC
#include <asm/smp.h>
#endif
µÄÏÂÃæÔö¼ÓÕâ¶Î´úÂë:
unsigned long max_normal_low_pfn=0;
EXPORT_SYMBOL(max_normal_low_pfn); 
ÕâÀïʹÓÃEXPORT_SYMBOLÊÇÉùÃ÷max_normal_low_pfnÊÇÈ«¾Ö±äÁ¿£¬ËùÓеÄÎļþ¶¼¿ÉÒÔʹÓã¬ËüµÄÓô¦ÊÇΪÁ˱ê¼ÇÐÂÇøZONE_NORMAL_LOWµÄ×î´ó¿ÉÓõÄÒ³¿òºÅ¡£
 
2)       arch/x86/kernel/setup.cÕâ¸öÎļþ£º
l         ÔÚstruct boot_params boot_params;
#endifÖ®ºóÌí¼Ó£¬ÉùÃ÷¸Ã±äÁ¿ÒѾ­ÔÚ±ðµÄÎļþÓж¨ÒåÁË
extern unsigned long max_normal_low_pfn;
l         ÔÚsetup_arch()Õâ¸öº¯ÊýÖУ¬ÔÚfind_low_pfn_range()Õâ¸öÖ®ºó£¬Ôö¼ÓÕâÒ»¾ä£º
        max_normal_low_pfn = max_low_pfn/2;
        ¸Ã¾äÓÃÓÚ¼ÆËãÐÂÇø(ZONE_NORMAL_LOW)µÄ×î´ó¿ÉÓÃÒ³¿òºÅ¡£
3)       ÔÚarch/x86/mm/init_32.cÎļþ
l         ÔÚunsigned long max_low_pfn_mapped; unsigned long max_pfn_mapped;Ö®ºóÌí¼Óextern unsigned long max_normal_low_pfn;
l         ÔÚstatic void __init zone_sizes_init(void)Õâ¸öº¯ÊýÖÐÔö¼ÓÕâ¾ä´ú


Ïà¹ØÎĵµ£º

LinuxÄÚºËÅäÖÃÎĵµ(make menuconfig)

Ò»¡¢ÒýÑÔ£º
    ±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØͼ£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾­Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾­Ñ飨Õâ¸ö»¹µ ......

Linux C ʵÏÖÏ̳߳Ø

×î½ü×öµÄһЩ¹¤×÷ÐèÒªÓõ½Ï̳߳ؼ¼Êõ£¬Òò´Ë²Î¿¼ÁËһЩ×ÊÁϺÍÊé¼®£¬È硶0bug c/c++ÉÌÓù¤³ÌÖ®µÀ¡·¡£
Ϊ´ËÔÚlinuxƽ̨ÉÏÓô¿cдÁËÒ»¸öÏ̳߳صÄʵÏÖ¡£
ÔÚ´ËÁгöÁËÔ­´úÂë¡£
Ö÷ÒªÓõ½µÄÊý¾Ý½á¹¹ÓÐ
1.struct  thread_pool_t    // thread pool µÄʵÏÖ´úÂë
2.struct thread_pool_token_t  &nb ......

¼¸ÖÖLinux µÄ¿ª¹Ø»ú״̬½âÎö

ÔÚlinuxÏÂһЩ³£ÓõĹػú/ÖØÆôÃüÁîÓÐshutdown¡¢halt¡¢reboot¡¢¼°init£¬ËüÃǶ¼¿ÉÒÔ´ïµ½ÖØÆôϵͳµÄÄ¿µÄ£¬µ«Ã¿¸öÃüÁîµÄÄÚ²¿¹¤×÷¹ý³ÌÊDz»Í¬µÄ£¬Í¨¹ý±¾ÎĵĽéÉÜ£¬Ï£ÍûÄã¿ÉÒÔ¸ü¼ÓÁé»îµÄÔËÓø÷ÖֹػúÃüÁî¡£
¡¡¡¡ 1.shutdown
   shutdownÃüÁȫµØ½«ÏµÍ³¹Ø»ú¡£ ÓÐЩÓû§»áʹÓÃÖ±½Ó¶ÏµôµçÔ´µÄ·½Ê½À´¹Ø±Õlinux£¬ÕâÊÇÊ®·Ö ......

s3c2410 RTCÇý¶¯¿ò¼ÜlinuxÄÚºËÔ´Âë·ÖÎö

ʵÔÚÎÞÁÄÖоͽ«Ô­À´µÄһЩ¶«Î÷ÕûÀíÁËһϣ¬×Ô¼ºÊǸö¼ÇÐÔ²»ºÃµÄÈË£¬¸ô¶Ïʱ¼äÕûÀí×Ô¼º£¬Í¬Ê±Ò²Ï£Íû¿ÉÒÔ·½±ãËûÈË¡£
----------------------------------------------------------------------------------------------------------------------------------------
/**//*************************************************** ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ