¡¡¡¡1£©ÓÉÓÚlinuxÄÚºËʵÔÚÊÇÌ«ÅÓ´óÁË£¬Éæ¼°µÄÄÚÈÝ°üÂÞÍòÏó£¬ÎÒ×Ô¼ºµÄˮƽҲºÜÓÐÏÞ£¬ËùÒÔÎÒ²»¿ÉÄܽ«ÄÚºËÅäÖõķ½·½ÃæÃ涼д³öÀ´£¬±¾ÎÄÖÐÎÒÖ»Êǽ«ÎÒÈÏΪ×îÖØÒªµÄһЩ²¿·Ö×÷Ò»¸ö½éÉÜ¡£µ±È»£¬ÈÊÕß¼ûÈÊ£¬ÖÇÕß¼ûÖÇ£¬Ò²ÐíÎÒÈÏΪÖØÒªµÄÆäËûÈ˲»¾õµÃÖØÒª£¬·´Ö®ÒàÈ»£¬ËùÒÔ»¶Ó´ó¼Ò¶Ô±¾ÎĽøÐв¹³ä£¬Ò²»¶Ó´ó¼Ò¶Ô´íÎóÖ®´¦½øÐÐÖ¸Õý¡£
??2£©±¾ÎĽéÉܵÄÄÚºËÅäÖÃÊÇÕë¶Ôi386Ìåϵ½á¹¹£¬¶ÔÆäËüÌåϵ½á¹¹²»ÍêÈ«ÊÊÓ㨵±È»´ó²¿·ÖÒ²ÊÊÓã©¡£
??3£©±¾ÎÄÔÚ½éÉÜÄÚºËÅäÖõĹý³ÌÖмÙÉèÄãµÄubuntuÊÇÒÔ×ÀÃæÓ¦ÓÃΪÖ÷ҪĿµÄ£¬Ò²¾ÍÊÇ˵ÎÒ¶ÔÄÚºËÅäÖõÄÍƼö×ö·¨¶¼ÊÇÔÚ±£Ö¤ÏµÍ³ÍÌÍÂÁ¿(throughput)µÄÇé¿öϾ¡×î´ó¿ÉÄÜÐÔÀ´Ìá¸ßϵͳµÄÏìÓ¦ÄÜÁ¦£¨responsiveness£©¡£
??4£©±¾ÎĽö½öÕë¶Ô2.6.xÄںˣ¬²Î¿¼µÄÄÚºËÊÇ2.6.20¡£
??5£©±¾ÎÄÖ»½éÉܶÔÄں˵ÄÅäÖ㬲¢²»»á½éÉÜÈçºÎ´ÓÍ·µ½Î²±àÒë³öÒ»¸öÄںˣ¬Òò´ËÇë¶Ô±àÒëÄں˵IJ½Ö軹²»Ì«Çå³þµÄµÜÐÖÃÇÏȲο¼Ò»Ð©Ïà¹ØµÄÎÄÕ¡£
??
??±¾ÎÄËùÖ¸µÄÄÚºËÅäÖÃÆäʵ×îºËÐĵĶ«Î÷¾ÍÊÇÒ»¸öÎļþ£¬Õâ¸öÎļþÃûΪ.config£¬Î»ÓÚÄÚºËÔ´ÂëµÄ¸ùĿ¼Ï¡£Õâ¸öÎļþÔÚÄã¸Õ¸Õ½«ÄÚºËÔ´Âë½âѹËõºó²¢²»´æÔÚ£¬ÐèÒªÄã½øÐйýÒ»´ÎÅäÖúó²Å»á²úÉú³öÀ´¡£Õâ¸öÎļþÊÇÒ»¸öÎı¾Îļþ£¬ÀïÃæÓÐÐí¶àÐÐÐÅÏ¢£¬ÕâЩÐÅÏ¢¾ö¶¨ÁËÔÚÄã±àÒëÄں˵ÄʱºòÒªÖ§³ÖÄÄЩÌØÐÔÒÔ¼°ÄÄЩģ¿é¡£ÏÂÃæ¾ÙÁ½¸öÀý×Ó£¬±ÈÈçÔÚÎÒµÄ.configÎļþÖÐÓÐÒ»ÐÐΪ£ºCONFIG_SMP=y£¬Õâ¾Í±íʾÎÒ±àÒëµÄÄÚºËÒªÖ§³Ö¶Ô³Æ¶à´¦ÀíÆ÷£¨Symmetric multi-processing£©£¬ÕâÒâζ×ÅÔÚ±àÒëÄں˵ÄcÎļþʱ»á¶¨ÒåÒ»¸ö½ÐCONFIG_SMPµÄºê£»ÁíÍ⻹ÓÐÒ»ÐУºCONFIG_NTFS_FS=m£¬ÕâÒ»Ðбíʾ±àÒëÄں˵Ĺý³ÌÖÐÒª±àÒë³öÒ»¸öÖ§³ÖNTFSÎļþϵͳµÄ¿É¼ÓÔØÄÚºËÄ£¿é(LKM£¬loadable kernel module£©¡£
??ÉÏÃæµÄÀý×ÓÖÐÌáµ½Á˿ɼÓÔØÄÚºËÄ£¿é(LKM£¬loadable kernel module£©µÄ¸ÅÄÎÒÔÚÕâÀïÓбØÒª¶ÔÕâ¸ö¸ÅÄî½øÐÐһЩ½éÉÜ¡£Ê×ÏÈ˵linuxÊǵ¥ÄÚºË(monolithic kernel)½á¹¹µÄ£¬linux±àÒëºó¿ÉÒÔÊÓΪһ¸ö´óµÄ³ÌÐò£¬Õâ¸ö³ÌÐòΪËùÓеĵ÷ÓÃÕßÌṩ·þÎñ£¨µ±È»£¬ÄÚºËÖл¹ÓÐÐí¶àµÄÄÚºËÏß³ÌÔÚÔËת×Å£©¡£ÄÇô·²ÊÇÐèÒªÖ§³ÖµÄ¹¦ÄÜ£¨±ÈÈç¶ÔijÖÖÓ²¼þµÄÖ§³Ö£©¶¼Ó¦¸Ã±àÒë½øÄں˵ľµÏñÖÐÈ¥£¬µ«ÊÀ½çÉÏÓгÉǧÉÏÍòÖÖÓ²¼þÉ豸£¬Èç¹û°ÑÖ§³ÖËüÃǵijÌÐò¶¼±àÒë½øÄں˾µÏñÖÐÈ¥»áµ¼ÖÂÄں˹ýÓÚÅӴ󣬶øÇÒÕâЩÉ豸²¢²»ÊÇÔÚÿ̨»úÆ÷É϶¼ÓУ¬Êµ¼ÊÉϳ£ÓõÄÒ²¾ÍÄÇô¼¸Ê®ÖÖ¶øÒÑ£¬°ÑËüÃǶ¼±àÒë½øÄں˾µÏñÒ²»áÔì³É´óÁ¿µÄÀË·Ñ¡£ËùÒÔÄں˵Ŀª·¢ÕßÃÇÉè¼Æ³öÒ»ÖÖÄܹ»¶¯Ì¬µØÔö¼ÓÄں˹¦ÄܵĻúÖÆ£££¿É¼ÓÔØÄÚºËÄ£¿é(LKM£¬loadable kernel module£¬±¾ÎÄÒÔºó¼ò³ÆLKM£©£¬LKM¿ÉÒÔÔÚÐèÒªµÄʱºò¶¯Ì¬µØ¼ÓÔص½ÄÚºËÖÐÈ¥£¬Ò»µ©¼ÓÔØÉϾͳÉΪÁËÄں˵ÄÒ»²¿·Ö£¬´Ó¶øÀ©Õ¹ÁËÔÓÐÄں˵ŦÄÜ£¨¶ÁÕß¿ÉÒÔÓÃ/sbin/lsmodÀ´¹Û¿´ÏµÍ³ÖÐÓÐÄÄЩLKM±»¼ÓÔØÁË£©¡£ÉÏÃæÌáµ½µÄCONFIG_NTFS_FS=m»áʹ±àÒëÄں˵Ť¾ß½«Ö§³ÖNTFSÎļþϵͳµÄ³ÌÐò±àÒëΪһ¸öLKM¡£Èç¹û½«ÕâÒ»¾ä»°¸ÄΪCONFIG_NTFS_FS=yÄÇô¾Í»áʹµÃʵÏÖNTFSÎļþϵͳµÄ³ÌÐò±»Ö±½Ó±àÒëµ½Äں˵ľµÏñÖÐÈ¥¡£
??×ÜÌåÀ´½²£¬ÄÚºËÅäÖõĹý³Ì¾ÍÊDZà¼.configÎļþµÄ¹ý³Ì¡£µ±È»Äã¿ÉÒÔÓÃÈκÎÒ»¸öÎı¾±à¼Æ÷À´ÊÖ¹¤±à¼.configÎļþ£¬²»¹ýÈç¹ûÕæµÄ¾ö¶¨ÕâÑù×ö£¬ÎÒÖ»ÄÜ˵Ը·ð×æ±£ÓÓÄã¡£ÔÚ.configÎļþÖпÉÒԱ༵ÄÌõÄ¿´ïÊýǧ֮¶à£¬ÎªÁ˼ò»¯±à¼¹ý³Ì£¬Äں˵Ŀª·¢ÕßÃÇ¿ª·¢³öÁËһЩ¹¤¾ßרÃÅÓÃÓÚ±à¼.configÎļþ£¬ÕâЩ¹¤¾ß¶¼¸½´øÔÚÄں˵ÄÔ´ÂëѹËõ°üÖУ¬µ«ÊÇÕâЩ¹¤¾ßÔÚµÚÒ»´ÎʹÓõÄʱºòÒª½øÐбàÒë²ÅÄÜʹÓã¨ÒòΪlinuxÄÚºËÔ´Âë°ü²»ÄÜÖ±½Ó½«binaryµÄÎļþ´ò½øÈ¥£¬±Ï¾¹ËüÒªÔÚ¸÷ÖÖÓ²¼þƽ̨ÏÂʹÓã©¡£Òò´ËʹÓÃÕâЩ¹¤¾ß֮ǰ£¬ÄãµÄubuntu±ØÐë°²×°ÏàÓ¦µÄ¿ª·¢»·¾³£¬±ÈÈçGTK»òÕßQTµÄ¿ª·¢»·¾³£¬¹ØÓÚÈçºÎ°²×°ÕâЩ»·¾³Ðí¶àÎÄÕ¶¼½²¹ý£¬ÎҾͲ»×¸ÊöÁË¡£Õ⼸¸ö¹¤¾ß¶¼¿ÉÒÔÔÚÄÚºËÔ´ÂëµÄ¸ùĿ¼ÏÂͨ¹ýÊäÈëmake xxxÃüÁîµÄ·½·¨À´µ÷Óã¬ÏÂÃæ·Ö±ð½éÉÜ¡£
??1£©menuconfig£¬µ÷ÓÃÃüÁsudo make menuconfig¡£ÕâÊÇÒ»¸ö×Ö·û½çÃæµÄÅäÖù¤¾ß£¬ËäÈ»ÊÇ×Ö·û½çÃ浫ҲÌṩÁ˼òµ¥µÄ²Ëµ¥½çÃ棬ËüµÄºÃ´¦ÊÇ¿ÉÒÔÔÚûÓÐX WindowµÄ»·¾³Ï¶ÔÄں˽øÐÐÅäÖ᣸ù¤¾ßÐèÒªlibncursesµÄ¿ª·¢»·¾³¡£
??2£©qconf£¬µ÷ÓÃÃüÁsudo make xconfig¡£ÕâÊÇÒ»¸öGUIµÄÅäÖù¤¾ß£¬»ùÓÚQT¡£Õâ¸ö¹¤¾ß·Ç³£Ö±¹ÛÒ×Ó㬴ó¼ÒÒ»¿´¾ÍÃ÷°×ÔõôÓá£ÒªÇó¾ß±¸QTµÄ¿ª·¢»·¾³¡£
??3£©gconf£¬µ÷ÓÃÃüÁsudo make gconfig¡£ÓëÉÏÃæµÄÏàËÆ£¬Ö»²»¹ý»ùÓÚGTK£¬ËùÒÔÒªÇóGTK¿ª·¢»·¾³¡£
??
??ÕâÈý¸ö¹¤¾ßÎÒÍƼöʹÓÃqconf£¬ÒòΪmenuconfig²»¹»Ö±¹Û£¬gconfÎÒ¾õµÃÓÐbug£¬¶øÇÒÔÚ×îеÄ2.6.20ÄÚºËÖеÄgconfÎÒûÄܳɹ¦µØʹÓÃÆðÀ´£¬Ëü×ÜÊǻᵯ³öÒ»¸ö¿ÕµÄ´°ÌåÈ»ºó¾ÍûÏìÓ¦ÁË£¬²»ÖªµÀÊÇΪʲô¡£
??ÔÚʹÓÃÉÏÃæÌáµ½µÄ¹¤¾ß½øÐÐÅäÖÃÇ°ÄãÒ»¶¨Òª×¼±¸Ò»¸ö.configÎļþµÄÄ£°å£¬ÒòΪ.configÎļþÖпÉÒԱ༵ÄÌõÄ¿Ì«¶àÁË£¬´ó²¿·Ö¶¼ÊÇÓëÇý¶¯³ÌÐòÏà¹ØµÄ£¬Èç¹ûÄãÒ»ÏîÒ»ÏîµØ½øÐÐÅäÖÃÐèÒª»¨·Ñ´óÁ¿µÄ¾«Á¦£¨Ì¹°×µØ½²£¬ÎÒҲûÓйýÕâÖÖ¾Àú£¬ÒòΪÇý¶¯³ÌÐòÌ«¶àÁË£¬ÎÒÒ²²»ÖªµÀÄÄЩÓÐÓÃÄÄЩûÓã©¡£Òò´ËÔÚÅäÖÃ֮ǰ£¬ÄãÓ¦¸ÃÕÒµ½Ò»·ÝÄ£°å£¬È»ºó¼¯Öо«Á¦±à¼Ò»Ð©±È½ÏÖØÒªµÄÅäÖÃÌõÄ¿¡£ubuntuµÄ/bootĿ¼Ï¾ÍÓÐһЩºÜºÃµÄÄ£°å£¬±ÈÈç/boot/config- 2.6.17-11-generic£¬ÄãÖ»Òª°ÑÕâÑùµÄÎļþcopyµ½ÄãµÄÄÚºËÔ´Âë¸ùĿ¼Ï²¢¸üÃûΪ.config¼´¿É¡£ÁíÍ⣬עÒâÔÚqconfÖУ¬´ó¶àÊýÌõÄ¿¶¼¿ÉÒÔÓÐÈýÖÖ״̬£º´òÉ϶Թ´£¬´òÉÏÔ²µã£¬ÎÞ¹´Ñ¡£¬ÕâÈýÖÖ״̬·Ö±ð¶ÔÓ¦.configÎļþÖеÄ=y£¬=m£¬=n£¬Ò²¼´Ö±½Ó±àÒë½øÄں˾µÏñ£¬±àÒëΪ LKM£¬²»¶¨Òåºê»ò²»±àÒë¡£
??
??ÏÂÃæÎҾͽ«ÎÒÈÏΪÖØÒªµÄÅäÖÃÌõÄ¿ÖðÒ»µØÏò´ó¼Ò½éÉÜ£¨´ó²¿·Ö¶¼Óë×ÀÃæÐÔÄÜÏà¹Ø£©¡£ÏÂÃæÿ¸öÌõÄ¿µÄÃû³ÆÒÔËüÔÚgconf²Ëµ¥ÖеÄȫ·¾¶±íʾ¡£
??
??1£©General setup-->Cpuset support:
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_CPUSETSºê¡£½¨Òé²»¹´Ñ¡ÕâÏî¡£ÒòΪÕâ¸öÌØÐÔÊÇÖ÷ÒªÊÇÓÃÓÚNUMA¼Ü¹¹ºÍÓµÓдóÁ¿Âß¼CPUµÄSMP¼Ü¹¹£¬¿ªÆôÕâÒ»ÌØÐÔ»áÀË·ÑһЩÄڴ棬¶ÔÒ»°ãÈ˵Ä×ÀÃæ»·¾³Ã»ÓÐÈκΰïÖú¡£
??
??2£©Processor type and features-->Symmetric multi-processing support£º
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_SMPºê¡£¹´Ñ¡ÕâÒ»ÏîʹµÃÄÚºËÖ§³Ö¶Ô³Æ¶à´¦ÀíÆ÷¡£½¨Òé¹´Ñ¡£¬ÒòΪ×îеÄCPU´ó¶àÖ§³ÖË«ºË»òÕß³¬Ị̈߳¬¾ÍËãÄãÏÖÔÚÊǵ¥CPU£¬Äѱ£ÄãÄÄÌìÉý¼¶£º£©¡£
??
??3£©Processor type and features-->Processor family
??ÕâÊÇÒ»¸öµ¥Ñ¡ÌõÄ¿£¬Ä¿µÄÊÇΪÁËÖ¸¶¨CPUµÄ¾ßÌåÐͺÅÒÔ±ã½øÐÐÓÅ»¯£¬Ó¦¸ÃÉ÷ÖØÑ¡Ôñ£¬Ñ¡´íÓпÉÄÜÔì³ÉÄÚºËÎÞ·¨Õý³£¹¤×÷¡£¾Ù¸öÀý×ÓÀ´ËµÃ÷Õâ¸öÑ¡ÏîµÄÓÅ»¯×÷Ó㬱ÈÈçÄãÑ¡ÖÐÁËAthlon/Duron/K7£¬ÄÇôÄÚºËÔÚ½øÐÐmemcpy()µÄʱºò¾Í»áʹÓþ¹ý3DNow!Ö¸ÁÓÅ»¯¹ýµÄ°æ±¾¡£ÏÂÃæÎÒ´óÖ°ÑÊÐÃæÉϳ£¼ûµÄCPUÓ¦¸ÃÑ¡ÄÄÏî×öÒ»¸ö´Ö²ÚµØ·ÖÀࣺ
??
??Õë¶ÔAMDµÄCPU£º
??a£©Sempron£¨ÉÁÁú£©£¯Duron£¨¶¾Áú£©£¯Athlon£¨ËÙÁú£©£ºÑ¡ÔñAthlon/Duron/K7¡£
??b£©Sempron64£¯Athlon64£¯Athlon64 X 2£¯Opteron£¨ð©Áú£©£ºÑ¡ÔñOpteron/Athlon64/Hammer/K8¡£
??c£©±ÈÉÏÊöCPU¶¼¹ÅÀϵģºÑ¡ÔñK6/K6-II/K6-III¡££¨µ±È»Èç¹ûÄãµÄCPUÊÇK5µÄ¾ÍµÃÑ¡586/K5/5x86/6x86/6x86MXÁË¡££©
??
??Õë¶ÔINTELµÄCPU£º
??a£©±¼ÌÚ2£ºÑ¡ÔñPentium-II/Celeron(pre-Coppermine)
??b£©±¼ÌÚ3£ºÑ¡ÔñPentium-III/Celeron(Coppermine)/Pentium-III Xeon
??c£©±¼ÌÚ4£¯±¼ÌÚD£¯ÈüÑïD£ºÑ¡ÔñPentium-4/Celeron(P4-based)/Pentium-4 M/older Xeon
??d£©¿áî£2£ºÑ¡ÔñCore 2/newer Xeon
??×¢Ò⣺Èç¹ûÄãµÄCPUÊÇÈüÑÈüÑïD³ýÍ⣩£¬Äã±ØÐëÏÈÈ·ÈÏËüµ½µ×ÊÇ»ùÓÚP2£¬P3»¹ÊÇP4µÄ£¬Ò»°ãÀ´½²Ö÷Ƶ¸ßÓÚ1GµÄÊÇ»ùÓÚP4µÄ£¬¸ßÓÚ500Mµ«Ð¡ÓÚ1GµÄÊÇ»ùÓÚP3µÄ£¬ÆäËüµÄÊÇ»ùÓÚP2µÄ¡£ÁíÍ⣬־ǿ´¦ÀíÆ÷ÄãÒ²ÒªÇø·ÖÊÇ»ùÓÚP3£¬P4»òÕßÊÇCore 2¡£
??
??4£©Processor type and features-->Generic x86 support
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_X86_GENERICºê£¬Ä¿µÄÊÇÕë¶Ôx86Ìåϵ½á¹¹½øÐÐÒ»°ãÓÅ»¯¡£±ÈÈ磬µ± CONFIG_X86_GENERICºê¶¨ÒåµÄÇé¿öÏ£¨µ±È»CONFIG_X86_TSCºêÒ²Òª¶¨Ò壬Õâ¸öÈ¡¾öÓÚÇ°ÃæProcessor familyµÄÑ¡Ôñ¡££©£¬ÄÚºËÖеÄget_cycles()º¯Êý»áʹÓÃTSC(time stamp counter)»ñÈ¡cyclesÖµ¡£Õâ¸öÑ¡ÏîÒ»¶¨Òª¹´Ñ¡ÉÏ¡£
??
??5£©Processor type and features-->Maximum number of CPUs
??Õâ¸öÌõÄ¿ÊÇÒ»¸öÊý×ֵĺ꣨NR_CPUS£¬·¶Î§Îª2£255£©£¬¸ÃÊý×Ö¾ö¶¨ÄÚºË×î¶àÖ§³ÖµÄÂß¼CPUÊýÁ¿¡£Ç¡µ±µØÉ趨¸ÃÊý×Ö¿ÉÒÔʹÄãµÄÄں˽ÚʡһЩÄڴ棬ÕâÊÇÒòΪÄÚºËÖÐÓÐÐí¶àÊý¾Ý½á¹¹ÊǸù¾ÝNR_CPUSµÄ´óСÀ´¹Ì¶¨·ÖÅä¿Õ¼äµÄ£¬¼´Ê¹ÄãÏÖÓеÄÂß¼CPUÉÙÓÚNR_CPUS£¬ÕâЩ¿Õ¼äÒ²»á±»·ÖÅä³öÀ´´Ó¶øÔì³ÉÀË·Ñ¡£ÈçºÎÈ·¶¨ÄãÓжàÉÙ¸öÂß¼CPUÄØ£¿¾ÙÀýÀ´Ëµ°É£º±ÈÈçÄãµÄϵͳÊǵ¥CPU£¬µ«ÊÇÖ§³Ö³¬Ị̈߳¨Hyper£threading£©£¬ÄÇôÂß¼CPUÊýÁ¿Îª 2£»ÔÙ±ÈÈç˵ÄãµÄϵͳÊÇË«CPU£¬Ã¿¸öCPUÓÖÖ§³ÖË«ºË£¬ÄÇôÂß¼CPUÊýÁ¿Îª4¡£Ò»°ãÀ´Ëµ£¬´ó¼ÒÓ¦¸Ã°ÑÕâ¸öÊýÖµÉ趨Ϊ´óÓÚµÈÓÚÄãϵͳµÄÂß¼CPUÊý¡£¿¼Âǵ½´ó¶àÊýÈËÓ¦¸Ã»¹ÊÇʹÓõ¥CPUϵͳ£¬ÎÒÍƼö´ó¼Ò½«Õâ¸öÖµÉ趨Ϊ4£¬ÒòΪĿǰ¸ö±ðINTELµÄCPUͬʱ֧³ÖË«ºËÓ볬Ị̈߳¬ÁíÍâINTEL»¹ÍƳöÁËËĺËÐĵÄCPU£¬AMDÓ¦¸ÃÒ²»áºÜ¿ìÍƳöËĺËÐÄCPU£¬ËùÒÔ½«Õâ¸öÖµÉ趨Ϊ4ÊÇΪÁ˸ø²»¾ÃµÄδÀ´Éϸö±£ÏÕͬʱ¶ÔÓÚÉÙÓÚ4¸öÂß¼CPUµÄÅóÓÑÓÖ²»»áÀË·ÑÄãÌ«¶àµÄÄÚ´æ¡£
??
??6£©Processor type and features-->SMT (Hyperthreading) scheduler support
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_SCHED_SMTºê¡£¶¨ÒåËüµÄÄ¿µÄÊÇΪÁ˶ÔÖ§³Ö³¬Ï̵߳ÄCPUÌṩÄܺõĵ÷¶È¹¦ÄÜ¡£ÎÒ¾ÙÀý˵Ã÷һϣº±ÈÈçÒ»¸öϵͳÓÐÁ½¸öCPU£¬Ã¿¸öCPUÓÖÖ§³Ö³¬Ị̈߳¬ÄÇôϵͳÖÐÓÐËĸöÂß¼CPU£¬ÎÒÃǽ«Õâ¸öËĸöCPU¼ÇΪC00, C01, C10, C11£¬ÆäÖÐC00ÓëC01ÊÇÒ»¸öÎïÀíCPUÉϵÄÁ½¸öÓ²¼þỊ̈߳¬¶øC10ÓëC11ÔòÊÇÁíÒ»¸öÎïÀíCPUÉϵÄÁ½¸öÓ²¼þÏ̡߳£¼ÙÉèijһ¸öʱ¿ÌϵͳÖÐÓÐÁ½¸öÏß³ÌÔÚÖ´ÐУ¬ÔÚûÓж¨ÒåCONFIG_SCHED_SMTºêµÄÇé¿öÏÂÄں˺ܿÉÄܻὫÕâÁ½¸öÏ̷ֱ߳ðµ÷¶Èµ½C00ÓëC01ÉÏÈ¥£¬µ«ÕâÊDz»ÓÅ»¯µÄ£¬ÒòΪC00Óë C01ÊÇÒ»¸öÎïÀíCPUÉϵÄÁ½¸öÓ²¼þỊ̈߳¬ËüÃǹ²ÏíÁËÐí¶àÓ²¼þ×ÊÔ´£¬µ¼ÖÂÁ½¸öÏß³ÌÔËÐÐʱ²¢²»Äܳä·Ö·¢»ÓÕâ¸öϵͳµÄ×ÊÔ´ÓÅÊÆ£»¶ø¶¨ÒåÁË CONFIG_SCHED_SMTºêµÄÇé¿öÏ£¬Äں˵ĵ÷¶ÈÆ÷¾Í»á½«ÕâÁ½¸öÏ̵߳÷¶Èµ½Î»ÓÚ²»Í¬ÎïÀíCPUµÄÂß¼CPUÉÏ£¬±ÈÈçC00ÓëC10ÉÏ¡£
??Õ§Ò»¿´ËƺõÖ»ÒªÄãµÄCPUÖ§³Ö³¬Ị̈߳¬ÄÇôÄã¾ÍÓ¦¸Ã¹´Ñ¡ÕâÒ»Ïµ«ÊÇÎÒÈÏΪ²¢²»Ò»¶¨ÕâÑù¡£±ÈÈçÄãµÄϵͳÊǵ¥CPU²¢ÇÒÖ§³Ö³¬Ị̈߳¬ÄÇôÕâ¸öʱºò CONFIG_SCHED_SMTºê¶ÔÓÚÌá¸ßµ÷¶ÈЧ¹û²¢Ã»ÓÐʲôÒâÒ壨µ±È»Ç°ÌáÊÇÎÒ¶ÔÄں˵÷¶ÈÆ÷µÄÀí½âÎÞÎóµÄ»°£º£©£©£¬¶øÇÒ¶¨Òå CONFIG_SCHED_SMTºê»¹»á¶Ôµ÷¶ÈÔö¼Ó¶îÍâµÄ¿ªÏú¡£
??ÎҵĽ¨ÒéÊÇ£ºÔÚÄãµÄCPUÖ§³Ö³¬Ï̵߳ÄÇ°ÌáÏ£¬Ö»Óе±ÄãµÄϵͳÓжà¸öCPU»òÕßÖ§³Ö¶àºËµÄʱºò²ÅÓбØÒª¹´Ñ¡ÕâÒ»Ïî¡£
??
??7£©Processor type and features-->Multi-core scheduler support
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_SCHED_MCºê¡£ËüµÄ×÷ÓúÜÀàËÆÓÚÇ°ÃæÌáµ½µÄCONFIG_SCHED_SMT£¬Ö»²»¹ýËüÕë¶Ô¶àºË£¨multi-core£©¡£ÎҵĽ¨ÒéÊÇÖ»ÓÐÄãµÄϵͳӵÓжà¸öÎïÀíCPUʱ²ÅÓбØÒª¹´Ñ¡¡£±ÈÈçÎÒ¼ÒÀïµÄ»úÆ÷CPUΪµ¥AMD Athlon 64 X2 4200+£¬ËäÈ»ÊÇË«ºË£¬µ«Ö»ÓÐÒ»¸öÎïÀíCPU£¬ÎÒ¾ÍûÓбØÒª¶¨ÒåÕâ¸öºê¡£
??
??8£©Processor type and features-->Preemption Model
??ÕâÊÇÒ»¸öµ¥Ñ¡ÌõÄ¿¡£ËüÊÇÒ»Ìõ¶Ô×ÀÃæÏìÓ¦ÄÜÁ¦ÓкÜÖØÒªÒâÒåµÄÑ¡ÏÎÒÇ¿ÁÒ½¨Òé´ó¼ÒÑ¡ÔñPreemptible Kernel (Low-Latency Desktop) £¬Ñ¡ÖÐÕâÏî»á¶¨ÒåCONFIG_PREEMPTºê£¬±íʾ¸ÃÄں˽«Ö§³ÖÇÀռʽÄںˣ¨Preemptible Kernel £©ÌØÐÔ¡£ÎªÁËÍ»³öËüµÄÖØÒªÐÔ£¬ÎÒÏÂÃæͨ¹ýÒ»¸öÀý×Ó¼òµ¥½éÉÜÒ»ÏÂÇÀռʽÄں˵ĸÅÄ¼ÙÉèijϵͳÖУ¨¼Ù¶¨Ö»ÓÐÒ»¸öÂß¼CPU£©ÓÐÁ½¸öÏß³ÌÔÚÔËÐУ¬Ò»¸ö½ÐÏß³Ì H£¬Ò»¸ö½ÐÏß³ÌL£¬Ïß³ÌHµÄ¶¯Ì¬ÓÅÏȼ¶Òª±ÈÏß³ÌL¸ß£¬ÔÚijһʱ¿Ì£¬Ïß³ÌHÓÉÓڵȴý¼üÅÌÏìÓ¦½øÈëÁË×èÈû״̬£¬ÕâʱÄں˽«»áµ÷¶ÈÏß³ÌL½«ÆäͶÈëÔËÐУ¬¶øÔÙ¼ÙÉèÔÚÏß³ÌLÔËÐеĹý³ÌÖÐÓÉÓÚijÖÖÔÒò½øÈëÁËÄں˿ռ䣨ÕâÀïÖ÷ÒªÖ¸ÓÉÓÚϵͳµ÷ÓûòÕßÒì³££©£¬¶øÇ¡ÇÉÔÚL½øÈëÁËÄÚºËÖ®ºóÓû§°´ÏÂÁ˼üÅÌ£¬¼üÅÌÖжϵ¼ÖÂÏß³ÌH´Ó×èÈû״̬½øÈëÁ˾ÍÐ÷״̬£¬ÄÇô°´ÕÕÕý³£µÄÂß¼´ËʱӦ¸ÃÁ¢¿Ì½«CPU½»¸øÏß³ÌH£¨ÒòΪÏß³ÌHµÄ¶¯Ì¬ÓÅÏȼ¶¸ß£©£¬´Ó¶øÈÃÏß³ÌHÁ¢¿Ì½øÐÐÓû§°´¼üºóµÄ²Ù×÷´¦Àí¡£Õâ¸öʱºò£¬Èç¹ûϵͳ֧³ÖÇÀռʽÄÚºËÌØÐԵĻ°£¬ÄÇôlinuxȷʵ»áÏñ¸Õ²ÅµÄÂß¼ÄÇÑù×ö£¬µ«ÊÇÈç¹û²»Ö§³ÖÇÀռʽÄÚºËÌØÐԵĻ°£¬ÄÇôÏß³ÌH½«ÎÞ·¨Á¢¿ÌµÃµ½Ö´ÐУ¬Ëü±ØÐëÒªµÈµ½Ïß³ÌLÍê³ÉÁËÔÚÄں˿ռäÖеÄËùÓй¤×÷²¢·µ»ØÓû§¿Õ¼äµÄÇ°Ò»¿Ì²ÅÄܵõ½µ÷¶È£¬Õâ¾Í»á¶ÔÏß³ÌHÔì³ÉÒ»¸öµ÷¶ÈÉϵÄÑÓ³Ù£¬ÕâÖÖÑÓ³Ù×î´ó¿ÉÄÜ´ïµ½¼¸°ÙºÁÃëÖ®¶à£¬¶ø¼¸°ÙºÁÃëµÄÑÓʱ¿ÉÄÜÈÃÈ˲úÉúÏìÓ¦³Ù¶ÛµÄ¸Ð¾õ¡£Òò´Ë¶ÔÓÚÒÔÏìÓ¦ÄÜÁ¦ÎªÖØÒªÖ¸±êµÄ×ÀÃæϵͳÀ´Ëµ£¬ÇÀռʽÄÚºËÌØÐÔÊǺÜÖØÒªµÄ£¨¾ÝÎÒËùÖªwindows Óëmac os xµÄÄں˶¼ÊôÓÚÇÀռʽÄںˣ©£¬Òò´Ë¼«Á¦½¨Òé´ó¼ÒÑ¡ÖÐÕâÏî¡£
??ÇÀռʽÄÚºËÌØÐÔÊÇ´Ó2.6.xÄں˿ªÊ¼Óеģ¬ÎÒ´Ófedora core 2Ò»Ö±µ½fedora core 6ÒÔ¼°ubuntu 6.10×Ô¼º±àÒëµÄÄں˶¼¿ªÆôÕâ¸öÌØÐÔ£¬´ÓÀ´Ã»ÓÐÓöµ½¹ýÈκÎÎȶ¨ÐÔ·½ÃæµÄÎÊÌ⣬ËùÒÔÇë´ó¼Ò·ÅÐÄ¡£ÁíÍ⣬ÔÙ¶à˵һ¾ä£¬²»Òª°ÑÇÀռʽÄÚºËÓëÇÀռʽ¶àÈÎÎñ£¨preemptive multitasking£©»ìΪһ̸£¬linux´Ó×ʼ¾ÍÊÇÖ§³ÖÇÀռʽ¶àÈÎÎñµÄ¡£
??
??9£©Processor type and features-->Preempt The Big Kernel Lock
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_PREEMPT_BKLºê¡£¶¨Òå¸ÃºêÊÇΪÁËÔÚijÏß³ÌÕ¼ÓдóÄÚºËËø£¨Big Kernel Lock£©µÄʱºòÈÔÈ»¿ÉÒÔ±»ÆäËü¸ßÓÅÏȼ¶Ïß³ÌÇÀÕ¼µ÷¶È¡£Õâ¸öÌØÐÔͬÑùÊÇΪÁËÌá¸ß×ÀÃæϵͳµÄÏìÓ¦ÄÜÁ¦£¬½¨Òé¹´Ñ¡¡£
??
??10£©Processor type and features-->High Memory Support
??ÕâÊÇÒ»¸öµ¥Ñ¡ÌõÄ¿¡£Ä¿µÄÊÇÓÃÓÚÅäÖÃlinuxÄں˶Ôhigh memoryµÄÖ§³Ö¡£Õâ¸öÌõÄ¿½âÊÍÆðÀ´±È½ÏÂé·³£¬ÎҾͲ»Ï¸ËµÁË¡£ÎҵĽ¨ÒéÊÇ£ºÈç¹ûÄãµÄÎïÀíÄÚ´æСÓÚµÈÓÚ896MB£¬²¢ÇÒÔÚ¶ÌÆÚÄÚûÓÐÉý¼¶ÄÚ´æµÄ¿ÉÄÜÐԵĻ°£¬Äã¾ÍÑ¡Ôñoff£»Èç¹ûÄÚ´æ´óÓÚ896MB»òÕß˵ÓпÉÄÜÉý¼¶µ½´óÓÚ896MBÄÚ´æµÄ»°£¬²¢ÇÒСÓÚ4GB£¬ÄÇôѡÔñ4GB£»Èç¹ûÄãµÄÄÚ´æ´óÓÚ4GBµÄ»°£¬ÔÔòÉÏÄãÓ¦¸ÃÑ¡Ôñ64GB£¬µ«ÊÇΪÁ˳ä·ÖÀûÓÃÄãµÄϵͳ×ÊÔ´£¬ÕâÖÖÇé¿öÎÒ»¹Êǽ¨ÒéÄã°²×°x86_64°æ±¾µÄubuntu¡£
??
??11£©Processor type and features-->Allocate 3rd-level pagetables from highmem
??¸ÃÌõĿΪy»òÕßn£¬Îªyʱ¶¨ÒåCONFIG_HIGHPTEºê¡£Õâ¸öºêµÄ¹¦ÄܽâÊÍÆðÀ´Ò²±È½ÏÂé·³£¬ÎÒÒ²¾Í²»Ï¸ËµÁË¡£µ«×¢ÒâÕâ¸öºêÖ»ÓÐÔÚÇ°Ò»ÌõÄ¿Ñ¡ÔñÁË 4GB»òÕß64GB²ÅÓÐÒâÒå¡£ÎҵĽ¨ÒéÊÇ£ºÈç¹ûÄãµÄÎïÀíÄÚ´æÊýÁ¿³¬³ö896MB²»ÊǺܶàµÄʱºò¾Í²»ÒªÑ¡ÖÐÕâÏ±ÈÈç˵ֻÓÐ1GBÄÚ´æµÄʱºò¾ÍÎÒ¾õµÃ¾ÍûÓбØҪѡ£»µ«Èç¹û³¬³öºÜ¶à¾ÍÓбØҪѡÖУ¬±ÈÈç˵2GBÄÚ´æµÄʱºò¡£
??
??12£©Processor type and features-->Timer frequency
??ÕâÓÖÊÇÒ»¸öµ¥Ñ¡ÌõÄ¿£¬Ñ¡ÔñÍê³Éºó×îÖջᶨÒåÒ»¸ö½ÐHZµÄºê£¬ÕâÊÇÒ»¸öÊý×ֺ꣬ĿǰÔÚ2.6.20ÄÚºËÖÐÕâ¸öÊý×Ö¿ÉÒÔΪ100£¬250£¬300Óë1000ËÄÖÖ¡£Õâ¸öÊý×Ö¾ö¶¨ÁËÿÃëÖÓʱÖÓÖжϷ¢ÉúµÄ´ÎÊý£¬Ã¿´ÎʱÖÓÖжÏÒª´¦ÀíÐí¶àÊÂÇ飬µ«¾Í×ÀÃæÐÔÄÜÀ´Ëµ£¬ËüµÄƵÂʾö¶¨ÁËÄں˶¨Ê±Æ÷ÓëÓû§¿Õ¼ä¶¨Ê±Æ÷µÄ¾«¶È¡£Õâ¸öÊý×ÖÔ½´ó£¬¶¨Ê±Æ÷µÄ¾«¶È¾ÍÔ½¸ß£¬¶øÓÃÓÚ´¦Àí¶¨Ê±Æ÷ÖжÏËùÔì³ÉµÄ¿ªÏúÒ²¾ÍÔ½´ó¡£²»¹ýΪÁËÌá¸ß×ÀÃæϵͳµÄ¶àýÌåÐÔÄÜ£¬ÎÒ½¨Òé´ó¼Ò½«ÕâÒ»ÌõÄ¿Ñ¡ÔñΪ1000 HZ¡£µ±È»£¬Èç¹ûÄã¾õµÃ×Ô¼ºµÄCPUÐÔÄܲ»¹»¸ß£¬Ò²¿ÉÒÔ¿¼ÂÇÑ¡ÔñHZ_250»òÕßHZ_300£¨µ±È»£¬ÐÔÄܹ»²»¹»¸ßûÓÐÒ»¸ö¾ø¶ÔµÄ×¼Éþ£¬ÎÒ¾õµÄ·²ÊÇÖ÷Ƶ¸ßÓÚ1GµÄCPUÑ¡Ôò1000 HZÊǺÁÎÞÎÊÌâµÄ¡££©¡£
??
??13) File systems-->Ext3 journalling file system support
??¸ÃÌõĿΪy£¬m»òÕßÊÇn¡£Õâ¸öÌõÄ¿¾ö¶¨ÁËÄں˶ÔExt3ÎļþϵͳµÄÖ§³Ö£¬Ç°ÃæÌáµ½¹ýy/m/nÈýÕߵĺ¬Òå¡£ÎҵĽ¨ÒéÊÇ£ºÈç¹û´ó¼Ò´óÁ¿Ê¹ÓÃExt3ÎļþϵͳµÄ»°£¬ÄÇôѡÔòy£¨Ò²¾ÍÊÇÔÚqconfÖдòÉ϶Թ´£¬¼´°ÑExt3µÄÖ§³Ö´úÂëÖ±½Ó±àÒë½øÄں˾µÏñ£©£»·ñÔòµÄ»°£¬Ñ¡Ôòm£¨Ò²¾ÍÊÇÔÚqconfÖдòÉÏÔ²µã£¬¼´°Ñ Ext3µÄÖ§³Ö´úÂë±àÒë³ÉÒ»¸öLKM£©¡£
??ÄÇôΪʲôÔÚ´óÁ¿Ê¹ÓÃExt3µÄʱºò¾ÍÑ¡ÔñyÄØ£¿ÕâÊÇÒòΪLKMÔÚÐèÒªµÄʱºò»á±»¼ÓÔص½Äں˿ռäµÄ·ÇÏßÐÔÓ³ÉäÇøÓò£¬Õâ¿éÇøÓòµÄÒ³±íÊǶ¯Ì¬µÄ£¬ÐèÒªÔÚ²»Í¬µÄ½ø³ÌÖ®¼ä½øÐÐͬ²½¡£¶øÇÒÒ»µ©½ø³Ì·¢ÉúÁËÇл»Ö®ºó£¬ÃèÊöÕâÒ»ÇøÓòµÄÒ³±íÏîµÄ»º´æ£¨TLB£©½«»á±»flushµô£¬´Ó¶øµ¼Ö½ø³ÌÇл»ºó·ÃÎÊÏàͬLKMµÄÐÔÄÜÓÐËù½µµÍ£»¶øÈç¹ûÖ±½Ó½«´úÂë±àÒë½øÄں˾µÏñµÄ»°£¬ÕâЩ´úÂ뽫»áλÓÚÄں˿ռäµÄÏßÐÔÓ³ÉäÇøÓò£¬¶øÕâ¿éÇøÓòµÄÒ³±íÏîÊÇÈ«¾ÖµÄ£¬Æ仺´æ²»»áÔÚ½ø³ÌÇл»ºó±»flush µô£¬´Ó¶øÌá¸ßÁËÐÔÄÜ¡£
??ͬÀí£¬Èç¹ûÄã´óÁ¿Ê¹ÓÃÆäËüÎļþϵͳ£¨±ÈÈçReiserfs£©µÄ»°£¬ÄãÒ²¿ÉÒÔ½«ÏàÓ¦µÄÌõÄ¿Ñ¡ÔñΪy¡£
??
??14£©File systems-->DOS/FAT/NT Filesystems-->NTFS file system support
??¸ÃÌõĿΪy£¬m»òÕßÊÇn¡£Õâ¸öÌõÄ¿Óë×ÀÃæÐÔÄܵ¹ÊÇûÓÐʲô¹Øϵ£¬Ö»²»¹ýÎÒ¹À¼Æ´ó¶àÊýÈ˶¼ÊÇlinux/windows˫ϵͳ£¬ÎªÁËÄܹ»·ÃÎÊNTFSÎļþϵͳ£¬¼ÇµÃÒª½«ÕâÒ»ÏîÑ¡ÔñΪm»òÕßy¡£ÁíÍ⣬ֵµÃÒ»ÌáµÄÊÇ£ºÕâ¸öÌõÄ¿ÏÂÃ滹ÓÐÒ»¸ö×ÓÌõÄ¿NTFS file system support£¬Õâ¸öÌõÄ¿Ö»ÄÜΪy»òÕßn£¬Îªyʱ¶¨ÒåNTFS_RWºê£¬¶¨Òå¸ÃºêʹµÃ¸ÃÄ£¿éÖ§³Ö¶ÔNTFSÎļþϵͳµÄдÈë²Ù×÷¡£Çë×¢Ò⣬¶ÔÓÚÔçÆÚµÄ 2.6.xÄÚºËÀ´Ëµ£¬ÕâÖÖдÈë²Ù×÷ÊDz»°²È«µÄ£»¶øÔÚ2.6.20ÀïÃæ˵ÏÖÔÚд²Ù×÷ÒѾ°²È«ÁË£¬µ«ÊÇÖ»ÄÜдÒѾ´æÔÚÁ˵ÄÎļþ£¬¶øÇÒÎļþ³¤¶È»¹²»Äܸı䣬ÕâÑùÒ»À´Óô¦Ò²²»´óÁË¡£ËùÒÔÎÒ½¨Ò鲻ҪѡÖÐÕâ¸öÌõÄ¿¡£
??
??15£©Kernel hacking-->Kernel debugging-->Use 4Kb for kernel stacks instead of 8Kb
??¸ÃÌõĿΪy»òÕßn¡£Îªyʱ¶¨ÒåCONFIG_4KSTACKSºê¡£Õâ¸öÌØÐÔÊǽ«Ã¿¸öÏ̵߳ĺËÐĶÑÕ»´Ó8Kb¼õÉÙµ½4Kb£¬¶ø·¢ÉúÍⲿÖжÏʱÔò¸øÿ¸öÂß¼ CPU×¼±¸Ò»¸öIRQ stackÒÔ²¹³¥ºËÐĶÑÕ»¼õС´øÀ´µÄËðʧ¡£Õâ¸öÌØÐԵĺô¦ÊÇÔÚϵͳÖÐÓдóÁ¿Ï̴߳æÔÚʱ½µµÍÁËÄÚ´æµÄʹÓÃÁ¿£¬ÁíÍâ¸üÖØÒªµÄÊÇÓÉÓÚi386Ìåϵ½á¹¹Ò»¸öÒ³ÃæµÄ´óС¾ÍÊÇ4Kb£¬Ã¿´Î·ÖÅä4Kb»á¼õÉÙÄÚºËÖÐpage allocator·ÖÅäÒ³ÃæʱÔì³ÉµÄÄÚ´æËéƬЧ¹û£»ËüµÄ»µ´¦ÊÇ·¢ÉúÖжÏʱ»áÓÐÇ뻶ÑÕ»µÄ¶îÍâ²Ù×÷·¢Éú¡£ÎÒÖ»½¨ÒéÄÚ´æ±È½ÏÉÙÓÖÐèҪͬʱÔËÐдóÁ¿Ï̵߳ÄÅóÓÑ¿ªÆôÕâ¸öÑ¡Ïî¡£
??
??дµ½ÕâÀÎÒÄÜÏëµ½µÄ±È½ÏÖØÒªµÄÌõÄ¿Ò²¾Í¶¼ÂÞÁгöÀ´ÁË£¬ÎÒÉîÉî¸Ðµ½×Ô¼º¶ÔlinuxÄں˵ÄÁ˽⻹ԶԶ²»¹»£¬ÓÈÆäÊǶÔÓÚ¾ßÌåÉ豸µÄÅäÖ÷½ÃæÎÒûÄÜд³öÒ»¸öÓÐÓõĽ¨Ò飬Éî¸Ð²ÑÀ¢£¡ÁíÍ⣬Çë×¢Ò⣬Æäʵ»¹ÓкܶàÒ²±ØÐëҪѡÔñµÄÌõÄ¿ÎÒ²¢Ã»ÓÐÂÞÁгöÀ´£¨±ÈÈç˵General setup-->Configure standard kernel features (for small systems)-->Enable futex support£©£¬µ«ÊÇÕâЩÌõÄ¿»òÕßÓë×ÀÃæÐÔÄܹØϵ²»´ó£¬»òÕßÔÚÇ°ÃæÌáµ½µÄ.configÎļþÄ£°åÖм¸ºõ¿Ï¶¨ÒѾѡÖÐÁË£¬ËùÒÔÎÒÒ²¾Í²»ÌáÁË¡£
??Æäʵд±¾ÎĵÄÖ÷ҪĿµÄ³ýÁË¿ÉÒÔ¸øÐÂÊÖÃÇÌṩһ¸ö²Î¿¼ÒÔÍ⣬»¹Ï£ÍûËüÄܹ»Æðµ½Å×שÒýÓñµÄ×÷Óã¬Ê¹µÃÂÛ̳ÀïµÄ¸ßÊÖÄܹ»½«×Ô¼º¶ÔÄÚºËÅäÖõÄÐĵ÷ÖÏí³öÀ´£¬ÈÃÎÒÃÇ´ó¼ÒÒ»Æðѧϰ£¬Ò»Æð½ø²½¡£