¡¡¡¡¹Ø¼ü´Ê£ºÇ¶Èëʽϵͳ Linux¿ª·¢Æ½Ì¨ Ñ¡ÐÍ
£ £ 1 ǶÈëʽϵͳÓëLinux
¡¡¡¡°´ÕÕµçÆø¹¤³ÌʦлáµÄÒ»¸ö¶¨Ò壺ǶÈëʽϵͳÊÇÓÃÀ´¿ØÖÆ»ò¼àÊÓ»úÆ÷¡¢×°Öûò¹¤³§µÈµÄ´ó¹æÄ£ÏµÍ³µÄÉ豸¡£¾ßÌå˵À´£¬ËüÊǵçÄÔÈí¼þºÍÓ²¼þµÄ×ÛºÏÌ壻ÊÇÒÔÓ¦ÓÃΪÖÐÐÄ£¬ÒÔ¼ÆËã»ú¼¼ÊõΪ»ù´¡£¬ÈíÓ²¼þ¿É²Ã¼õ£¬´Ó¶øÄܹ»ÊÊӦʵ¼ÊÓ¦ÓÃÖжԹ¦ÄÜ¡¢¿É¿¿ÐÔ¡¢³É±¾¡¢Ìå»ý¡¢¹¦ºÄµÈÑϸñÒªÇóµÄרÓüÆËã»úϵͳ¡£Ò»°ãÀ´Ëµ£¬Ç¶Èëʽϵͳ²»ÄÜʹÓÃͨÓÃÐͼÆËã»ú£¬¶øÇÒÔËÐеÄÊǹ̻¯µÄÈí¼þ£¬ÖÕ¶ËÓû§ºÜÄÑ»òÕß²»¿ÉÄܸıä¹Ì¼þ¡£¶øLinuxÒ²ÔçÒѳÉΪIT½ç¼ÒÓ÷»§ÏþµÄÒ»¸öÃû×Ö¡£¸ÅÀ¨ËµÀ´£¬½«LinuxÓ¦ÓÃÓÚǶÈëʽϵͳµÄ¿ª·¢ÓÐÈçÏÂһЩÓŵ㣺
¢Ù Linux×ÔÉí¾ß±¸Ò»ÕûÌ×¹¤¾ßÁ´£¬ÈÝÒ××ÔÐн¨Á¢Ç¶ÈëʽϵͳµÄ¿ª·¢»·¾³ºÍ½»²æÔËÐл·¾³£¬²¢ÇÒ¿ÉÒÔ¿çÔ½ÔÚǶÈëʽϵͳ¿ª·¢ÖзÂÕæ¹¤¾ß(ICE)µÄÕϰ¡£
¢Ú Äں˵ÄÍêÈ«¿ª·Å£¬Ê¹µÃ¿ÉÒÔ×Ô¼ºÉè¼ÆºÍ¿ª·¢³öÕæÕýµÄӲʵʱϵͳ£»¶ÔÓÚÈíʵʱϵͳ£¬ÔÚLinuxÖÐÒ²ÈÝÒ׵õ½ÊµÏÖ¡£
¢Û Ç¿´óµÄÍøÂçÖ§³Ö£¬Ê¹µÃ¿ÉÒÔÀûÓÃLinuxµÄÍøÂçÐÒéÕ»½«Æä¿ª·¢³ÉΪǶÈëʽµÄTCP/IPÍøÂçÐÒéÕ»¡£
2 ǶÈëʽϵͳÉè¼ÆµÄ¹ý³Ì
¡¡¡¡°´ÕÕǶÈëʽϵͳµÄ¹¤³ÌÉè¼Æ·½·¨£¬Ç¶ÈëʽϵͳµÄÉè¼Æ¿ÉÒÔ·Ö³ÉÈý¸ö½×¶Î£º·ÖÎö¡¢Éè¼ÆºÍʵÏÖ¡£·ÖÎö½×¶ÎÊÇÈ·¶¨Òª½â¾öµÄÎÊÌâ¼°ÐèÒªÍê³ÉµÄÄ¿±ê£¬Ò²³£³£±»³ÆÎª¡°ÐèÇó½×¶Î¡±£»Éè¼Æ½×¶ÎÖ÷ÒªÊǽâ¾öÈçºÎÔÚ¸ø¶¨µÄÔ¼ÊøÌõ¼þÏÂÍê³ÉÓû§µÄÒªÇó£»ÊµÏÖ½×¶ÎÖ÷ÒªÊǽâ¾öÈçºÎÔÚËùÑ¡ÔñµÄÓ²¼þºÍÈí¼þµÄ»ù´¡ÉϽøÐÐÕû¸öÈí¡¢Ó²¼þϵͳµÄе÷ʵÏÖ¡£ÔÚ·ÖÎö½×¶Î½áÊøºó£¬Í¨³£¿ª·¢ÕßÃæÁÙµÄÒ»¸ö¼¬ÊÖµÄÎÊÌâ¾ÍÊÇÓ²¼þƽ̨ºÍÈí¼þƽ̨µÄÑ¡Ôñ£¬ÒòΪËüµÄºÃ»µÖ±½ÓÓ°Ïì×ÅʵÏֽ׶εÄÈÎÎñÍê³É¡£
¡¡¡¡Í¨³£Ó²¼þºÍÈí¼þµÄÑ¡Ôñ°üÀ¨£º´¦ÀíÆ÷¡¢Ó²¼þ²¿¼þ¡¢²Ù×÷ϵͳ¡¢±à³ÌÓïÑÔ¡¢Èí¼þ¿ª·¢¹¤¾ß¡¢Ó²¼þµ÷ÊÔ¹¤¾ß¡¢Èí¼þ×é¼þµÈ¡£
¡¡¡¡ÔÚÉÏÊöÑ¡ÔñÖУ¬Í¨³££¬´¦ÀíÆ÷ÊÇ×îÖØÒªµÄ£¬Í¬Ê±²Ù×÷ϵͳºÍ±à³ÌÓïÑÔÒ²ÊǷdz£¹Ø¼üµÄ¡£´¦ÀíÆ÷µÄÑ¡ÔñÍùÍùͬʱ»áÏÞÖÆ²Ù×÷ϵͳµÄÑ¡Ôñ£¬²Ù×÷ϵͳµÄÑ¡ÔñÓÖ»áÏÞÖÆ¿ª·¢¹¤¾ßµÄÑ¡Ôñ¡£
3 Ó²¼þƽ̨µÄÑ¡Ôñ
¡¡¡¡3.1 ´¦ÀíÆ÷µÄÑ¡Ôñ
¡¡¡¡Ç¶ÈëʽϵͳµÄºËÐIJ¿¼þÊǸ÷ÖÖÀàÐ͵ÄǶÈëʽ´¦ÀíÆ÷¡£¾Ý²»Íêȫͳ¼Æ£¬Ä¿Ç°È«ÊÀ½çǶÈëʽ´¦ÀíÆ÷µÄÆ·ÖÖ×ÜÁ¿ÒѾ³¬¹ý1000¶àÖÖ£¬Á÷ÐÐÌåϵ½á¹¹ÓÐ30¼¸¸öϵÁС£µ«ÓëÈ«ÇòPCÊг¡²»Í¬µÄÊÇ£¬Ã»ÓÐÒ»ÖÖ΢´¦ÀíÆ÷ºÍ΢´¦ÀíÆ÷¹«Ë¾¿ÉÒÔÖ÷µ¼Ç¶Èëʽϵͳ£¬½öÒÔ32λµÄCPU¶øÑÔ£¬¾ÍÓÐ100ÖÖÒÔÉÏǶÈëʽ΢´¦ÀíÆ÷¡£ÓÉÓÚǶÈëʽϵͳÉè¼ÆµÄ²îÒìÐÔ¼«´ó£¬Òò´ËÑ¡ÔñÊǶàÑù»¯µÄ¡£
¡¡¡¡µ÷²éÉÏÊеÄCPU¹©Ó¦ÉÌ£¬ÓÐЩ¹«Ë¾ÈçMotorola¡¢Intel¡¢AMDºÜÓÐÃûÆø£¬¶øÓÐһЩСµÄ¹«Ë¾£¬ÈçQED(Santa Clara.CA)ËäÈ»ÃûÆøºÜС£¬µ«Ò²Éú²úºÜÓÅÐãµÄ΢´¦ÀíÆ÷¡£ÁíÍ⣬ÓÐһЩ¹«Ë¾£¬ÈçARM¡¢MIPSµÈ£¬Ö»Éè¼Æµ«²¢²»Éú²úCPU£¬ËûÃǰÑÉú²úȨÊÚÓèÊÀ½ç¸÷µØµÄ°ëµ¼ÌåÖÆÔìÉÌ¡£ARMÊǽüÄêÀ´ÔÚǶÈëʽϵͳÓÐÓ°ÏìÁ¦µÄ΢´¦ÀíÆ÷ÖÆÔìÉÌ£¬ARMµÄÉè¼Æ·Ç³£ÊÊÓÃÓÚСµÄµçÔ´¹©µçϵͳ¡£AppleÔÚNewtonÊÖ³Ö¼ÆËã»úÖÐʹÓÃARM£¬ÁíÍâÓм¸¿îÊý×ÖÎÞÏߵ绰ҲÔÚʹÓÃARM¡£
¡¡¡¡Éè¼ÆÕßÔÚÑ¡Ôñ´¦ÀíÆ÷ʱҪ¿¼ÂǵÄÖ÷ÒªÒòËØÓУº
¢Ù ´¦ÀíÐÔÄÜ¡£Ò»¸ö´¦ÀíÆ÷µÄÐÔÄÜÈ¡¾öÓÚ¶à¸ö·½ÃæµÄÒòËØ£¬ÈçʱÖÓÆµÂÊ£¬ÄÚ²¿¼Ä´æÆ÷µÄ´óС£¬Ö¸ÁîÊÇ·ñ¶ÔµÈ´¦ÀíËùÓеļĴæÆ÷µÈ¡£¶ÔÓÚÐí¶àÐèÓô¦ÀíÆ÷µÄǶÈëʽϵͳÉè¼ÆÀ´Ëµ£¬Ä¿±ê²»ÊÇÔÚÓÚÌôÑ¡ËÙ¶È×î¿ìµÄ´¦ÀíÆ÷£¬¶øÊÇÔÚÓÚѡȡÄܹ»Íê³É×÷ÒµµÄ´¦ÀíÆ÷ºÍI/O×Óϵͳ¡£Èç¹ûÊÇÃæÏò¸ßÐÔÄܵÄÓ¦ÓÃÉè¼Æ£¬ÄÇô½¨Ò鿼ÂÇijЩеĴ¦ÀíÆ÷£¬Æä¼Û¸ñÏà¶ÔµÍÁ®£¬ÈçIBMºÍMotorola Power PC¡£
¢Ú ¼¼ÊõÖ¸±ê¡£µ±Ç°£¬Ðí¶àǶÈëʽ´¦ÀíÆ÷¶¼¼¯³ÉÁËÍâΧÉ豸µÄ¹¦ÄÜ£¬¼õÉÙÁËоƬµÄÊýÁ¿£¬½µµÍÁËÕû¸öϵͳµÄ¿ª·¢·ÑÓ᣿ª·¢ÈËÔ±Ê×ÏÈ¿¼ÂǵÄÊÇ£¬ÏµÍ³ËùÒªÇóµÄһЩӲ¼þÄÜ·ñÎÞÐè¹ý¶àµÄ½ººÏÂß¼(GL£¬Glue Logic)¾Í¿ÉÒÔÁ¬½Óµ½´¦ÀíÆ÷ÉÏ¡£Æä´ÎÊÇ¿¼ÂǸô¦ÀíÆ÷µÄһЩ֧³ÖоƬ£¬ÈçDMA¿ØÖÆÆ÷£¬ÄÚ´æ¹ÜÀíÆ÷£¬ÖжϿØÖÆÆ÷£¬´®ÐÐÉ豸¡¢Ê±ÖӵȵÄÅäÌס£
¢Û ¹¦ºÄ¡£Ç¶Èëʽ΢´¦ÀíÆ÷×î´ó²¢ÇÒÔö³¤×î¿ìµÄÊг¡ÊÇÊÖ³ÖÉ豸¡¢µç×Ó¼Çʱ¾¡¢PDA¡¢ÊÖ»ú¡¢GPSµ¼º½Æ÷¡¢ÖÇÄܼҵçµÈÏû·ÑÀàµç×Ó²úÆ·¡£ÕâЩ²úÆ·ÖÐÑ¡¹ºµÄ΢´¦ÀíÆ÷£¬µäÐ͵ÄÌØµãÊÇÒªÇó¸ßÐÔÄÜ¡¢µÍ¹¦ºÄ¡£Ðí¶àCPUÉú²ú³§¼ÒÒѾ½øÈëÁËÕâ¸öÁìÓò¡£½ñÌ죬Óû§¿ÉÒÔÂòµ½Ò»¿ÅǶÈëʽµÄ΢´¦ÀíÆ÷£¬ÆäËÙ¶ÈÏñ±Ê¼Ç±¾ÖеÄPentiumÒ»Ñù¿ì£»¶øËü½öʹÓÃÆÕͨµç³Ø¹©µç¼´¿É£¬²¢ÇÒ¼Û¸ñºÜ±ãÒË¡£Èç¹ûÓÃÓÚ¹¤Òµ¿ØÖÆ£¬Ôò¶ÔÕâ·½ÃæµÄ¿¼ÂǽÏÈõ¡£
¢Ü Èí¼þÖ§³Ö¹¤¾ß¡£½öÓÐÒ»¸ö´¦ÀíÆ÷£¬Ã»ÓнϺõÄÈí¼þ¿ª·¢¹¤¾ßµÄÖ§³ÖÒ²ÊDz»Ðеģ¬Òò´ËÑ¡ÔñºÏÊʵÄÈí¼þ¿ª·¢¹¤¾ß¶ÔϵͳµÄʵÏÖ»áÆðµ½ºÜºÃµÄ×÷Óá£
¢Ý ÊÇ·ñÄÚÖõ÷ÊÔ¹¤¾ß¡£´¦ÀíÆ÷Èç¹ûÄÚÖõ÷ÊÔ¹¤¾ß¿ÉÒÔ´ó´óËõСµ÷ÊÔÖÜÆÚ£¬½µµÍµ÷ÊÔµÄÄѶȡ£
¢Þ ¹©Ó¦ÉÌÊÇ·ñÌṩÆÀ¹À°å¡£Ðí¶à´¦ÀíÆ÷¹©Ó¦ÉÌ¿ÉÒÔÌṩÆÀ¹À°åÀ´ÑéÖ¤ÀíÂÛÊÇ·ñÕýÈ·£¬¾ö²ßÊÇ·ñµÃµ±¡£
3.2 Ó²¼þ²¿¼þÑ¡ÔñµÄÆäËüÒòËØ
¢Ù Éú²ú¹æÄ£¡£´òËã×ö1Ì×?¶àÌ×?»¹ÊǹæÄ£Éú²ú?Èç¹ûÉú²ú¹æÄ£±È½Ï´ó£¬¿ÉÒÔ×Ô¼ºÉè¼ÆºÍÖÆ±¸Ó²¼þ£¬ÕâÑù¿ÉÒÔ½µµÍ³É±¾¡£·´Ö®£¬×îºÃ´ÓµÚÈý·½¹ºÂòÖ÷°åºÍI/O°å¿¨¡£
¢Ú ¿ª·¢µÄÊг¡Ä¿±ê¡£Èç¹ûÏëʹ²úÆ·¾¡¿ì·¢ÊÛ£¬ÒÔ»ñµÃ¾ºÕùÁ¦£¬´ËʱҪ¾¡¿ÉÄÜÂò³ÉÊìµÄÓ²¼þ£»·´Ö®£¬¿ÉÒÔ×Ô¼ºÉè¼ÆÓ²¼þ£¬½µµÍ³É±¾¡£
¢Û Èí¼þ¶ÔÓ²¼þµÄÒÀÀµÐÔ¡£Èí¼þÊÇ·ñ¿ÉÒÔÔÚÓ²¼þûÓе½Î»µÄʱºò²¢ÐÐÉè¼Æ»òÏÈÐпª·¢¡£
¢Ü Ö»Òª¿ÉÄÜ£¬¾¡Á¿Ñ¡ÔñʹÓÃÆÕͨµÄÓ²¼þ¡£ÔÚ CPU ¼°¼Ü¹¹µÄÑ¡ÔñÉÏ£¬Ò»¸öÔÔòÊÇ£ºÖ»ÒªÓпÉÌæ´úµÄ·½°¸£¬¾¡Á¿²»ÒªÑ¡Ôñ Linux Éв»Ö§³ÖµÄÓ²¼þƽ̨¡£
4 Èí¼þƽ̨µÄÑ¡Ôñ
¡¡¡¡Í¼1ËùʾµÄǶÈëʽÈí¼þµÄ¿ª·¢Á÷³Ì£¬Ö÷񻃾¼°µ½´úÂë±à³Ì¡¢½»²æ±àÒë¡¢½»²æÁ¬½Ó¡¢ÏÂÔØµ½Ä¿±ê°åºÍµ÷ÊԵȼ¸¸ö²½Ö裬Òò´ËÈí¼þƽ̨µÄÑ¡ÔñÒ²Éæ¼°µ½ÒÔϼ¸¸ö·½Ãæ¡£
¡¡¡¡4.1 ²Ù×÷ϵͳµÄÑ¡Ôñ
¡¡¡¡(1)²Ù×÷ϵͳѡÔñÓ¦¿¼ÂǵÄÒòËØ
¡¡¡¡Ó²¼þ·½°¸È·¶¨Ö®ºó£¬²Ù×÷ϵͳµÄÑ¡Ôñ¾ÍÏà¶ÔÇáËÉÁË¡£Ó²¼þµÄ²»Í¬£¬»áÓ°Ïì²Ù×÷ϵͳµÄÑ¡Ôñ¡£µÍ¶ËÎÞMMU(Memory Management Unit£¬´æ´¢Æ÷¹ÜÀíµ¥Ôª)µÄCPU£¬ÒªÊ¹ÓÃuClinux ²Ù×÷ϵͳ£»¶øÏà¶Ô¸ß¶ËµÄÓ²¼þ£¬Ôò¿ÉÒÔÓÃÆÕͨµÄǶÈëʽ Linux ²Ù×÷ϵͳ¡£uClinux ºÍÆÕͨµÄ Linux Óи÷×ÔµÄÓÅÊÆºÍȱµã¡£¿ÉÓÃÓÚǶÈëʽϵͳÈí¼þ¿ª·¢µÄ²Ù×÷ϵͳºÜ¶à£¬µ«¹Ø¼üÊÇÈçºÎÑ¡ÔñÒ»¸öÊʺϿª·¢ÏîÄ¿µÄ²Ù×÷ϵͳ¡£¾¹ý¶àÄêµÄ¿ª·¢Êµ¼ù£¬±ÊÕßÈÏΪӦ¸Ã´ÓÒÔϼ¸µã½øÐп¼ÂÇ£º