linuxÄں˵¼¶Á
Ò»£®ºËÐÄÔ´³ÌÐòµÄÎļþ×éÖ¯£º
1£®LinuxºËÐÄÔ´³ÌÐòͨ³£¶¼°²×°ÔÚ/usr/src/linuxÏ£¬¶øÇÒËüÓÐÒ»¸ö·Ç³£¼òµ¥µÄ±àºÅÔ¼¶¨£ºÈκÎżÊýµÄºËÐÄ£¨ÀýÈç2.0.30£©¶¼ÊÇÒ»¸öÎȶ¨µØ·¢ÐеĺËÐÄ£¬¶øÈÎºÎÆæÊýµÄºËÐÄ£¨ÀýÈç2.1.42£©¶¼ÊÇÒ»¸ö¿ª·¢ÖеĺËÐÄ¡£
±¾ÎÄ»ùÓÚÎȶ¨µÄ2.2.5Ô´´úÂ룬µÚ¶þ²¿·ÖµÄʵÏÖÆ½Ì¨Îª Redhat Linux 6.0¡£
2£®ºËÐÄÔ´³ÌÐòµÄÎļþ°´Ê÷Ðνṹ½øÐÐ×éÖ¯£¬ÔÚÔ´³ÌÐòÊ÷µÄ×îÉϲãÄã»á¿´µ½ÕâÑùһЩĿ¼£º
¡ñArch £ºarch×ÓĿ¼°üÀ¨ÁËËùÓкÍÌåϵ½á¹¹Ïà¹ØµÄºËÐÄ´úÂë¡£ËüµÄÿһ¸ö×ÓĿ¼¶¼´ú±íÒ»ÖÖÖ§³ÖµÄÌåϵ½á¹¹£¬ÀýÈçi386¾ÍÊǹØÓÚintel cpu¼°ÓëÖ®Ïà¼æÈÝÌåϵ½á¹¹µÄ×ÓĿ¼¡£PC»úÒ»°ã¶¼»ùÓÚ´ËĿ¼£»
¡ñInclude: include×ÓĿ¼°üÀ¨±àÒëºËÐÄËùÐèÒªµÄ´ó²¿·ÖÍ·Îļþ¡£ÓëÆ½Ì¨Î޹صÄÍ·ÎļþÔÚ include/linux×ÓĿ¼Ï£¬Óë intel cpuÏà¹ØµÄÍ·ÎļþÔÚinclude/asm-i386×ÓĿ¼ÏÂ,¶øinclude/scsiĿ¼ÔòÊÇÓйØscsiÉ豸µÄÍ·ÎļþĿ¼£»
¡ñInit£º Õâ¸öĿ¼°üº¬ºËÐĵijõʼ»¯´úÂë(×¢£º²»ÊÇϵͳµÄÒýµ¼´úÂë)£¬°üº¬Á½¸öÎļþmain.cºÍVersion.c£¬ÕâÊÇÑо¿ºËÐÄÈçºÎ¹¤×÷µÄÒ»¸ö·Ç³£ºÃµÄÆðµã¡£
¡ñMm £ºÕâ¸öĿ¼°üÀ¨ËùÓжÀÁ¢ÓÚ cpu Ìåϵ½á¹¹µÄÄÚ´æ¹ÜÀí´úÂ룬Èçҳʽ´æ´¢¹ÜÀíÄÚ´æµÄ·ÖÅäºÍÊͷŵȣ»¶øºÍÌåϵ½á¹¹Ïà¹ØµÄÄÚ´æ¹ÜÀí´úÂëÔòλÓÚarch/*/mm/£¬ÀýÈçarch/i386/mm/Fault.c
¡ñKernel£ºÖ÷ÒªµÄºËÐÄ´úÂ룬´ËĿ¼ÏµÄÎļþʵÏÖÁË´ó¶àÊýlinuxϵͳµÄÄں˺¯Êý£¬ÆäÖÐ×îÖØÒªµÄÎļþµ±Êôsched.c£»Í¬Ñù£¬ºÍÌåϵ½á¹¹Ïà¹ØµÄ´úÂëÔÚarch/*/kernelÖУ»
¡ñDrivers£º ·ÅÖÃϵͳËùÓеÄÉ豸Çý¶¯³ÌÐò;ÿÖÖÇý¶¯³ÌÐòÓÖ¸÷Õ¼ÓÃÒ»¸ö×ÓĿ¼£ºÈ磬/block ÏÂΪ¿éÉ豸Çý¶¯³ÌÐò£¬±ÈÈçide£¨ide.c£©¡£Èç¹ûÄãÏ£Íû²é¿´ËùÓпÉÄܰüº¬ÎļþϵͳµÄÉ豸ÊÇÈçºÎ³õʼ»¯µÄ£¬Äã¿ÉÒÔ¿´drivers/block/genhd.cÖеÄdevice_setup()¡£Ëü²»½ö³õʼ»¯Ó²ÅÌ£¬Ò²³õʼ»¯ÍøÂ磬ÒòΪ°²×°nfsÎļþϵͳµÄʱºòÐèÒªÍøÂçÆäËû: Èç, Lib·ÅÖúËÐĵĿâ´úÂë; Net,ºËÐÄÓëÍøÂçÏà¹ØµÄ´úÂë; Ipc,Õâ¸öĿ¼°üº¬ºËÐĵĽø³Ì¼äͨѶµÄ´úÂë; Fs ,ËùÓеÄÎļþϵͳ´úÂëºÍ¸÷ÖÖÀàÐ͵ÄÎļþ²Ù×÷´úÂ룬ËüµÄÿһ¸ö×ÓĿ¼֧³ÖÒ»¸öÎļþϵͳ£¬ÀýÈçfatºÍext2;
scripts, ´ËĿ¼°üº¬ÓÃÓÚÅäÖúËÐĵĽű¾ÎļþµÈ¡£
Ò»°ã£¬ÔÚÿ¸öĿ¼Ï£¬¶¼ÓÐÒ»¸ö .depend ÎļþºÍÒ»¸ö Makefile Îļþ£¬ÕâÁ½¸öÎļþ¶¼ÊDZàÒëʱʹÓõĸ¨ÖúÎļþ£¬×ÐϸÔĶÁÕâÁ½¸öÎļþ¶ÔŪÇå¸÷¸öÎļþÕâ¼äµÄÁªÏµºÍÒÀÍйØÏµºÜÓаïÖú£»¶øÇÒ£¬ÔÚÓеÄĿ¼Ï»¹ÓÐReadme Îļþ£¬ËüÊǶԸÃĿ¼ÏµÄÎļþµÄһЩ˵Ã÷£¬Í¬ÑùÓÐÀûÓÚÎÒÃǶÔÄÚºËÔ´ÂëµÄÀí½â£»
Ïà¹ØÎĵµ£º
¸ù¾ÝMAN°ïÖú·ÒëµÄ£¬²»ÖªµÀ×¼²»×¼È·£º
D ²»¿ÉÖжϵÄÐÝÃß½ø³Ì(Ò»°ãΪ IOÏà¹ØµÄ)
R ÕýÔÚÔËÐеĻò½«ÔËÐеÄ(ÔÚÔËÐжÓÁÐÖÐ)
S ÒäÖжϵÄÐÝÃß½ø ......
¼¶±ð£º ³õ¼¶
×ó½õ (zuo170@163.com), ¸±×ܲÃ, ÄÏɳ×ÊѶ¿Æ¼¼Ô°
2003 Äê 7 ÔÂ 03 ÈÕ
Linux ²Ù×÷ϵͳ´ÓÒ»¿ªÊ¼¾Í¶Ô´®ÐпÚÌṩÁ˺ܺõÄÖ§³Ö£¬±¾ÎÄ¾Í Linux ϵĴ®ÐпÚͨѶ±à³Ì½øÐмòµ¥µÄ½éÉÜ¡£
´®¿Ú¼ò½é
´®ÐпÚÊǼÆËã»úÒ»ÖÖ³£ÓõĽӿڣ¬¾ßÓÐÁ¬½ÓÏßÉÙ£¬Í¨Ñ¶¼òµ¥£¬µÃµ½¹ã·ºµÄʹÓᣳ£ÓõĴ®¿ÚÊÇ RS-232-C ½Ó¿Ú£¨ÓÖ³Æ EIA RS-2 ......
ÔµØÖ·£ºhttp://selftest.51cto.com/subread.php?sid=213
×Ô²â¼ò½é£º
ShellÒ²½Ð×öÃüÁîÐнçÃæ£¬ËüÊÇUnix/ÀàUnix²Ù×÷ϵͳÏ´«Í³µÄÓû§ºÍ¼ÆËã»úµÄ½»»¥½çÃæ¡£Óû§Ö±½ÓÊäÈëÃüÁîÀ´Ö´Ðи÷ÖÖ¸÷ÑùµÄÈÎÎñ¡£µ±È»Î¢ÈíµÄWindows²Ù×÷ϵͳҲÌṩÁËÕâÑùµÄ¹¦ÄÜ£¬ËüÃÇÊÇWindows 9XϵÄcommand.com£¬ºÍ»ùÓÚWindows NTµÄ¸ ......
ÈçºÎÈÃLinux¸ÉµôWindows£¿ÎÒ³ÐÈÏ£¬ÕâÊÇÓеã±êÌâµ³ÁË¡£µ«Õâ¸öÎʺţ¬¹À¼ÆºÜ¶àLinuxµÄ·ÛË¿²»ÖªµÀ»ÃÏë¹ý¶àÉٱ飻ҡÆìÄź°£¬ÁоÙLinuxÖÚ¶àÓŵ㣬ÂÞÁÐWindows¸÷ÖÖ×ïÐУ¬¾ÍÊÇÈÃÈËÃÇÈ¥ÊÔÊÔ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 ......