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

linux¸ùÎļþϵͳ¹ÒÔØ

ÓÉbootload½øÈëlinuxºóÓÉhead.s½øÈëÁËstart_kernelÁË.
asmlinkage void __init start_kernel(void)
{
       char * command_line;
       extern struct kernel_param __start___param[], __stop___param[];
       ………………..
       setup_arch(&command_line);
       ………….
       ………..
       vfs_caches_init(num_physpages); ………….     
 
…………...
       rest_init();
}
 
ÖØÒªº¯Êý½âÊÍ
 
1.Setup_archÊǽâÊÍbootloader´«¹ýÀ´µÄ²ÎÊý£¬²¢¸½Ïà¹Ø²ÎÊý¡£
 
void __init setup_arch(char **cmdline_p)
{
       struct tag *tags = (struct tag *)&init_tags;
       struct machine_desc *mdesc;
       char *from = default_command_line;
 
       setup_processor();
       mdesc = setup_machine(machine_arch_type);
       machine_name = mdesc->name;
 
       if (mdesc->soft_reboot)
              reboot_setup("s");
 
       if (mdesc->boot_params)
              tags = phys_to_virt(mdesc->boot_params);
 
       /*
        * If we have the old style parameters, convert them to
        * a tag list.
        */
 &nb


Ïà¹ØÎĵµ£º

linuxÌõ¼þ±äÁ¿Àý³Ì

#include
#include
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
void *thread1(void *);
void *thread2(void *);
int i=1;
main(void)
{
pthread_t t_a;
pthread_t t_b;
pthread_create(&t_a,NULL,thread1,(void *)NULL) ......

Linuxϳ£ÓÃCÓïÑÔ×Ö·û´®²Ù×÷º¯Êý

stroul£¬
strdup
snprintf()
atio
 
CÖг£ÓÃ×Ö·û´®²Ù×÷º¯Êý
#include <string.h>
 
size_t strlen(const char *s)   ²âÁ¿×Ö·û´®³¤¶ÈsµÄʵ¼Ê³¤¶È¡£
ÀýÈçs[20]="abc",ÄÇôstrlen(s)µÄ½á¹ûÊÇ3£¬¶ø²»ÊÇ20.Õâ¾ÍÊÇʵ¼Ê³¤¶È
 
char *strcat(const char *s1, const *s2)  ......

linux 0.11 ÄÚºËѧϰ char_dev.c


/*
 *  linux/fs/char_dev.c
 *
 *  (C) 1991  Linus Torvalds
 */
#include <errno.h>
#include <sys/types.h> // ¶¨ÒåÁË»ù±¾µÄϵͳÊý¾ÝÀàÐÍ
#include <linux/sched.h>
#include <linux/kernel.h> // º¬ÓÐһЩÄں˳£Óú¯ÊýµÄÔ­Ðζ¨Òå
#include < ......

linux Èí¼þµÄÐÔÄÜ·ÖÎö¹¤¾ß

ÔÚlinuxÉÏ£¬jprofiler¿ÉÒÔ·ÖÎöjavaµÄÈí¼þϵͳ£¬oprofile¿ÉÒÔ·ÖÎöCµÄÈí¼þϵͳ¡£
oprofile¿ÉÒÔ˵ÊÇÒ»¸ö¹¤¾ß¼¯£¬°üº¬£º
ophelp£¬
opcontrol£¬
agent libraries£¬
opreport£¬
opannotate£¬
opgprof£¬
oparchive£¬
opimport¡£
³ ......

Linux KernelÇýÖðAndroid£ºµ½µ×·¢ÉúÁËʲô

¹Ø×¢Android£¬¹Ø×¢Google   ǰÈÕLinux Kernelά»¤ÕßGreg Kroah-Hartman°ÑAndroid´úÂë´ÓLinux Kernel´úÂë¿âÖÐɾ³ýµÄÏûÏ¢ÒýÀ´Á˹㷺¹Ø×¢£¬¿ª·¢½çÒÑÓкܶàÆÀÂÛ¶Ô´ËʽøÐÐÌÖÂÛ¡£ifanr½ñÈÕÌṩÁ˵±ÌìGregÉùÃ÷µÄÈ«ÒëÎÄ£¬ÏÂÃæ¾ÍÈÃÎÒÃÇÀ´¿´¿´¡£ 2.6.33 °æÄÚºËÒÆ³ýÁËAndroidµÄ´úÂë¡£ºÜ¶àÈ˲»¶ÏµØÎÊÎÒ·¢ÉúÁËʲô£¬¶ÔÓÚAnd ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ