¡¡¡¡Linux´ó²¿·Ö¶¼Êǵ¥Äں˵Ä
¡¡¡¡²Ù×÷ϵͳÄں˿ÉÄÜÊÇ΢Äںˣ¬Ò²¿ÉÄÜÊǵ¥Äںˣ¨ºóÕßÓÐʱ³Æ֮ΪºêÄÚºËMacrokernel£©¡£°´ÕÕÀàËÆ·â×°µÄÐÎʽ£¬ÕâЩÊõÓﶨÒåÈçÏ£º
¡¡¡¡l ΢Äںˣ¨Microkernel kernel£©¡ª¡ªÔÚ΢ÄÚºËÖУ¬´ó²¿·ÖÄں˶¼×÷Ϊ¶ÀÁ¢µÄ½ø³ÌÔÚÌØȨ״̬ÏÂÔËÐУ¬ËüÃÇͨ¹ýÏûÏ¢´«µÝ½øÐÐͨѶ¡£ÔÚµäÐÍÇé¿öÏ£¬Ã¿¸ö¸ÅÄîÄ£¿é¶¼ÓÐÒ»¸ö½ø³Ì¡£Òò´Ë£¬Èç¹ûÔÚÉè¼ÆÖÐÓÐÒ»¸öϵͳµ÷ÓÃÄ£¿é£¬ÄÇô¾Í±ØÈ»ÓÐÒ»¸öÏàÓ¦µÄ½ø³ÌÀ´½ÓÊÕϵͳµ÷Ó㬲¢ºÍÄܹ»Ö´ÐÐϵͳµ÷ÓõÄÆäËü½ø³Ì£¨»òÄ£¿é£©Í¨Ñ¶ÒÔÍê³ÉËùÐèÈÎÎñ¡£
¡¡¡¡ÔÚÕâЩÉè¼ÆÖУ¬Î¢Äں˲¿·Ö¾³£Ö»²»¹ýÊÇÒ»¸öÏûϢת·¢Õ¾£ºµ±ÏµÍ³µ÷ÓÃÄ£¿éÒª¸øÎļþϵͳģ¿é·¢ËÍÏûϢʱ£¬ÏûÏ¢Ö±½Óͨ¹ýÄÚºËת·¢¡£ÕâÖÖ·½Ê½ÓÐÖúÓÚʵÏÖÄ£¿é¼äµÄ¸ôÀë¡££¨Ä³Ð©Ê±ºò£¬Ä£¿éÒ²¿ÉÒÔÖ±½Ó¸øÆäËüÄ£¿é´«µÝÏûÏ¢¡££©ÔÚһЩ΢Äں˵ÄÉè¼ÆÖУ¬¸ü¶àµÄ¹¦ÄÜ£¬ÈçI/OµÈ£¬Ò²¶¼±»·â×°ÔÚÄÚºËÖÐÁË¡£µ«ÊÇ×î¸ù±¾µÄ˼Ï뻹ÊÇÒª±£³Ö΢Äں˾¡Á¿Ð¡£¬ÕâÑùÖ»ÐèÒª°Ñ΢Äں˱¾Éí½øÐÐÒÆÖ²¾Í¿ÉÒÔÍê³É½«Õû¸öÄÚºËÒÆÖ²µ½ÐµÄƽ̨ÉÏ¡£ÆäËüÄ£¿é¶¼Ö»ÒÀÀµÓÚ΢Äں˻òÆäËüÄ£¿é£¬²¢²»Ö±½ÓÖ±½ÓÒÀÀµÓ²¼þ¡£
¡¡¡¡Î¢ÄÚºËÉè¼ÆµÄÒ»¸öÓŵãÊÇÔÚ²»Ó°ÏìϵͳÆäËü²¿·ÖµÄÇé¿öÏ£¬Óøü¸ßЧµÄʵÏÖ´úÌæÏÖÓÐÎļþϵͳģ¿éµÄ¹¤×÷½«»á¸ü¼ÓÈÝÒס£ÎÒÃÇÉõÖÁ¿ÉÒÔÔÚϵͳÔËÐÐʱ½«¿ª·¢³öµÄÐÂϵͳģ¿é»òÕßÐèÒªÌæ»»ÏÖÓÐÄ£¿éµÄÄ£¿éÖ±½Ó¶øÇÒѸËٵļÓÈëϵͳ¡£ÁíÍâÒ»¸öÓŵãÊDz»ÐèÒªµÄÄ£¿é½«²»»á±»¼ÓÔص½ÄÚ´æÖУ¬Òò´Ë΢Äں˾ͿÉÒÔ¸üÓÐЧµÄÀûÓÃÄÚ´æ¡£
¡¡¡¡l µ¥Äںˣ¨Monolithic kernel£©¡ª¡ªµ¥ÄÚºËÊÇÒ»¸öºÜ´óµÄ½ø³Ì¡£ËüµÄÄÚ²¿ÓÖ¿ÉÒÔ±»·ÖΪÈô¸ÉÄ£¿é£¨»òÕßÊDzã´Î»òÆäËü£©¡£µ«ÊÇÔÚÔËÐеÄʱºò£¬ËüÊÇÒ»¸ö¶ÀÁ¢µÄ¶þ½øÖÆ´óÓ³Ïó¡£ÆäÄ£¿é¼äµÄͨѶÊÇͨ¹ýÖ±½Óµ÷ÓÃÆäËüÄ£¿éÖеĺ¯ÊýʵÏֵģ¬¶ø²»ÊÇÏûÏ¢´«µÝ¡£
¡¡¡¡µ¥Äں˵ÄÖ§³ÖÕßÉù³Æ΢Äں˵ÄÏûÏ¢´«µÝ¿ªÏúÒýÆðÁËЧÂʵÄËðʧ¡£Î¢Äں˵ÄÖ§³ÖÕßÔòÈÏΪÒò´Ë¶øÔö¼ÓµÄÄÚºËÉè¼ÆµÄÁé»îÐԺͿÉά»¤ÐÔ¿ÉÒÔÃÖ²¹ÈκÎËðʧ¡£
¡¡¡¡ÎÒ²¢²»ÏëÌÖÂÛÕâЩÎÊÌ⣬µ«±ØÐë˵Ã÷·Ç³£ÓÐȤµÄÒ»µãÊÇ£¬ÕâÖÖÕùÂÛ¾³£»áÁîÈËÏ뵽ǰ¼¸ÄêCPUÁìÓòÖÐRISCºÍCISCµÄ¶·Õù¡£ÏÖ´úµÄ³É¹¦CPUÉè¼ÆÖаüº¬ÁËËùÓÐÕâÁ½ÖÖ¼¼Êõ£¬¾ÍÏñLinuxÄÚºËÊÇ΢Äں˺͵¥Ò»Äں˵ĻìºÏ²úÎïÒ»Ñù¡£LinuxÄں˻ù±¾ÉÏÊǵ¥Ò»µÄ£¬µ«ÊÇËü²¢²»ÊÇÒ»¸ö´¿´âµÄ¼¯³ÉÄںˡ£Ç°ÃæÒ»ÕÂËù½éÉܵÄÄÚºËÄ£¿éϵͳ½«Î¢Äں˵ÄÐí¶àÓŵãÒýÈëµ½LinuxµÄµ¥ÄÚºËÉè¼ÆÖС££¨Ë³±ãÌáһϣ¬ÎÒ¿¼ÂǹýÒ»ÖÖÓÐȤµÄÇé¿ö£¬¾ÍÊÇLinuxµÄÄÚºËÄ£¿éϵͳ¿ÉÒÔ½«ÏµÍ³ÄÚºËת»¯³ÉΪ¼òµ¥µÄ²»´«µÝÏûÏ¢µÄ΢ÄÚºËÉè¼Æ¡£ËäÈ»ÎÒ²¢²»Ô޳ɣ¬µ«ÊÇËüÈÔÈ»ÊÇÒ»¸öÓÐȤµÄÏë·¨¡££©
¡¡¡¡ÎªÊ²Ã´Linux±ØÈ»Êǵ¥Äں˵ÄÄØ£¿Ò»¸ö·½ÃæÊÇÀúÊ·µÄÔÒò£ºÔÚLinusµÄ¹Ûµã¿´À´£¬Í¨¹ý°ÑÄÚºËÒÔµ¥Ò»µÄ·½Ê½½øÐÐ×éÖ¯²¢ÔÚ×î³õʼµÄ¿Õ¼äÖÐÔËÐÐÊÇÏ൱ÈÝÒ×µÄÊÂÇé¡£ÕâÖÖ¾ö²ß±ÜÃâÁËÓйØÏûÏ¢´«µÝÌåϵ½á¹¹£¬¼ÆËãÄ£¿é×°ÔØ·½Ê½µÈ·½ÃæµÄÏà¹Ø¹¤×÷¡££¨ÄÚºËÄ£¿éϵͳÔÚËæºóµÄ¼¸ÄêÖÐÓÖ½øÐÐÁ˲»¶ÏµØ¸Ä½ø¡££©
¡¡¡¡ÁíÍâÒ»¸öÔÒòÊdzä×ãµÄ¿ª·¢Ê±¼äµÄ½á¹û¡£Linux¼ÈûÓпª·¢Ê±¼äµÄÏÞÖÆ£¬Ò²Ã»ÓÐÉîÊÜÊг¡Ñ¹Á¦µÄ·¢Ðнø¶È¡£ËùÓеÄÏÞÖÆÖ»Óв¢²»¹ý·ÖµÄ¶ÔÄں˵ÄÐÞ¸ÄÓëÀ©³ä¡£Äں˵ĵ¥Ò»Éè¼ÆÔÚÄÚ²¿ÊµÏÖÁ˳ä·ÖµÄÄ£¿é»¯£¬ÔÚÕâÖÖÌõ¼þϵÄÐ޸ĻòÔö¼Ó¶¼²¢²»ÔõôÀ§ÄÑ¡£¶øÇÒÎÊÌ⻹ÔÚÓÚûÓбØҪΪÁË×·ÇóÉÐδ֤ʵµÄ¿Éά»¤ÐÔµÄ΢СÔö³¤¶øÖØдLinuxµÄÄںˡ££¨LinusÔø¶à´ÎÌرðÇ¿µ÷ÁËÈçϵĹ۵㣺ΪÁËÕâµãÀûÒæ¶øËðºÄËÙ¶ÈÊDz»ÖµµÃµÄ¡££©ºóÃæÕ½ÚÖеIJ¿·ÖÄÚÈݽ«ÏêϸµÄÖØп¼Âdzä×㿪·¢Ê±¼äµÄЧ¹û¡£
¡¡¡¡Èç¹ûLinuxÊÇ´¿Î¢ÄÚºËÉè¼Æ£¬ÄÇôÏòÆäËüÌåϵ½á¹¹ÉϵÄÒÆÖ²½«»á±È½ÏÈÝÒס£Êµ¼ÊÉÏ£¬ÓÐһЩ΢Äںˣ¬ÈçMach΢Äںˣ¬¾ÍÒѾ³É¹¦µÄÖ¤Ã÷ÁËÕâÖÖ¿ÉÒÆÖ²ÐÔµÄÓŵ㡣ʵ¼ÊµÄÇé¿öÊÇ£¬LinuxÄں˵ÄÒÆÖ²ËäÈ»²»ÊǺܼòµ¥£¬µ«Ò²¾ø²»ÊDz»¿ÉÄܵģº´óÔ¼µÄÊý×ÖÊÇ£¬ÏòÒ»¸öȫеÄÌåϵ½á¹¹ÉϵĵäÐ͵ÄÒÆÖ²¹¤×÷ÐèÒª 30,000µ½60,000ÐдúÂ룬ÔÙ¼ÓÉϲ»µ½20,000ÐеÄÇý¶¯³ÌÐò´úÂë¡££¨²¢²»ÊÇËùÓеÄÒÆÖ²¶¼ÐèҪеÄÇý¶¯³ÌÐò´úÂë¡££©´ÖÂԵļÆËãһϣ¬ÎÒ¹À¼ÆÒ»¸öµäÐ͵ÄÒÆֲƽ¾ùÐèÒª50,000ÐдúÂë¡£Õâ¶ÔÓÚÒ»¸ö³ÌÐòÔ±»òÕß×î¶àÒ»¸ö³ÌÐòС×éÀ´ËµÊÇÁ¦ËùÄܼ°µÄ£¬¿ÉÒÔÔÚÒ»ÄêÖ®ÄÚÍê³É¡£ËäÈ»Õâ±È΢Äں˵ÄÒÆÖ²ÐèÒª¸ü¶àµÄ´úÂ룬µ«ÊÇLinuxµÄÖ§³ÖÕß½«»áÌá³ö£¬ÕâÑùµÄLinuxÄÚºËÒÆÖ²°æ±¾±È΢Äں˸üÄܹ»ÓÐЧµÄÀûÓõײãÓ²¼þ£¬Òò¶øÒÆÖ²¹ý³ÌÖеĶîÍ⹤×÷ÊÇÄܹ»´ÓϵͳÐÔÄܵÄÌá¸ßÉϵõ½²¹³¥µÄ¡£
¡¡¡¡ÕâÖÖÌØÊâÉè¼ÆµÄȨºâÒ²²»ÊǺÜÇáËɾͿÉÒÔ´ïµ½µÄ£¬µ¥Äں˵ÄʵÏÖ²ßÂÔ¹«È»Î¥±³ÁË´«Í³µÄ¿´·¨£¬ºóÕßÈÏΪ΢ÄÚºËÊÇδÀ´·¢Õ¹µÄÇ÷ÊÆ¡£µ«ÊÇÓÉÓÚµ¥Ò»Ä£Ê½£¨´ó²¿·ÖÇé¿öÏ£©ÔÚLinuxÖÐÔËÐÐ״̬Á¼ºÃ£¬¶øÇÒÄÚºËÒÆÖ²Ïà¶ÔÀ´Ëµ±È½ÏÀ§ÄÑ£¬µ«Ã»ÓÐÃ÷ÏÔµØ×è°³ÌÐòÔ±ÍÅÌåµÄ¹¤×÷£¬ËûÃÇÒѾÈÈÇé¸ßÕǵذÑÄں˳ɹ¦µÄÒÆÖ²µ½ÁËÏÖ´æµÄ´ó²¿·Öʵ¼ÊϵͳÖУ¬¸ü²»ÓÃ˵ÀàËÆÕÆÉÏÐ͵çÄÔµÄһЩ¿´ÆðÀ´ºÜ²»Êµ¼ÊµÄÄ¿±êÁË¡£Ö»ÒªLinuxµÄÖÚ¶àÌصãÈÔȻֵµÃÒÆÖ²£¬ÐµÄÒÆÖ²°æ±¾¾Í»á²»¶ÏÓ¿ÏÖ¡£
userhq ÓÚ 2006-11-09 20:36:05·¢±í:
¡¡¡¡Î¢ÄÚºËÓë¾ÞÄÚºËÖ®Õù
¡¡¡¡LinuxÒÔÒ»ÖÖÄÑÒÔÖÃÐŵÄËÙ¶ÈÁ÷ÐÐÆðÀ´¡£ÔÚËü¸ßËÙ·¢Õ¹µÄÀú³ÌÖУ¬²»Äܲ»Ìáµ½ÖøÃûµÄLinuxÊÇ·ñ¹ýʱ֮Õù¡£Ë«·½µ±ÊÂÈËÇ¡Ç¡¾ÍÊÇLinusºÍMinixµÄ×÷ÕßAndy Tanenbaum½ÌÊÚ¡£ÔÚÕâ´ÎÕùÂÛÖУ¬Ë«·½¶Ô²Ù×÷ϵͳµÄºÜ¶à·½Ã涼½øÐÐÁËÉîÈëµÄÌÖÂÛ£¬ÖÁ½ñ¿´À´ÈÔÈ»ºÜÓÐÒâÒå¡£
¡¡¡¡×îÏÈ·¢ÄѵÄÊÇAndy Tanenbaum½ÌÊÚ¡£1992Äê1ÔÂ29ÈÕ£¬ËûÔÚÌâΪ¡°Linux is obsolete¡±µÄE-mailÖÐ˵µ½Á˶ÔδÀ´Ò»¶Îʱ¼äÄÚ²Ù×÷ϵͳ·¢Õ¹µÄ¹Ûµã¡£
¡¡¡¡£¨1£©ÊÇ΢Äں˻¹ÊǾÞÄÚºË
¡¡¡¡´«Í³µÄ²Ù×÷ϵͳʹÓõĶ¼ÊǾÞÄں˽ṹ¡£ÕâÒâζ×ŲÙ×÷ϵͳÊÇÒ»¸öÕûÌå¿ÉÖ´ÐÐÎļþ£¬½ø³Ì¹ÜÀí¡¢ÄÚ´æ¹ÜÀíºÍÎļþϵͳȫ²¿ÔËÐÐÔÚÄÚºËÄ£¿éÖС£¶øÄ¿Ç°½ÏеÄÒ»ÖÖÉè¼Æ·½Ê½ÊÇ΢Äںˣ¬²Ù×÷ϵͳµÄ´ó¶àÊý²¿·Ö×÷Ϊ¶ÀÁ¢µÄ½ø³ÌÔËÐУ¬´æÔÚÓÚÄÚºËÒÔÍ⣬ÄÚºËͨ¹ýÏûÏ¢´«µÝ¡¢Öжϴ¦Àí¡¢µÍ¼¶½ø³Ì¹ÜÀí£¬ÒÔÖÁÓÚI/OÀ´Íê³É¸÷ÖÖ¹¤×÷¡£
¡¡¡¡ËûÈÏΪ΢ÄÚºËÃ÷ÏÔÓÅÓÚ¾ÞÄںˣ¬¶øLinuxʹÓõÄÇ¡Ç¡¾ÍÊǾÞÄںˡ£Andy Tanenbaum½ÌÊÚÈÏΪÕâÊÇÀúÊ·µÄµ¹ÍË£¬Ï൱ÓÚÔÚ20ÊÀ¼Í90Äê´úÈÔȻʹÓÃ70Äê´úµÄ¼¼Êõ¡£
¡¡¡¡£¨2£©Áé»îÐÔ(Portability)
¡¡¡¡Andy Tanenbaum½ÌÊÚ»¹ÈÏΪ£¬²»Ó¦¸Ã¶ÔÓÚÒ»ÖÖÌض¨µÄÌåϵ»ú¹¹±àд²Ù×÷ϵͳ£¬ÒòΪÌåϵ½á¹¹µÄ½ø»¯ÊǷdz£¿ìµÄ£¬ÕâÑù½«µ¼ÖÂÒÆÖ²·Ç³£À§ÄÑ¡£Ä¿Ç°µÄLinux¹ýÓÚÒÀÀµ80386¼Ü¹¹£¬¶øÕâÑùÏÔÈ»ÊDz»¶ÔµÄ¡£
¡¡¡¡Ö®ºóLinusÔڻظ´µÄÓʼþÖгÐÈÏ£¬Î¢Äں˵ÄÈ·ºÃһЩ£¬ÖÁÉÙÔÚÀíÂÛÉÏÊÇÕâÑù¡£µ«ÊÇLinusÈÏΪÔÚµ±Ê±ÓµÓÐÒ»¸ö¿ÉÓõIJÙ×÷ϵͳ¸ü¼ÓÖØÒª¡£Ëû˵£¬Èç¹ûÇ°Ò»ÄêµÄ´ºÌìGNUµÄÄÚºËHurdÍƳöµÄ»°£¬ÄÇLinux¾ÍûÓдæÔڵıØÒªÁË¡£LinusÈÏΪ£¬²»Äܽö½öÓÃÊÇ·ñÊÇ΢ÄÚºË×÷ΪÆÀÂÛ²Ù×÷ϵͳÓÅÐãÓë·ñµÄ±ê×¼¡£
¡¡¡¡Linus˵µÄÊǺÜÖØÒªµÄÒ»µã¡£Î¢ÄÚºËģʽÔÚ¿ª·¢ºÍµ÷ÊÔÉ϶¼´øÀ´ÁËÒ»¶¨µÄÄѶȣ¬ÕâÒ²ÐíÊÇHurd³Ù³Ù²»ÄÜÍƳöµÄÒ»¸öÖØÒªÔÒò¡£ÔںܾÃÒÔºóµÄ Revolution OS¼Ç¼ƬÖУ¬GNUµÄÖ÷½ÌRichard Stallman³ÐÈÏ£¬Hurd¸÷²¿·ÖÖ®¼äµÄÅäºÏºÍµ÷ÊÔÊǸö´óÎÊÌâ¡£Ò²ÐíLinusµÄÈ·ÓÐÔ¶¼û¡£ËûÈÏΪӦ¸ÃѸËÙÍƳöÄÜÓõÄϵͳ£¬¶ø²»ÊÇÔÚ×öÁË×îÓÅ»¯Éè¼ÆÖ®ºóÔÙÍƳöϵͳ£¬Õâ¸ö¹ÛµãÖµµÃÎÒÃÇÉî˼¡£
¡¡¡¡¶ÔÓÚÁé»îÐÔ£¬LinusÈÏΪֻÊÇijЩ²»Ô¸ÒâдгÌÐòµÄÈ˵Ľè¿Ú¡£ËûÈÏΪÊÂʵÉÏÓÉÓÚPOSIX±ê×¼µÄÔµ¹Ê£¬Linux±ÈMinix¸ü¾ßÁé»îÐÔ£¬ÒòΪÍù LinuxÉÏÒÆÖ²³ÌÐò»á¸ü¼Ó·½±ã¡£Áé»îÐÔÊÇÒ»¸öºÃÖ÷Ò⣬µ«ÊǹýÓ̲»¼°£¬OSÓ¦¸Ã×î´óÏ޶ȵØÀûÓüܹ¹µÄÌص㣬ÕâÑù»áÈÿª·¢±äµÃ¸ü¼ÓÈÝÒס£
¡¡¡¡ºóÀ´Ë«·½ÓÖ½øÐÐÁ˺ܶàÕùÂÛ£¬Éæ¼°µ½²»ÉÙ¼¼Êõϸ½Ú£¬Ò²Óв»ÉÙ±ðµÄÈ˲ÎÓë½øÀ´£¬ËûÃÇ˵µÄ»°¶ÔÓÚÏëѧϰOSµÄÈ˺ÜÓÐÆô·¢ÒâÒå¡£
¡¡¡¡½ñÌìµÄLinuxÒѾ²»Äܼòµ¥µØ˵ÊÇÒ»¸ö΢ÄÚºËϵͳ»ò¾ÞÄÚºËϵͳÁË£¬Ëüͬʱ¾ßÓÐÕâÁ½ÖÖϵͳµÄ²»Í¬Ìص㡣²»¹ýÎÒÃÇ¿ÉÒÔ¿´µ½£¬ÕýÊÇÏñÉÏÃæÕâÑùµÄÌÖÂÛ£¬¹¹³ÉÁ˽ñÌìÕâÒ»ÅÓ´óµÄOSÀíÂÛ»ù´¡£¬ÕâÒ²ÕýÊÇLinux×ÔÓÉ¡¢¿ª·ÅµÄ¾«ÉñËùÔÚ¡£