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

һЩlinux ÃüÁî

#include<unistd.h>
¡¡¡¡¶¨Ò庯Êý£º
¡¡¡¡int execvp(const char *file ,char * const argv []);
¡¡¡¡º¯Êý˵Ã÷£º
¡¡¡¡execvp()»á´ÓPATH »·¾³±äÁ¿ËùÖ¸µÄĿ¼ÖвéÕÒ·ûºÏ²ÎÊýfile µÄÎļþÃû£¬ÕÒµ½ºó±ãÖ´ÐиÃÎļþ£¬È»ºó½«µÚ¶þ¸ö²ÎÊýargv´«¸ø¸ÃÓûÖ´ÐеÄÎļþ¡£
¡¡¡¡·µ»ØÖµ£º
¡¡¡¡Èç¹ûÖ´Ðгɹ¦Ôòº¯Êý²»»á·µ»Ø£¬Ö´ÐÐʧ°ÜÔòÖ±½Ó·µ»Ø-1£¬Ê§°ÜÔ­Òò´æÓÚerrnoÖÐ
#include<unistd.h>
void main()
{
   char * argv[ ] ={"ls","-al",0};
    printf("Hello\n");
   execvp("ls",argv);
   printf("bye\n");
}
²Â²ÂÔËÐнá¹û£¬ºÇºÇ£¬×¢Òâ½ø³Ì±»¸Ä±ä¡£
////////////////////////////////////////////////
#include <unistd.h>
¡¡¡¡º¯Êý¶¨Ò壺
¡¡¡¡int fork( void );
¡¡¡¡·µ»ØÖµ£º
¡¡¡¡×Ó½ø³ÌÖзµ»Ø0£¬¸¸½ø³ÌÖзµ»Ø×Ó½ø³ÌID£¬³ö´í·µ»Ø-1
#include <unistd.h>
#include <stdio.h>
int main(int argc, void ** argv )
{
 int pid = fork();
 if(pid == -1 ) {
    printf("error!");
 } else if( pid == 0 ) {
    printf("This is the child process!, myid is %d\n", getpid());
 } else {
    printf("This is the parent process! child process id = %d", pid);
 }
 return 0;
}
#include <sys/types.h>
#include <sys/wait.h>
µÈ´ý½ø³Ì½áÊø
¡¡¡¡º¯Êý¶¨Ò壺
¡¡¡¡pid_t wait( int *statsptr);
  
    ²ÎÊý
    ×Ó½ø³ÌµÄ·µ»Ø½á¹û
¡¡¡¡·µ»ØÖµ£º
¡¡¡¡ ±»½áÊøµÄ½ø³ÌµÄid
µ÷ÓóÌÐòÄܽ«Ò»¸ö×Ö·û´®Àà±ð ´«¸ø гÌÐòµÃmainº¯Êý£»Ð³ÌÐòÄÜͨ¹ýµ÷ÓÃexitÀ´»Ø´«Ò»¸ö8볤µÃÖµ


Ïà¹ØÎĵµ£º

LinuxµÄinitcallsµ÷ÓûúÖÆ

Ö»Òª¿´¿´ include/linux/init.hÖе͍Òå¾ÍÇå³þÁË£º
#define core_initcall(fn)        __define_initcall("1",fn)
#define postcore_initcall(fn)        __define_initcall("2",fn)
#define arch_initcall(fn)     &n ......

ѧϰLinuxÓ¦¸ÃÕÆÎÕµÄ


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

ÈçºÎÈÃLinux¸ÉµôWindows£¿

   ÈçºÎÈÃLinux¸ÉµôWindows£¿ÎÒ³ÐÈÏ£¬ÕâÊÇÓеã±êÌâµ³ÁË¡£µ«Õâ¸öÎʺţ¬¹À¼ÆºÜ¶àLinuxµÄ·ÛË¿²»ÖªµÀ»ÃÏë¹ý¶àÉٱ飻ҡÆìÄź°£¬ÁоÙLinuxÖÚ¶àÓŵ㣬ÂÞÁÐWindows¸÷ÖÖ×ïÐУ¬¾ÍÊÇÈÃÈËÃÇÈ¥ÊÔÊÔLinux¡£¿ÉÊǽá¾ÖÔõôÑù£¿´ó¼Ò¶¼¿´µ½ÁË¡£
 
   ΪʲôLinux»áʧ°Ü£¿àÞ£¬²»Ó¦¸Ã˵ÊÇʧ°Ü£¬Ó¦¸ÃÊÇ˵ΪʲôռÓÐÂÊÔ ......

Linux Óû§²ãÈçºÎµ÷ÓýӿÚÉèÖüĴæÆ÷

ÏÂÃæµÄ´úÂë·ÖÎöÊǸù¾Ýlinux-2.6.17.14_stm22°æ±¾
#define STSYS_WriteRegDev32LE(Address_p, value)          writel((u32)value, (void*)Address_p)
ÔÚinclude/asm-sh/io.h
#define writel(v,a) ({__raw_writel((v),(a));mb();})
#define __raw_write(v,a)  __writ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ