linuxϵͳµ÷ÓÃÁбí
Ò»¡¢½ø³Ì¿ØÖÆ£º
fork
´´½¨Ò»¸öнø³Ì
clone
°´Ö¸¶¨Ìõ¼þ´´½¨×Ó
½ø³Ì
execve
ÔËÐпÉÖ´ÐÐÎļþ
exit
ÖÐ
Ö¹½ø³Ì
_exit
Á¢¼´ÖÐÖ¹µ±Ç°½ø³Ì
getdtablesize
½ø
³ÌËùÄÜ´ò¿ªµÄ×î´óÎļþÊý
getpgid
»ñÈ¡Ö¸¶¨½ø³Ì×é±êʶºÅ
setpgid
Éè
ÖÃÖ¸¶¨½ø³Ì×é±êÖ¾ºÅ
getpgrp
»ñÈ¡µ±Ç°½ø³Ì×é±êʶºÅ
setpgrp
Éè
Öõ±Ç°½ø³Ì×é±êÖ¾ºÅ
getpid
»ñÈ¡½ø³Ì±êʶºÅ
getppid
Ȗ
È¡¸¸½ø³Ì±êʶºÅ
getpriority
»ñÈ¡µ÷¶ÈÓÅÏȼ¶
setpriority
Éè
Öõ÷¶ÈÓÅÏȼ¶
modify_ldt
¶Áд½ø³ÌµÄ±¾µØÃèÊö±í
nanosleep
ʹ
½ø³Ì˯ÃßÖ¸¶¨µÄʱ¼ä
nice
¸Ä±ä·Öʱ½ø³ÌµÄÓÅÏȼ¶
pause
¹Ò
Æð½ø³Ì£¬µÈ´ýÐźÅ
personality
ÉèÖýø³ÌÔËÐÐÓò
prctl
¶Ô
½ø³Ì½øÐÐÌض¨²Ù×÷
ptrace
½ø³Ì¸ú×Ù
sched_get_priority_max
È¡
µÃ¾²Ì¬ÓÅÏȼ¶µÄÉÏÏÞ
sched_get_priority_min
È¡µÃ¾²Ì¬ÓÅÏȼ¶µÄÏÂÏÞ
sched_getparam
È¡
µÃ½ø³ÌµÄµ÷¶È²ÎÊý
sched_getscheduler
È¡µÃÖ¸¶¨½ø³ÌµÄµ÷¶È²ßÂÔ
sched_rr_get_interval
È¡
µÃ°´RRËã·¨µ÷¶ÈµÄʵʱ½ø³ÌµÄʱ¼äƬ³¤¶È
sched_setparam
ÉèÖýø³ÌµÄµ÷¶È²ÎÊý
sched_setscheduler
Éè
ÖÃÖ¸¶¨½ø³ÌµÄµ÷¶È²ßÂԺͲÎÊý
sched_yield
½ø³ÌÖ÷¶¯Èóö´¦ÀíÆ÷,²¢½«×Ô¼ºµÈºòµ÷¶È¶ÓÁжÓ
β
vfork
´´½¨Ò»¸ö×Ó½ø³Ì£¬ÒÔ¹©Ö´ÐÐгÌÐò£¬³£ÓëexecveµÈͬʱʹÓÃ
wait
µÈ
´ý×Ó½ø³ÌÖÕÖ¹
wait3
²Î¼ûwait
waitpid
µÈ
´ýÖ¸¶¨×Ó½ø³ÌÖÕÖ¹
wait4
²Î¼ûwaitpid
capget
Ȗ
È¡½ø³ÌȨÏÞ
capset
ÉèÖýø³ÌȨÏÞ
getsid
Ȗ
È¡»áÎî±êʶºÅ
setsid
ÉèÖûáÎî±êʶºÅ
¶þ¡¢Îļþϵͳ¿ØÖÆ
1¡¢Îļþ¶Áд²Ù×÷
fcntl
Îļþ¿ØÖÆ
open
´ò¿ªÎļþ
creat
´´
½¨ÐÂÎļþ
close
¹Ø±ÕÎļþÃèÊö×Ö
read
¶Á
Îļþ
write
дÎļþ
readv
´ÓÎļþ
¶ÁÈëÊý¾Ýµ½»º³åÊý×éÖÐ
writev
½«»º³åÊý×éÀïµÄÊý¾ÝдÈëÎļþ
pread
¶Ô
ÎļþËæ»ú¶Á
pwrite
¶ÔÎļþËæ»úд
lseek
ÒÆ
¶¯ÎļþÖ¸Õë
_llseek
ÔÚ64λµØÖ·¿Õ¼äÀïÒƶ¯ÎļþÖ¸Õë
dup
¸´
ÖÆÒÑ´ò¿ªµÄÎļþÃèÊö×Ö
dup2
°´Ö¸¶¨Ìõ¼þ¸´ÖÆÎļþÃèÊö×Ö
flock
ÎÄ
¼þ¼Ó/½âËø
poll
I/O¶à·ת»»
truncate
½Ø
¶ÏÎļþ
ftruncate
²Î¼ûtruncate
umask
Éè
ÖÃÎļþȨÏÞÑÚÂë
fsync
°ÑÎļþÔÚÄÚ´æÖеIJ¿·Öд»Ø´ÅÅÌ
2¡¢Îļþϵͳ²Ù×÷
access
È·¶¨ÎļþµÄ¿É´æÈ¡ÐÔ
chdir
¸Ä±äµ±Ç°
¹¤×÷Ŀ¼
fchdir
²Î¼ûchdir
chmod
¸Ä
±äÎļþ·½Ê½
fchmod
²Î¼ûchmod
chown
¸Ä
±äÎļþµÄÊôÖ÷»òÓû§×
Ïà¹ØÎĵµ£º
Ò»¡¢ÒýÑÔ£º
±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØͼ£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾Ñ飨Õâ¸ö»¹µ ......
ÓÉÓÚ Linux Á¼ºÃµÄÓû§È¨ÏÞ¹ÜÀíÌåϵ£¬²¡¶¾ÍùÍùÊÇ Linux ϵͳ¹ÜÀíÔ±×îºó²ÅÐèÒª¿¼ÂǵÄÎÊÌâ¡£ÒÔÍù£¬Linux ÉϵÄɱ¶¾Èí¼þÖ÷ÒªÊÇΪÆóÒµµÄÓʼþºÍÎļþ·þÎñÆ÷ËùÉè¼ÆµÄ¡£Èç½ñ£¬Ëæ×Å Linux ×ÀÃæÓû§ÊýÁ¿µÄÔö³¤£¬×ÀÃæÓû§ÔÚÊÜÒæÓÚ Linux ϵͳ¶Ô²¡¶¾½ÏÇ¿µÄÌìÈ»ÃâÒßÁ¦µÄͬʱ£¬Ò²ÐèҪɱ¶¾Èí¼þÇåÀí´ÓÍøÂç»òUÅÌ´øÀ´µÄWIndows²¡¶¾¡£¾¡¹ÜÄÇЩ ......
1. ÄÚºËѧϰ·½·¨£¬±àÒë¡¢µ÷ÊԵȳ£¼ûÎÊÌâ
1.1 ¹ØÓÚ±àÒëÉý¼¶Äں˵½2.6.0µÄһЩÎÊÌâ ×÷Õߣºommm
http://linux.chinaunix.net/bbs/thread-281831-1-5.html
1.2 VMWare Workstation 6.0µ÷ÊÔLinux Kernel£¬¾¹Èç´Ë·½±ã ×÷Õߣºalbcamus
http://linux.chinaunix.net/bb ......
¡¾Îĵµ´´½¨ÈÕÆÚ£º2010-05-30¡¿
001 // P122: Èý¡¢ÉÏ»úÌâ 3
002
003 // test03-03.c
004
005 // Header files included.
006 #include <stdio.h>
00 ......
do_exit() Function
-----------------------------------------------------------------------
kernel/exit.c
707 NORET_TYPE void do_exit(long code)
708 {
709 struct task_struct *tsk = current;
710
711 if (unlikely(in_interrupt()))
712 panic("Aiee, killing interrupt handler!");
713 if ......