¸úÎÒÒ»²½Ò»²½ÖÆ×÷Ò»¸ö»ù±¾µÄlinuxÆô¶¯ÅÌ
Ô´´ÎÄÕ£¬×ªÔØÇë×¢Ã÷³ö´¦£¬Ð»Ð»£¡
×÷ÕߣºÇåÁÖ£¬²©¿ÍÃû£º·É¿Õ¾²¶É
ÕâÊÇһƪ×Ô¼ººÜÔçдµÄÎÄÕÂÁË£¬µ±Ê±¸ù¾ÝÍøÉϵÄһЩ½Ì³ÌÒ»²½Ò»²½ÖÆ×÷£¬±¾À´Ïë°Ñ×Ô¼º×öµÄ¹ý³Ì·Åµ½ÍøÉÏ£¬¿ÉÒÔÎ÷һֵæÓÚ¹«Ë¾ÏîÄ¿£¬Ã»ÓÐʱ¼ä£¬È¥ÄêÏë·ÅÉÏÀ´µÄʱºò·¢ÏÖcsdnÉÏ´«²»ÁËͼƬ£¬ÎÒÏ룬ûÓÐͼƬµÄ½Ì³Ì¾Í²»½ÐÒ»²½Ò»²½µÄ½Ì³ÌÁË¡£ºÃÁË£¬ÏÂÃæÊÇÎÒÒ»²½Ò»²½ÖÆ×÷µÄlinuxµÄ¼òµ¥µÄÆô¶¯ÅÌ£¬¸´ÔÓһЩµÄÒÔºóÔÙд°É£¡
±¾ÎĽ«»áÒ»²½Ò»²½´Ó»ù´¡Òýµ¼´ó¼Ò¹¹½¨Ò»¸ölinuxÆô¶¯ÅÌ£¬ÔÚÕâ¸ölinuxÆô¶¯ÅÌÔÚÆô¶¯ºó¿ÉÒÔÔËÐÐÎÒÃÇÌØ¶¨µÄ³ÌÐò£¬Íê³ÉÌØ¶¨µÄ¹¦ÄÜ¡£±¾ÎÄÁ¦Çó¼òµ¥Ïêϸ£¬Ð´³öÖÆ×÷µÄÿһ²½£¬ÆäÖлᴩ²å¸÷ÖÖͼƬ£¬ÔÚÒýÓÃÆäËûÎÄÕÂʱ£¬»á°ÑÎÄÕÂÌù³öÀ´£¬Ê¹µÃ¶ÁÕß²»ÓÃÈ¥Á´½ÓѰÕÒ£¬Ò²Í¬Ê±Ê¹µÃûÓÐÍøÂçµÄ¶ÁÕß¿ÉÒÔʡȥÎÞÍøÂçÖ®Âé·³¡£Ê¹µÃ³õѧÕß¿ÉÒÔÕÕ×ÅÒ»²½Ò»²½µÄÍê³É£¬
±¾×Å×ðÖØÔ´´µÄ¾«Éñ£¬ÎÄÕÂÖÐÈç¹ûûÓÐÌØÊâ˵Ã÷£¬ÔòËùÓÐбÌåÎÄ×Ö¶¼Òý×ÔÆäËûÎÄÕµÄÄÚÈÝ£¬ÆäÖд󲿷ÖÀ´×Ô¡¶¾«Í¨initramfs¹¹½¨step by step¡·¡£
×¢£º±¾ÎIJο¼µÄÖ÷ÒªÁ½ÆªÎÄÕÂÊÇ¡¶¾«Í¨initramfs¹¹½¨step by step¡·ºÍ¡¶ÉîÈëÀí½â Linux 2.6 µÄ initramfs 機ÖÆ (ÉÏ)¡·£¬ÎÄÕÂÈç¹ûÒýÓõ½ÆäËûÎÄÕÂÔòÔÚÎÄÖÐ˵Ã÷¡£
¹¤×÷»·¾³£ºubuntu9.10£¬Á·Ï°ÓõÄÄÚºËÊÇlinux-2.6.31.tar.bz2£¬ubuntu9.10ĬÈϵÄÊÇgcc4.4£¬ÎÒÓõÄÊÇgcc4.3.4£¨¾ßÌåÐÞ¸Ägcc°æ±¾¿ÉÓÃupdate-alternativesÃüÁ¡£
Ò»¡¢ÖÆ×÷Ò»¸öÏÔʾhello worldµÄÆô¶¯linux
Ò»¡¢ initramfs ÊÇʲô
ÔÚ 2.6 °æ±¾µÄ linux ÄÚºËÖÐ,¶¼°üº¬Ò»¸öѹËõ¹ýµÄ cpio ¸ñʽ µÄ´ò°üÎļþ¡£µ±ÄÚºËÆô¶¯Ê±,»á´ÓÕâ¸ö´ò°üÎļþÖе¼³öÎļþµ½ÄÚºËµÄ rootfs Îļþϵͳ,È»ºóÄں˼ì²é rootfs ÖÐÊÇ·ñ°üº¬ÓÐ init Îļþ,Èç¹ûÓÐÔòÖ´ÐÐ Ëü,×÷Ϊ PID Ϊ 1 µÄµÚÒ»¸ö½ø³Ì¡£Õâ¸ö init ½ø³Ì¸ºÔðÆô¶¯ÏµÍ³ºóÐøµÄ¹¤×÷,°üÀ¨¶¨Î»¡¢¹ÒÔØ“ÕæÕýµÄ”¸ùÎļþϵͳÉ豸(Èç¹ûÓеϰ)¡£Èç¹ûÄÚºËûÓÐÔÚ rootfs ÖÐÕÒµ½ init Îļþ,ÔòÄں˻ᰴÒÔǰ°æ±¾µÄ·½Ê½¶¨Î»¡¢¹ÒÔØ¸ù·ÖÇø,È»ºóÖ´ÐÐ/sbin/init ³ÌÐòÍê³ÉϵͳµÄºóÐø³õʼ»¯¹¤×÷¡£
Õâ ¸öѹËõ¹ýµÄ cpio ¸ñʽµÄ´ò°üÎļþ¾ÍÊÇ initramfs¡£±àÒë 2.6 °æ±¾µÄ linux ÄÚºËʱ,±àÒëϵͳ×ܻᴴ½¨ initramfs,È»ºó°ÑËüÓë±àÒëºÃµÄ ÄÚºËÁ¬½ÓÔÚÒ»Æð¡£ÄÚºËÔ´´úÂëÊ÷ÖÐµÄ usr Ä¿Â
Ïà¹ØÎĵµ£º
1£¬ÏÔÖøÓ°ÏìϵͳÐÔÄܵÄ4ÖÖ×ÊÔ´
(1),CPUʱ¼ä
(2),ÄÚ´æ
(3),Ó²ÅÌI/O
(4),ÍøÂçI/O
2£¬·ÖÎöCPUʹÓÃÇé¿ö
ʹÓÃvmstat²É¼¯CPUµÄÐÔÄÜÆ¿¾±
[root@local]# vmstat 2
procs -----------memory---------- ---swap-- -----io-- ......
Linux»ñÈ¡ºÁÃ뼶ʱ¼ä
Moakap
ÔÚÈí¼þÉè¼ÆÖо³£»áÓõ½¹ØÓÚʱ¼äµÄ´¦Àí£¬ÓÃÀ´¼ÆËãÓï¾ä¡¢º¯ÊýµÄÖ´ÐÐʱ¼ä£¬Õâʱ¾ÍÐèÒª¾«È·µ½ºÁÃëÉõÖÁÊÇ΢ÃîµÄʱ¼ä¡£
int gettimeofday(struct
timeval *tv, struct timezone *tz);
int settimeofday(const
struct timeval *tv , const struct timezone *tz);
struc ......
Red Hat Enterprise Linux ÏÂcvs·þÎñÆ÷µÄ°²×°ÓëÅäÖÃ
°²×°ÓëÅäÖÃ
Ê×ÏȰ²×° cvs £¬Ò»°ã·þÎñÆ÷×Ô´øÁËcvs·þÎñ£¬°æ±¾ËæÒ⣬ûʲô²î±ð
[root@RHEL ~]#rpm –ivh cvs-1.11.22-5.el5.i386.rpm
È»ºó´´½¨Ò»¸öcvsÓû§×飬²¢´´½¨Ò»¸öcvsrootÓû§
[root@RHEL ~]#groupadd cvs
[root@RHEL ~]#useradd –g cv ......
£¨1£©exit()Óë_exit()Çø±ð£º _exit()Ö±½Óʹ½ø³ÌÍ£Ö¹ÔËÐУ¬Çå³ýÆ÷ʹÓõÄÄÚ´æ¿Õ¼ä£¬Ïú»ÙÆäÔÚÄÚºËÖеĸ÷ÖÖÊý¾Ý½á¹¹¡£
exit()º¯ÊýÔÚµ÷ÓÃexitϵͳµ÷ÓÃ֮ǰҪ¼ì²éÎļþµÄ´ò¿ªÇé¿ö£¬°ÑÎļþ»º³åÇøÖеÄÄÚÈÝд»ØÎļþ£¬ÇåÀíI/O»º³å£¨ÍƼöʹÓÃÕâ¸öº¯Êý£©
£¨2£©waitpid
#include <sys/ ......
ת×Ô£ºhttp://os.51cto.com/art/201002/184694.htm
ÊÀ½çÉÏ×î´óµÄ¼¼ÊõÖ§³Ö¡¢Èí¼þºÍÓ²¼þ¹«Ë¾Ã¿ÌìʹÓÃLinuxÍê³É¸÷ÖÖÈÎÎñÓë½â¾ö·½°¸£¬ÄÇôÕâЩ´ó¹«Ë¾¾¿¾¹ÊÇÔõôʹÓÃLinuxµÄÄØ£¿Æäʵ²¢²»ÉñÃØ£¬±¾
ÎÄΪÄã½ÒÏþ´ð°¸£¬´ó¶àÊý¹«Ë¾¶¼²»»áʹÓÃLinux×÷Ϊ×ÀÃæ²Ù×÷ϵͳ£¬Ö÷ÒªÊÇÓÃÓÚºó¶Ë·þÎñÆ÷²Ù×÷ϵͳ£¬¾¹ýÕâЩ´ó¹«Ë¾µÄ´óµ¨³¢ÊÔ£¬Ðí¶àÊ ......