【grub源码】【web棋盘源码】【源码屋net】qnx 源码 分析
1.LINUXç³»ç»ä»ç»
2.什么是码分系统
3.请问什么是嵌入式软件?
LINUXç³»ç»ä»ç»
åµå ¥å¼Linuxç³»ç»ç设计ä¸åºç¨
æè¦ï¼éçåµå ¥å¼Linuxç³»ç»çè¿ éåå±ï¼åµå ¥å¼Linuxå·²åå±æ为åµå ¥å¼æä½ç³»ç»çä¸ä¸ªéè¦åæ¯ãæ¬æä»ç»äºåµå ¥å¼Linuxç设计åå ç§æµè¡çåµå ¥å¼Linuxç³»ç»ã
å ³é®è¯ï¼åµå ¥å¼Linux
ä¸ãå¼è¨
åµå ¥å¼ç³»ç»(Embedded Systems)æ¯æ ¹æ®åºç¨çè¦æ±ï¼å°æä½ç³»ç»ååè½è½¯ä»¶éæäºè®¡ç®æºç¡¬ä»¶ç³»ç»ä¹ä¸ï¼ä»èå®ç°è½¯ä»¶ä¸ç¡¬ä»¶ä¸ä½åç计ç®æºç³»ç»ãåµå ¥å¼ç³»ç»åºç°äºå¹´ä»£ææï¼å®æå被ç¨äºæ§å¶æºçµçµè¯äº¤æ¢æºï¼å¦ä»å·²è¢«å¹¿æ³çåºç¨äºå·¥ä¸å¶é ãè¿ç¨æ§å¶ãé讯ã仪å¨ã仪表ã汽车ãè¹è¶ãèªç©ºãèªå¤©ãåäºè£ å¤ãæ¶è´¹ç±»äº§åçä¼å¤é¢åãåµå ¥å¼ç³»ç»å¨æ°éä¸è¿è¿è¶ è¿äºåç§éç¨è®¡ç®æºç³»ç»ï¼è®¡ç®æºç³»ç»æ ¸å¿CPUï¼æ¯å¹´å¨å ¨çèå´å ç产é大æ¦å¨äºå亿é¢å·¦å³ï¼å ¶ä¸è¶ è¿ï¼ åºç¨äºåç±»ä¸ç¨æ§å¾å¼ºçåµå ¥å¼ç³»ç»ã
ä¸è¬ç说ï¼å¡æ¯å¸¦æå¾®å¤çå¨çä¸ç¨è½¯ç¡¬ä»¶ç³»ç»é½å¯ä»¥ç§°ä¸ºåµå ¥å¼ç³»ç»ãåéç¨ç计ç®å¹³å°ç¸æ¯ï¼åµå ¥å¼ç³»ç»å¾å¾å ·æåè½åä¸ãä½ç§¯å°ãåèä½ãå¯é æ§é«ãåªè£æ§å¥½ã软硬件éæ度é«ã计ç®è½åç¸å¯¹è¾ä½çç¹ç¹ãå¤å¹´æ¥ï¼åµå ¥å¼è®¾å¤ä¸æ²¡ææä½ç³»ç»ï¼å ¶ä¸»è¦åå æäºï¼é¦å ï¼è¯¸å¦æ´è¡£æºã微波çãçµå°ç®±è¿æ ·ç设å¤ä» ä» éè¦ä¸éç®åçæ§å¶ç¨åºï¼ä»¥ç®¡çæ°éæéçæé®åæ示ç¯ï¼æ²¡æ使ç¨æä½ç³»ç»çå¿ è¦ï¼å ¶æ¬¡ï¼å®å¾å¾åªå ·ææéç硬件èµæºï¼ä¸è¶³ä»¥æ¯æä¸ä¸ªæä½ç³»ç»ã
ç¶èï¼éç硬件çåå±ï¼åµå ¥å¼ç³»ç»åå¾è¶æ¥è¶å¤æï¼æåçæ§å¶ç¨åºä¸éæ¥çå å ¥äºè®¸å¤åè½ï¼èè¿äºåè½ä¸æå¾å¤å¯ä»¥ç±æä½ç³»ç»æä¾ãäºæ¯ï¼å¨å¹´ä»£æ«æåºç°äºåµå ¥å¼æä½ç³»ç»(Embedded Operating Systems)ï¼å®çåºç°å¤§å¤§ç®åäºåºç¨ç¨åºè®¾è®¡ï¼å¹¶å¯ä»¥ææçä¿é软件质éå缩çå¼åå¨æãç®åçESä¸è¬å¹¶ä¸ä½¿ç¨æä½ç³»ç»ï¼åªå å«ä¸äºæ§å¶æµç¨ï¼ä½æ¯éçåµå ¥å¼æä½ç³»ç»å¨å¤ææ§ä¸çå¢é¿ï¼ç®åçæµç¨æ§å¶å°±ä¸è½æ»¡è¶³ç³»ç»çè¦æ±ï¼è¿æ¯å°±å¿ é¡»èè使ç¨æä½ç³»ç»åç³»ç»è½¯ä»¶ãå æ¤ï¼åµå ¥å¼æä½ç³»ç»å°±åºè¿èçã
éçEOSç广æ³åºç¨ï¼ä¸çå·²æ¨åºä¸äºåºç¨æ¯è¾æåçEOS产åãå½çº³èµ·æ¥EOSåºè¯¥å ·æ以ä¸å 个ç¹ç¹ï¼å°å·§ãå®æ¶æ§ãå¯è£ å¸ãåºå代ç ã弱交äºæ§ã强稳å®æ§åç»ä¸çæ¥å£ãç®å使ç¨æå¤çEOS产åå æ¬æï¼VxworkãQNXãPalmOSãWindowsCEãpSOSãHopen OS(å½å å¯æéå¢å ¬å¸èªä¸»ç å¶å¼å)çãå ¶ä¸ï¼Vxwork使ç¨æ为广æ³ãå¸åºå æçæé«ï¼å ¶çªåºç¹ç¹æ¯å®æ¶æ§å¼º(éç¨ä¼å 级æ¢å å轮转è°åº¦çæºå¶)ï¼é¤æ¤ä¹å¤ï¼å ¶å¯é æ§åå¯åªè£æ§ä¹ç¸å½ä¸éãQNXæ¯ä¸ç§ä¼¸ç¼©æ§æä½³çç³»ç»ï¼å ¶æ ¸å¿å ä¸å®æ¶POSIXç¯å¢åä¸ä¸ªå®æ´ççªå£ç³»ç»è¿ä¸å°ä¸å ãç¸æ¯ä¹ä¸ï¼Microsoft WinCEçæ ¸å¿ä½ç§¯åºå¤§ï¼å®æ¶æ§è½ä¹å·®å¼ºäººæï¼ä½ç±äºWindowsç³»åå好çç¨æ·çé¢å为ç¨åºåæçæçAPIï¼å¹¶æç»IEãOfficeçåºç¨ç¨åºï¼æ£éæ¸è·å¾æ´å¤§çå¸åºä»½é¢ãèä¸è¿äºåä¸åçæä½ç³»ç»ç¸æ¯ï¼Linuxå·²ç»è¶æ¥è¶åå°äººä»¬ç注æã
äºãåµå ¥å¼Linuxæ¦è¿°
Linuxæ¯ä¸ä¸ªæçè稳å®çç½ç»æä½ç³»ç»ãå°Linuxæ¤å ¥åµå ¥å¼è®¾å¤å ·æä¼å¤çä¼ç¹ãé¦å ï¼Linuxçæºä»£ç æ¯å¼æ¾çï¼ä»»ä½äººé½å¯ä»¥è·å并修æ¹ï¼ç¨ä¹å¼åèªå·±ç产åãå ¶æ¬¡ï¼Lirmxæ¯å¯ä»¥å®å¶çï¼å ¶ç³»ç»å æ ¸æå°åªæ约kBãä¸ä¸ªå¸¦æä¸æç³»ç»åå¾å½¢ç¨æ·çé¢çæ ¸å¿ç¨åºä¹å¯ä»¥åå°ä¸è¶³1MBï¼å¹¶ä¸åæ ·ç¨³å®ãå¦å¤ï¼å®åå¤æ°Unixç³»ç»å ¼å®¹ï¼åºç¨ç¨åºçå¼åå移æ¤ç¸å½å®¹æãåæ¶ï¼ç±äºå ·æè¯å¥½çå¯ç§»æ¤æ§ï¼äººä»¬å·²æå使Linuxè¿è¡äºæ°ç¾ç§ç¡¬ä»¶å¹³å°ä¹ä¸ã
ç¶èï¼Linux并éä¸é¨ä¸ºå®æ¶æ§åºç¨è设计ï¼å æ¤å¦ææ³å¨å¯¹å®æ¶æ§è¦æ±è¾é«çåµå ¥å¼ç³»ç»ä¸è¿è¡Linuxï¼å°±å¿ 须为ä¹æ·»å å®æ¶è½¯ä»¶æ¨¡åãè¿äºæ¨¡åè¿è¡çå æ ¸ç©ºé´æ£æ¯æä½ç³»ç»å®ç°è¿ç¨è°åº¦ãä¸æå¤çåç¨åºæ§è¡çé¨åï¼å æ¤é误ç代ç å¯è½ä¼ç ´åæä½ç³»ç»ï¼è¿èå½±åæ´ä¸ªç³»ç»çå¯é æ§å稳å®æ§ãLinuxçä¼å¤ä¼ç¹è¿æ¯ä½¿å®å¨åµå ¥å¼é¢åè·å¾äºå¹¿æ³çåºç¨ï¼å¹¶åºç°äºæ°éå¯è§çåµå ¥å¼Linuxç³»ç»ãå ¶ä¸æ代表æ§çå æ¬ï¼uClinuxãETLinuxãThinLinuxãLOAFçãETLinuxé常ç¨äºå¨å°åå·¥ä¸è®¡ç®æºï¼å°¤å ¶æ¯PCï¼æ¨¡åãThinLinuxé¢åä¸ç¨çç §ç¸æºæå¡å¨ãX-æ§å¶å¨ãMP3ææ¾å¨åå ¶å®ç±»ä¼¼çåµå ¥å¼åºç¨ãLOAFæ¯Linux On A Floppyç缩ç¥è¯ï¼å®è¿è¡å¨å¹³å°ä¸ã
ä¸ãLinuxä½ä¸ºåµå ¥å¼æä½ç³»ç»çä¼å¿
Linuxä½ä¸ºåµå ¥å¼æä½ç³»ç»çä¼å¿ä¸»è¦æ以ä¸å ç¹ï¼
1ã å¯åºç¨äºå¤ç§ç¡¬ä»¶å¹³å°ãLinuxå·²ç»è¢«ç§»æ¤å°å¤ç§ç¡¬ä»¶å¹³å°ï¼è¿å¯¹äºç»è´¹ï¼æ¶é´åéå¶çç 究ä¸å¼å项ç®æ¯å¾æå¸å¼åçãååå¯ä»¥å¨æ åå¹³å°ä¸å¼åå移æ¤å°å ·ä½ç硬件ä¸ï¼å å¿«äºè½¯ä»¶ä¸ç¡¬ä»¶çå¼åè¿ç¨ãLinuxéç¨ä¸ä¸ªç»ä¸çæ¡æ¶å¯¹ç¡¬ä»¶è¿è¡ç®¡çï¼ä»ä¸ä¸ªç¡¬ä»¶å¹³å°å°å¦ä¸ä¸ªç¡¬ä»¶å¹³å°çæ¹å¨ä¸ä¸å±åºç¨æ å ³ãLinuxå¯ä»¥éæå°é ç½®ï¼ä¸éè¦ä»»ä½ç许å¯è¯æå家çåä½å ³ç³»ï¼æºä»£ç å¯ä»¥å è´¹å¾å°ãè¿ä½¿å¾éç¨Linuxä½ä¸ºæä½ç³»ç»ä¸ä¼éå°ä»»ä½å ³äºçæççº çº·ã毫æ çé®ï¼è¿ä¼èç大éçå¼åè´¹ç¨ãæ¬èº«å ç½®ç½ç»æ¯æï¼èç®ååµå ¥å¼ç³»ç»å¯¹ç½ç»æ¯æè¦æ±è¶æ¥è¶é«ãLinuxçé«åº¦æ¨¡åå使添å é¨ä»¶é常容æã
2ã Linuxæ¯ä¸ä¸ªåUnixç¸ä¼¼ã以å æ ¸ä¸ºåºç¡çãå ·æå®å ¨çå å访é®æ§å¶ï¼æ¯æ大é硬件(å æ¬Xï¼AlphaãARMåMotorolaçç°æç大é¨åè¯ç)çç¹æ§çä¸ç§éç¨æä½ç³»ç»ãå ¶ç¨åºæºç å ¨é¨å ¬å¼ï¼ä»»ä½äººå¯ä»¥ä¿®æ¹å¹¶å¨GUNéç¨å ¬å ±è®¸å¯è¯(GNU General Public License)ä¸åè¡ãè¿æ ·ï¼å¼å人åå¯ä»¥å¯¹æä½ç³»ç»è¿è¡å®å¶ï¼éåºå ¶ç¹æ®éè¦ã
3ã Linux带æUnixç¨æ·çæçå®åçå¼åå·¥å ·ï¼å ä¹ææçUnixç³»ç»çåºç¨è½¯ä»¶é½å·²ç§»æ¤å°äºLinuxä¸ãLinuxè¿æä¾äºå¼ºå¤§çç½ç»åè½ï¼æå¤ç§å¯éæ©çªå£ç®¡çå¨(X Windows)ãå ¶å¼ºå¤§çè¯è¨ç¼è¯å¨GCCï¼C++çä¹å¯ä»¥å¾å®¹æå¾å°ï¼ä¸ä½æçå®åï¼èä¸ä½¿ç¨æ¹ä¾¿ã
åãåµå ¥å¼Linuxç建ç«
å®æ´çåµå ¥å¼Linux解å³æ¹æ¡åºå æ¬åµå ¥å¼Linuxæä½ç³»ç»å æ ¸ãè¿è¡ç¯å¢ãå¾å½¢åçé¢ååºç¨è½¯ä»¶çãç±äºåµå ¥å¼è®¾å¤çç¹æ®è¦æ±ï¼åµå ¥å¼Linux解å³æ¹æ¡ä¸çå æ ¸ãç¯å¢ãGUIçé½ä¸æ åLinuxæå¾å¤§ä¸åï¼å ¶ä¸»è¦æææ¯å¦ä½å¨çå°çFLASHãROMåå åä¸å®ç°é«è´¨éçä»»å¡å®æ¶è°åº¦ãå¾å½¢åæ¾ç¤ºãç½ç»éä¿¡çåè½ã
1ã ç²¾ç®å æ ¸
Linuxå æ ¸æèªå·±çç»æä½ç³»ï¼å ¶ä¸è¿ç¨ç®¡çãå å管çåæ件系ç»æ¯å ¶æåºæ¬ç3个åç³»ç»ãå¾1ç®å表示äºå®çæ¡æ¶ãç¨æ·è¿ç¨å¯ç´æ¥éè¿ç³»ç»è°ç¨æè å½æ°åºæ¥è®¿é®å æ ¸èµæºãæ£å 为Linuxå æ ¸å ·æè¿æ ·çç»æï¼å æ¤ä¿®æ¹å æ ¸æ¶å¿ 须注æå个åç³»ç»ä¹é´çåè°ã
åµå ¥å¼Linuxå æ ¸ä¸è¬ç±æ åLinuxå æ ¸è£åªèæ¥ãç¨æ·å¯æ ¹æ®éæ±é 置系ç»ï¼åé¤ä¸éçæå¡åè½ãæ件系ç»å设å¤é©±å¨ãç»è¿è£åªãå缩åçç³»ç»å æ ¸ä¸è¬åªækå·¦å³ï¼ååéååµå ¥å¼è®¾å¤ãåæ åLinuxä¸åçæ¯åµå ¥å¼Linuxå¿ é¡»è¦å®ç°ä»FLASHæROMçå¯å¨ãæ åLinuxå¯å¨ä»£ç å®ç°äºç³»ç»åå§ååä»è½¯çã硬çOçåºå¼å¯¼å æ ¸ãåµå ¥å¼Linuxä¸è¬ä¿åå¨FLASHæROMä¸ï¼æ åLILOæ æ³å¼å¯¼ãå¨æ¯æç´æ¥ä»FLASH设å¤å¼å¯¼çç³»ç»ä¸ï¼å¦åæå ¬å¸çuClinuxï¼å¼å¯¼ç¨åºä¸»è¦å®æ对硬件系ç»çåå§åå·¥ä½åæä½ç³»ç»ç解åã移ä½å·¥ä½ãå¨ä¸æ¯æç´æ¥ä»FLASHå¼å¯¼çç³»ç»ä¸ï¼FLASH设å¤åªè½ä½ä¸ºéå¼å¯¼ç£ç使ç¨ãæ¤æ¶ï¼å¯éç¨å ä»ç¡¬çæ软çå è½½ä¸ä¸ªå°æä½ç³»ç»ï¼å¦åµå ¥å¼DOSï¼ç¶ååæ§è¡"Loadlin"å è½½ç¨åºä»FLASHå¼å¯¼åµå ¥å¼Linuxã
对æ åLinuxçä¿®æ¹ä¸»è¦æ¯èæå ååè°åº¦ç¨åºé¨åçæ¹å¨ãå 为æ åLinuxç³»ç»ä½¿ç¨èæå å管ççç®çæ¯ä¸ºäºè½åæ¶è¿è¡å¤ä¸ªè¿ç¨ï¼ä½æ¯è¿æ ·æ¯ä¸ªå¾ è¿è¡çè¿ç¨æè½åé çCPUæ¶é´çå°±åéå¶ï¼èµæºç使ç¨æçå°±ä½ãè¿æ ·å¯¹äºå®æ¶æ§è¦æ±è¾é«çåµå ¥å¼ç³»ç»æ¥è¯´ï¼å®æ¶ä»»å¡å¾å¾è¦æ±CPUå ·æå¾é«ççªåå¤çè½åï¼å³å¨æäºæ¶åéè¦æé«çå¤çæçï¼å æ¤éè¦å±è½å æ ¸çèæå å管çæºå¶ã对äºæ 硬ç设å¤çåµå ¥å¼ç³»ç»ï¼ä¸å¿ éç¨èå管çã强å®æ¶éæ±çåµå ¥å¼åºç¨å¯ä»¥éè¿ä¿®æ¹ä»»å¡è°åº¦æ¨¡åå®ç°ï¼ä¸»è¦æ¯å¨å æ ¸å设å¤é©±å¨ç¨åºä¸å å ¥äºè®¸å¤åæ¢ç¹ãå¨è¯¥ç¹å¤ï¼ç³»ç»æ£æµæ¯å¦åå¨æªå¤ççç´§æ¥ä¸æï¼æåå¥å¤ºå æ ¸çè¿è¡ï¼åæ¶å¤çä¸æãå®ç°å®æ¶æ§æå¡çä¸ä¸ªè¾å¥½çæ¹æ³æ¯å¨æ åçLinuxå æ ¸ä¸å¢å ä¸ä¸ªå®æ¶å æ ¸ï¼æ åLinuxå æ ¸ä½ä¸ºä¸ä¸ªä»»å¡è¿è¡äºå®æ¶å æ ¸ä¸ï¼å¼ºå®æ¶æ§ä»»å¡ä¹ç´æ¥è¿è¡å¨å®æ¶å æ ¸ä¸ï¼å¦RT-Linuxçã
æ件系ç»æ¯åµå ¥å¼Linuxæä½ç³»ç»å¿ ä¸å¯å°çãä½æ åLinuxæ¯æ大éçæ件系ç»ï¼å æ¤é¤äºæ»¡è¶³ç³»ç»çæ£å¸¸è¿è¡éè¦èä¿çä¸ç§å¤ï¼å ¶å®çå ¨é¨å¯ä»¥å é¤ï¼å©ç¨åæç设置é项å¯ä»¥ç§»é¤ãä¸è¬åµå ¥å¼è®¾å¤æ件系ç»ä¸»è¦ä½¿ç¨RamDiskææ¯åç½ç»æ件系ç»ææ¯ãRamDiskå¯é©»çäºFlashï¼è¿è¡æ¶å è½½å°å åä¸ã
2ã ç²¾ç®è¿è¡ç¯å¢
Linuxé常çè¿è¡ç¯å¢æç¨æ·è¿è¡ä»»ä½åºç¨çåºç¡è®¾æ½ï¼ä¸»è¦å æ¬å½æ°åºååºæ¬å½ä»¤éçãæ åLinuxç³»ç»åæ¶åç¨æ·æä¾äºéæåå¨æå½æ°åºãéæå½æ°åºå¨çæåºç¨æ¶ç´æ¥é¾æ¥å°ç¨æ·åºç¨ä¸ãå¨æåºå¨åºç¨è¿è¡æ¶æé¾æ¥ãç±äºåµå ¥å¼ç³»ç»åºç¨ä¸è¬é½æ¯å¨å¼åå¹³å°ä¸é¢å çæçï¼å æ¤åµå ¥å¼ç³»ç»åªéååºç¨æä¾å¨æå½æ°åºãLinuxåºç¨è¿è¡æéçå½æ°åºä¸»è¦æCåºãæ°å¦åºã线ç¨åºãå å¯åºãç½ç»éä¿¡åºçãå ¶ä¸æåºæ¬çæ¯Cè¯è¨çè¿è¡åºglibãè¿ä¸ªåºä¸»è¦å®æåºæ¬çè¾å ¥è¾åºï¼å å访é®ï¼æ件å¤çãä¸ä¸ªæ åçglibåºå¤§çº¦è¦kBåå¨ç©ºé´ï¼èèå°åµå ¥å¼Linuxå æ ¸å¾å¾å¾å°ï¼è¿ç§è¿è¡åºå®å¨å¤ªå¤§ï¼æ们åäºä¸äºç²¾ç®çå·¥ä½ï¼æ¹æ³æ两ç§ï¼(1)ã使ç¨éæè¿æ¥çæ¹æ³ï¼å®å ¨ä¸ä½¿ç¨è¿è¡åºå¨æè¿æ¥ï¼(2)ã对è¿ä¸ªåºçå½æ°è¿è¡ç²¾ç®ã
å¨ä¸ä¸ªæ¡é¢ç³»ç»ä¸ï¼ä½¿ç¨å¨æè¿æ¥å¯ä»¥å¸¦æ¥è®¸å¤å¥½å¤ã使ç¨å¨æè¿æ¥åºï¼å¯ä»¥è®©åºç¨ç¨åºè·å½æ°åºçæ´æ°ãå级å离ï¼ä¾¿äºç»´æ¤ï¼å¯ä»¥è®©åæ¶è¿è¡çå¤ä¸ªç¨åºå ±äº«ä¸æ®µä»£ç ãä½æ¯ï¼å¨åµå ¥å¼ç³»ç»ä¸ï¼å¾å°æå¤ä¸ªç¨åºå¹¶è¡çå¯è½ï¼ç¨åºçç»´æ¤ï¼å°¤å ¶æ¯åºå½æ°çç»´æ¤æ´æ°æ¯ä¸å¸¸è§çãè¿æ¶ï¼ä½¿ç¨éæè¿æ¥çä¼å¿å°±æ为ææ¾ãå 为éæè¿æ¥å¯ä»¥åªå°åºä¸ç¨å°çé¨åè¿æ¥è¿ç¨åºãå¨åºç¨ç¨åºè¾å°(å°äº5)çæ åµä¸ï¼éæè¿æ¥å¯ä»¥è¾¾å°è¾å¥½çç»æã为äºä¾¿äºå°æ¥æ©å çéè¦ï¼æ们ä¹éç¨ç¬¬äºç§æ¹æ³ï¼é对æ们çéè¦ï¼å¯¹åºå½æ°çå 容è¿è¡ç²¾ç®ï¼åªä¿çä¸äºåºæ¬åè½ï¼è¿æä¸ç§æ¹æ³æ¯éç¨å ¶å®çCè¯è¨è¿è¡åºãä½æ¯è¿äºåºå¯¹å ¼å®¹æ§å½±åå¾å¤§ã
åºæ¬å½ä»¤éåæ ·æ¯è¿è¡ç¨æ·åºç¨çåºç¡ï¼ä¸»è¦å æ¬åå§åè¿ç¨initï¼ç»ç«¯è·ågettyãShellååºæ¬å½ä»¤çãåµå ¥å¼ç³»ç»çå¯å¨è¿ç¨å¯è½ä¸æ åLinuxä¸åï¼ä¾å¦è·³è¿ç»å½è¿ç¨ç´æ¥å¯å¨GUIçãè¿å°±è¦æ±ä¿®æ¹initï¼gettyçãæ åLinuxå½ä»¤éåæ ·ç±äºä½ç§¯é®é¢æ æ³ç´æ¥åºç¨äºåµå ¥å¼ç¯å¢ãç®åï¼å°å½ä»¤éç解å³æ¹æ³ä¸»è¦æéææ¹æ³åæ±ç¼æ¹æ³ä¸¤ç§ãéææ¹æ³éç¨éæå ¬å ±é¨ååå°å½ä»¤éæ´ä½ä½ç§¯ï¼ç¨Cå®ç°ï¼æè¾å¥½çå¹³å°ç§»æ¤æ§ï¼æ±ç¼æ¹æ³åéç¨æ±ç¼ç¼ç¨åå°æ¯ä¸ªå½ä»¤çä½ç§¯ï¼è¿æ ·å¯ä½¿ä½ç§¯å¾å°ä½å ¶å¹³å°ç§»æ¤æ§è¾å·®ã
3ã åµå ¥å¼Linuxä¸çGUI
GUIå¨åµå ¥å¼ç³»ç»æè å®æ¶ç³»ç»ä¸çå°ä½è¶æ¥è¶éè¦ï¼æ¯å¦PDAãDVDææ¾æºãWAPææºçï¼é½éè¦ä¸ä¸ªå®æ´ï¼æ¼äº®çå¾å½¢ç¨æ·çé¢ãè¿äºç³»ç»å¯¹GUIçåºæ¬è¦æ±å æ¬ï¼(1)ãè½»åãå ç¨èµæºå°ï¼(2)ãé«æ§è½ï¼(3)ãé«å¯é æ§ï¼(4)ãå¯é ç½®ãè¿äºä¹æ为è¯ä»·åµå ¥å¼ç³»ç»çéè¦ææ ãç®åï¼åµå ¥å¼Linuxä¸çGUI主è¦æwinCEãMicro Windowã紧缩çX WindowãMiniGUI(å½å åå¾è¾å¥½çèªç±è½¯ä»¶ä¹ä¸)ãæ åLinuxçXfreeç±äºä½ç§¯åºå¤§ï¼è¿è¡ç¯å¢è¦æ±é«ï¼æ æ³è¿è¡äºåµå ¥å¼ç¯å¢ãåµå ¥å¼GUI主è¦éè¿åååè½ï¼éä½æ§è½æ¥å®ç°ä½ç§¯å°åå ç¨èµæºå°ãç®ååµå ¥å¼Linuxä¸çGUIç¯å¢ä¸»è¦æ两类ï¼Xç±»åwinç±»ãXç±»GUIå为æå¡æ¹å客æ·æ¹ä¸¤æ¹ãæå¡å¨æ¹æä¾é¼ æ ãé®çå¤çåæ¾ç¤ºåè½ï¼å®¢æ·æ¹æ¯ç¨æ·åºç¨ï¼æå¡æ¹å客æ·æ¹éè¿socketæ¥å£åXåè®®éä¿¡ãéç¨è¯¥æ¹å¼ååæå©äºè¿ç¨ç½ç»å¾å½¢åæå¡ï¼å®¢æ·æ¹åæå¡æ¹å¯éè¿ç½ç»å®ç°Xåè®®åå¾å½¢æ¾ç¤ºãå ¸åçXç±»GUIæMicro Windowã紧缩çX Windowçãwinç±»çGUIä¸åå¨å®¢æ·æ¹åæå¡æ¹ï¼æ¯ä¸ªä»»å¡é½èªæä¸ä½ï¼ä»»ä½ä»»å¡é´çåæ¢ãäºä»¶ååç±ä¸é¨ç管çä»»å¡è´è´£ãå¦wiCEãMiniGUIå°±æ¯ç±»ä¼¼äºwinç±»çGUIã
äºãå½åæµè¡çå ç§åµå ¥å¼Linuxç³»ç»
é¤äºæºè½æ°åç»ç«¯é¢å以å¤ï¼Linuxå¨ç§»å¨è®¡ç®å¹³å°ãæºè½å·¥ä¸æ§å¶ãéèä¸ç»ç«¯ç³»ç»ï¼çè³åäºé¢åé½æç广æ³çåºç¨åæ¯ãè¿äºLinux被ç»ç§°ä¸º"åµå ¥å¼Linux"ã
1ãRT-Linux
è¿æ¯ç±ç¾å½å¢¨è¥¿å¥çå·¥å¦é¢å¼åçåµå ¥å¼Linuxæä½ç³»ç»ãå°ç®å为æ¢ï¼RT-Linuxå·²ç»æåå°åºç¨äºèªå¤©é£æºç空é´æ°æ®ééãç§å¦ä»ªå¨æµæ§åçµå½±ç¹æå¾åå¤çç广æ³é¢åãRT-Linuxå¼åè 并没æé对å®æ¶æä½ç³»ç»çç¹æ§èéåLinuxçå æ ¸ï¼å 为è¿æ ·åçå·¥ä½éé常大ï¼èä¸è¦ä¿è¯å ¼å®¹æ§ä¹é常å°é¾ã为æ¤ï¼RT-Linuxæåºäºç²¾å·§çå æ ¸ï¼å¹¶ææ åçLinuxæ ¸å¿ä½ä¸ºå®æ¶æ ¸å¿çä¸ä¸ªè¿ç¨ï¼åç¨æ·çå®æ¶è¿ç¨ä¸èµ·è°åº¦ãè¿æ ·å¯¹Linuxå æ ¸çæ¹å¨é常å°ï¼å¹¶ä¸å åå©ç¨äºLinuxä¸ç°æç丰å¯ç软件èµæºã
2ãuClinux
uCLinuxæ¯Lineoå ¬å¸ç主æ产åï¼åæ¶ä¹æ¯å¼æ¾æºç çåµå ¥å¼Linuxçå ¸èä¹ä½ãuCLinux主è¦æ¯é对ç®æ å¤çå¨æ²¡æåå¨ç®¡çåå MMU(Memory Management Unit) çåµå ¥å¼ç³»ç»è设计çãå®å·²ç»è¢«æåå°ç§»æ¤å°äºå¾å¤å¹³å°ä¸ãç±äºæ²¡æMMUï¼å ¶å¤ä»»å¡çå®ç°éè¦ä¸å®æå·§ãuCLinuxæ¯ä¸ç§ä¼ç§çåµå ¥å¼Linuxçæ¬ï¼æ¯micro-Conrol-Linuxç缩åãå®ç§æ¿äºæ åLinuxçä¼è¯ç¹æ§ï¼ç»è¿åæ¹é¢çå°ååæ¹é ï¼å½¢æäºä¸ä¸ªé«åº¦ä¼åçã代ç ç´§åçåµå ¥å¼Linuxãè½ç¶å®çä½ç§¯å¾å°ï¼å´ä»ç¶ä¿çäºLinuxç大å¤æ°çä¼ç¹ï¼ç¨³å®ãè¯å¥½ç移æ¤æ§ãä¼ç§çç½ç»åè½ã对åç§æ件系ç»å®å¤çæ¯æåæ å丰å¯çAPIãå®ä¸ä¸ºåµå ¥å¼ç³»ç»åäºè®¸å¤å°ååçå·¥ä½ï¼ç®åå·²æ¯æå¤æ¬¾CPUãå ¶ç¼è¯åç®æ æ件å¯æ§å¶å¨å ç¾KBæ°é级ï¼å¹¶å·²ç»è¢«æåå°ç§»æ¤å°å¾å¤å¹³å°ä¸ã
3ãEmbedix
Embedixæ¯ç±åµå ¥å¼Linuxè¡ä¸ä¸»è¦ååä¹ä¸Luneoæ¨åºçï¼æ¯æ ¹æ®åµå ¥å¼åºç¨ç³»ç»çç¹ç¹éæ°è®¾è®¡çLinuxåè¡çæ¬ãEmbedixæä¾äºè¶ è¿ç§çLinuxç³»ç»æå¡ï¼å æ¬Webæå¡å¨çãç³»ç»éè¦æå°8MBå åï¼3MB ROMæå¿«ééªåãEmbedixåºäºLinux 2.2å æ ¸ï¼å¹¶å·²ç»æåå°ç§»æ¤å°äºIntel xåPowerPCå¤çå¨ç³»åä¸ãåå ¶å®çLinuxçæ¬ä¸æ ·ï¼Embedixå¯ä»¥å è´¹è·å¾ãLuneoè¿åå¸äºå¦ä¸ä¸ªéè¦ç软件产åï¼å®å¯ä»¥è®©å¨Windows CEä¸è¿è¡çç¨åºè½å¤å¨Embedixä¸è¿è¡ãLuneoè¿å°è®¡åæ¨åºEmbedixçå¼åè°è¯å·¥å ·å ãåºäºå¾å½¢çé¢çæµè§å¨çãå¯ä»¥è¯´ï¼Embedixæ¯ä¸ç§å®æ´çåµå ¥å¼Linux解å³æ¹æ¡ã
4ãXlinux
XLinuxæ¯ç±ç¾å½ç½èå ¬å¸æ¨åºï¼ä¸»è¦å¼åè æ¯éç豪ãä»å¨å çç½èå 个æå便å¼ååºäºåºäºXLinuxçãå·ç§°æ¯ä¸çä¸æå°çåµå ¥å¼Linuxç³»ç»ï¼å æ ¸åªæKBï¼èä¸è¿å¨ä¸æåå°ãXLinuxæ ¸å¿éç¨äº"è¶ åå é"ä¸å©ææ¯ï¼è®©Linuxæ ¸å¿ä¸ä» å¯è½ä¸æ åå符éç¸å®¹ï¼è¿å«çäº1 2个å½å®¶åå°åºçå符éãå æ¤ï¼XLinuxå¨æ¨å¹¿Linuxçå½é åºç¨æ¹é¢æç¬ç¹çä¼å¿ã
5ãPoketLinux
ç±Agendaå ¬å¸éç¨ãä½ä¸ºå ¶æ°äº§å"VR3PDA"çåµå ¥å¼Linuxæä½ç³»ç»ãå®å¯ä»¥æä¾è·¨æä½ç³»ç»æé ç»ä¸çãæ ååçåå¼æ¾çä¿¡æ¯éä¿¡åºç¡ç»æï¼å¨æ¤ç»æä¸å®ç°ç«¯å°ç«¯æ¹æ¡çå®æ´å¹³å°ãPoketLinuxèµæºæ¡æ¶å¼æ¾ï¼ä½¿æ®éç软件ç»æå¯ä»¥ä¸ºææç¨æ·æä¾ä¸è´çæå¡ãPoketLinuxå¹³å°ä½¿ç¨æ·çè§çº¿ä»è®¾å¤ãå¹³å°åç½ç»ä¸ç§»å¼ï¼ç±æ¤å¼åäºä¿¡æ¯ææ¯æ°æ¶ä»£ç产çãå¨PoketLinuxä¸ï¼ç§°ä¹ä¸ºç¨æ·åä¿¡æ¯äº¤æ¢(CIE)ï¼ä¹å°±æ¯æä¾å访é®ä¸ºæ¯ä¸ªç¨æ·éæ±èå®å¶ç"主é¢"ä¿¡æ¯çè½åï¼èä¸ç®¡æ£å¨ä½¿ç¨ç设å¤æ¯ä»ä¹ã
6ãMidoriLinux
ç±Transmetaå ¬å¸æ¨åºçMidoriLinuxæä½ç³»ç»ä»£ç å¼æ¾ï¼å¨GUNæ®éå ¬å ±è®¸å¯(GPL)ä¸åå¸ï¼å¯ä»¥å¨ä¸ç«å³è·å¾ãè¯¥å ¬å¸æ个å为"MidoriLinux计å"ã"MidoriLinux"è¿ä¸ªååæ¥æºäºæ¥æ¬ç"绿è²"---Midoriï¼ç¨æ¥åæ å ¶Linuxæä½ç³»ç»çç¯ä¿å¤è§ã
7ã红æåµå ¥å¼Linux
ç±å京ä¸ç§é¢çº¢æè½¯ä»¶å ¬å¸æ¨åºçåµå ¥å¼Linuxæ¯å½å åå¾è¾å¥½çä¸æ¬¾åµå ¥å¼æä½ç³»ç»ãç®åï¼ä¸ç§é¢è®¡ç®æèªè¡å¼åçå¼æ¾æºç çåµå ¥å¼æä½ç³»ç»---Easy Embedded OS(EEOS)ä¹å·²ç»å¼å§è¿å ¥å®ç¨é¶æ®µäºã该款åµå ¥å¼æä½ç³»ç»éç¹æ¯æp-Javaãç³»ç»ç®æ ä¸æ¹é¢æ¯å°ååï¼å¦ä¸æ¹é¢è½éç¨Linuxç驱å¨åå ¶å®æ¨¡åãç±äºæä¸ç§é¢è®¡ç®æç强大ç§ç åéååç¾ï¼EEOSææåå±æ为åè½å®åã稳å®ãå¯é çå½äº§åµå ¥å¼æä½ç³»ç»å¹³å°ã
å ãç»æè¯
ç±äºLinuxæ¯ä¸ä¸ªå æ ¸æºä»£ç å¼æ¾ãå ·å¤ä¸æ´å¥å·¥å ·é¾ãæ强大çç½ç»æ¯æåææ¬ä½å»çæä½ç³»ç»ï¼å æ¤åµå ¥å¼Linuxèªè¯çèµ·å°±ç§æ¿äºè¿ä¼å¤ç¬ç¹ä¼å¿ï¼è¿ä½¿å®æ£å¨å¹¶è¶æ¥è¶å¤å°åå°äººä»¬çå ³æ³¨ãæ®Even Dataæ°æ®æ¾ç¤ºï¼ææ使ç¨åµå ¥å¼Linuxçç¨æ·ä»å¹´çï¼ å¢å°å¹´ï¼ ï¼èåæVxworkåªæ¯ä»ï¼ å°ï¼ ï¼Win CEä»9ï¼ å°ï¼ ãå¦å¤ï¼å¨åµå ¥å¼Linuxçåç§åºç¨å¸åºä¸ï¼éä¿¡(è¯é³åæ°æ®)åå第ä¸ï¼å¹´çéå®é¢æ¯ä¸ç¾å ï¼èå¹´é¢è®¡å°è¾¾å°1.亿ç¾å ï¼å¯ä»¥é¢è§ï¼åµå ¥å¼Linuxå°å¨æªæ¥çéä¿¡ç¨åµå ¥å¼æä½ç³»ç»ä¸å æ®å¼ºæåçå°ä½
Linuxæ¯ç®åååç«ççæä½ç³»ç»ãå®æ¯ç±è¬å °èµ«å°è¾åºå¤§å¦çä¸ä¸ªå¤§å¦çLinus B. Torvoldså¨å¹´é¦æ¬¡ç¼åçãæ å¿æ§å¾æ æ¯ä¸ä¸ªå¯ç±çå°ä¼é¹ ã
Linuxæ¯ä¸ç§ç±»Unixç³»ç»ï¼Linuså½æ¶ç¼åå®çç®çæ¯ä¸ºäºæ¿ä»£ä¸ç§åå«Minixçæä½ç³»ç»ãMinixæ¯ç±ä¸ä¸ªåå«Andrew Tannebaumç计ç®æºææç¼åçï¼å½æ¶ç±äºUnixæ¯ä¸ä¸ªåä¸è½¯ä»¶ï¼å ¶æºä»£ç æ¯ä¸è½æ¿æ¥è¿è¡æå¦çï¼Andrewææå°±èªå·±ç¼åäºä¸ä¸ªç³»ç»ç¨äºæå¦ãæ
åçMinixç¨ä¸å¼ 软çå°±è½è£ ä¸ï¼éº»éè½å°ãäºèä¿±å ¨ï¼Minixå ·æä¸è¬æä½ç³»ç»çç¹å¾ï¼å®åæ¶å ¼å®¹Unixç³»ç»ã
Linuxæ¯ä¸ä¸ªå è´¹çæä½ç³»ç»ï¼ç¨æ·å¯ä»¥å è´¹è·å¾å ¶æºä»£ç ï¼å¹¶è½å¤éæä¿®æ¹ãå®æ¯å¨å ±ç¨è®¸å¯è¯GPL(General Public License)ä¿æ¤ä¸çèªç±è½¯ä»¶ï¼ä¹æ好å ç§çæ¬ï¼å¦Red Hat LinuxãSlackwareï¼ä»¥åå½å çXteam Linuxçã
Linuxå ·æ许å¤Unixç³»ç»çåè½åç¹ç¹ï¼è½å¤å ¼å®¹Unixï¼ä½æ éæ¯ä»Unixé«é¢çè´¹ç¨ãæ¯å¦ä¸ä¸ªUnixç¨åºåå¨åä½å¯ä»¥å¨Unixç³»ç»ä¸è¿è¡å·¥ä½ï¼åå°å®¶éå¨Linuxç³»ç»ä¸ä¹è½å®æåæ ·çå·¥ä½ï¼èä¸å¿ éæ°è´ä¹°Unixãè¦ç¥éUnixçä»·æ ¼æ¯å¸¸è§çWindowsè¦é«åºè¥å¹²åï¼åLinuxçä½å»æ´æ¯ç¸è·çè¿ã
Linuxçåºç¨ä¹åå广æ³ãSonyææ°çPS2游ææºå°±éç¨äºLinuxä½ä¸ºç³»ç»è½¯ä»¶ï¼ä½¿PS2æ身ä¸åï¼æ为äºä¸å°Linuxå·¥ä½ç«ãèåççµå½±ãæ³°å¦å°¼å å·ãçæ°åææ¯åæå·¥ä½å°±æ¯å©ç¨å¤å°Linuxæå¡å¨æ¥å®æçã
å¹´8ææ¥ï¼Linuxåå¸äºææ°çLinux 2.4.9çï¼å®ä¹å·²ç»åå²äºã
Linuxçä¼ç¹
Linuxçæµè¡æ¯å 为å®å ·æ许å¤è¯±äººä¹å¤ã
1ãå®å ¨å è´¹
Linuxæ¯ä¸æ¬¾å è´¹çæä½ç³»ç»ï¼ç¨æ·å¯ä»¥éè¿ç½ç»æå ¶ä»éå¾å è´¹è·å¾ï¼å¹¶å¯ä»¥ä»»æä¿®æ¹å ¶æºä»£ç ãè¿æ¯å ¶ä»çæä½ç³»ç»æåä¸å°çãæ£æ¯ç±äºè¿ä¸ç¹ï¼æ¥èªå ¨ä¸ççæ æ°ç¨åºååä¸äºLinuxçä¿®æ¹ãç¼åå·¥ä½ï¼ç¨åºåå¯ä»¥æ ¹æ®èªå·±çå ´è¶£åçµæå¯¹å ¶è¿è¡æ¹åãè¿è®©Linuxå¸æ¶äºæ æ°ç¨åºåçç²¾åï¼ä¸æ壮大ã
2ãå®å ¨å ¼å®¹POSIX 1.0æ å
è¿ä½¿å¾å¯ä»¥å¨Linuxä¸éè¿ç¸åºç模æå¨è¿è¡å¸¸è§çDOSãWindowsçç¨åºãè¿ä¸ºç¨æ·ä»Windows转å°Linuxå¥ å®äºåºç¡ã许å¤ç¨æ·å¨èè使ç¨Linuxæ¶ï¼å°±æ³å°ä»¥åå¨Windowsä¸å¸¸è§çç¨åºæ¯å¦è½æ£å¸¸è¿è¡ï¼è¿ä¸ç¹å°±æ¶é¤äºä»ä»¬ççèã
3ãå¤ç¨æ·ãå¤ä»»å¡
Linuxæ¯æå¤ç¨æ·ï¼å个ç¨æ·å¯¹äºèªå·±çæ件设å¤æèªå·±ç¹æ®çæå©ï¼ä¿è¯äºåç¨æ·ä¹é´äºä¸å½±åãå¤ä»»å¡åæ¯ç°å¨çµèæ主è¦çä¸ä¸ªç¹ç¹ï¼Linuxå¯ä»¥ä½¿å¤ä¸ªç¨åºåæ¶å¹¶ç¬ç«å°è¿è¡ã
4ãè¯å¥½ççé¢
Linuxåæ¶å ·æå符çé¢åå¾å½¢çé¢ãå¨å符çé¢ç¨æ·å¯ä»¥éè¿é®çè¾å ¥ç¸åºçæ令æ¥è¿è¡æä½ãå®åæ¶ä¹æä¾äºç±»ä¼¼Windowså¾å½¢çé¢çX-Windowsç³»ç»ï¼ç¨æ·å¯ä»¥ä½¿ç¨é¼ æ å¯¹å ¶è¿è¡æä½ãå¨X-Windowsç¯å¢ä¸å°±åå¨Windowsä¸ç¸ä¼¼ï¼å¯ä»¥è¯´æ¯ä¸ä¸ªLinuxççWindowsã
5ã丰å¯çç½ç»åè½
äºèç½æ¯å¨Unixçåºç¡ä¸ç¹è£èµ·æ¥çï¼Linuxçç½ç»åè½å½ç¶ä¸ä¼éè²ãå®çç½ç»åè½åå ¶å æ ¸ç´§å¯ç¸è¿ï¼å¨è¿æ¹é¢Linuxè¦ä¼äºå ¶ä»æä½ç³»ç»ãå¨Linuxä¸ï¼ç¨æ·å¯ä»¥è½»æ¾å®ç°ç½é¡µæµè§ãæä»¶ä¼ è¾ãè¿ç¨ç»éçç½ç»å·¥ä½ã并ä¸å¯ä»¥ä½ä¸ºæå¡å¨æä¾WWWãFTPãE-Mailçæå¡ã
6ãå¯é çå®å ¨ã稳å®æ§è½
Linuxéåäºè®¸å¤å®å ¨ææ¯æªæ½ï¼å ¶ä¸æ对读ãåè¿è¡æéæ§å¶ã审计è·è¸ªãæ ¸å¿ææçææ¯ï¼è¿äºé½ä¸ºå®å ¨æä¾äºä¿éãLinuxç±äºéè¦åºç¨å°ç½ç»æå¡å¨ï¼è¿å¯¹ç¨³å®æ§ä¹ææ¯è¾é«çè¦æ±ï¼å®é ä¸Linuxå¨è¿æ¹é¢ä¹åååºè²ã
7ãæ¯æå¤ç§å¹³å°
Linuxå¯ä»¥è¿è¡å¨å¤ç§ç¡¬ä»¶å¹³å°ä¸ï¼å¦å ·æxãx0ãSPARCãAlphaçå¤çå¨çå¹³å°ãæ¤å¤Linuxè¿æ¯ä¸ç§åµå ¥å¼æä½ç³»ç»ï¼å¯ä»¥è¿è¡å¨æä¸çµèãæºé¡¶çæ游ææºä¸ãå¹´1æ份åå¸çLinux 2.4çå æ ¸å·²ç»è½å¤å®å ¨æ¯æIntel ä½è¯çæ¶æãåæ¶Linuxä¹æ¯æå¤å¤çå¨ææ¯ãå¤ä¸ªå¤çå¨åæ¶å·¥ä½ï¼ä½¿ç³»ç»æ§è½å¤§å¤§æé«ã
Linuxçä¸è¶³
ç±äºå¨ç°å¨ç个人çµèæä½ç³»ç»è¡ä¸ä¸ï¼å¾®è½¯çWindowsç³»ç»ä»ç¶å æ大é¨åç份é¢ï¼ç»å¤§å¤æ°çè½¯ä»¶å ¬å¸é½æ¯æWindowsãè¿ä½¿å¾Windowsä¸çåºç¨è½¯ä»¶åºæå°½æï¼èå ¶ä»çæä½ç³»ç»å°±è¦å°ä¸äºã许å¤ç¨æ·å¨æ¢æä½ç³»ç»çæ¶åé½ä¼èè以åç软件è½å¦ç»§ç»ä½¿ç¨ï¼æ¢äºæä½ç³»ç»åæ¯å¦ä¼ä¸æ¹ä¾¿ãè½ç¶Linuxå ·æDOSãWindows模æå¨ï¼å¯ä»¥è¿è¡ä¸äºWindowsç¨åºï¼ä½Windowsç³»ç»æå ¶å¤æï¼æ¨¡æå¨æ模æçè¿è¡ç¯å¢ä¸å¯è½å®å ¨ä¸çå®çWindowsç¯å¢ä¸æ¨¡ä¸æ ·ï¼è¿å°±ä½¿å¾ä¸äºè½¯ä»¶æ æ³æ£å¸¸è¿è¡ã
许å¤ç¡¬ä»¶è®¾å¤é¢å¯¹Linuxç驱å¨ç¨åºä¹ä¸è¶³ï¼ä¸å°ç¡¬ä»¶ååæ¯å¨æ¨åºWindowsçæ¬ç驱å¨ç¨åºåæç¼åLinuxççãä½ä¸äºå¤§ç¡¬ä»¶ååå¨è¿æ¹é¢åå¾è¿ä¸éï¼ä»ä»¬çLinuxç驱å¨ç¨åºä¸è¬é½æ¨åºå¾æ¯è¾åæ¶ã
软件æ¯æçä¸è¶³æ¯Linuxæ大ç缺æ¾ï¼ä½éçLinuxçåå±ï¼è¶æ¥è¶å¤ç软件ååä¼æ¯æLinuxï¼å®åºç¨çèå´ä¹è¶æ¥è¶å¹¿ãè¿åªå°ä¼é¹ çåæ¯æ¯ååå æçã
什么是系统
系统是什么
尽管系统一词频繁出现在社会生活和学术领域中,但不同的码分人在不同的场合往往赋予它不同的含义。长期以来,码分系统概念的码分定义和其特征的描述尚无统一规范的定论。一般我们采用如下的码分定义:系统是由一些相互联系、相互制约的码分grub源码若干组成部分结合而成的、具有特定功能的码分一个有机整体(集合)。
我们可以从三个方面理解系统的码分概念:
(1)系统是由若干要素(部分)组成的。这些要素可能是码分一些个体、元件、码分零件,码分也可能其本身就是码分一个系统(或称之为子系统)。如运算器、码分控制器、码分存储器、码分输入/输出设备组成了计算机的硬件系统,而硬件系统又是计算机系统的一个子系统。
(2)系统有一定的结构。一个系统是其构成要素的集合,这些要素相互联系、相互制约。系统内部各要素之间相对稳定的****、组织秩序及失控关系的内在表现形式,就是系统的结构。例如钟表是由齿轮、发条、指针等零部件按一定的方式装配而成的,但一堆齿轮、发条、指针随意放在一起却不能构成钟表;人体由各个器官组成,单个各器官简单拼凑在一起不能成其为一个有行为能力的人。
(3)系统有一定的功能,或者说系统要有一定的目的性。 系统的功能是指系统与外部环境相互联系和相互作用中表现出来的性质、能力、和功能。例如信息系统的功能是进行信息的收集、传递、储存、加工、维护和使用,辅助决策者进行决策,帮助企业实现目标。
与此同时,我们还要从以下几个方面对系统进行理解:系统由部件组成,部件处于运动之中;部件间存在着联系;系统各主量和的贡献大于各主量贡献的和,即常说的1+1〉2;系统的状态是可以转换、可以控制的。
系统在实际应用中总是以特定系统出现的,如消化系统、生物系统、教育系统等,其前面的修饰词描述了研究对象的物质特点,即“物性”, 而“系统”一词则表征所述对象的整体性。
对某一具体对象的研究,既离不开对其物性的web棋盘源码描述,也离不开对其系统性的描述。系统科学研究将所有实体作为整体对象的特征,如整体与部分、结构与功能、稳定与演化等等。
[编辑本段]计算机系统
以下是有关现在关于操作系统的文章。
我们常说的系统通常是指操作系统。
一、计算机软件与操作系统
功能强大的计算机自从走进了人类的生活就发挥着越来越重要的作用,随着时代的发展,计算机已与人们的日常生活息息相关。不能不说计算机软件日新月异的发展在此起着关键作用。可以这么说,离开了软件,计算机就成了废铜烂铁。
计算机机软件大致可以分为两类:系统软件和应用软件。
系统软件用于管理计算机资源,并为应用软件提供一个统一的平台。
应用软件则在系统软件的基础上实现用户所需要的功能。
而操作系统(Operating System,简称os)则是最基本的系统软件,它控制计算机的所有资源并提供应用程序开发的基础。
二、操作系统诞生的原因
计算机是由CPU、内存、磁盘、显卡、声卡等许许多多设备组成的,而且这些设备的厂商众多,品种繁多,而且不同厂商生产的同种设备虽然完成同种功能,但是具体细节却存在千差万别。
为了正确地管理和使用这些设备来实现具体的应用,这样程序员就得了解和掌握各种设备的工作原理。
而且对于同种设备,由于不同的硬件厂商在实现细节上的差异使得程序员再次陷入了复杂的硬件控制的深渊。
必须找到一种方法使得程序员从苦海中脱离出来!多年的研究与发展终于使得这个愿望成为现实。这个解决方法就是在硬件的基础上加载一层软件来管理整个系统。
这个软件通过设备驱动程序来与计算机硬件打交道,通过一系列的功能模块将整个计算机硬件系统抽象成为一个公共、统一、开放的接口—虚拟机,从而使得程序员不必再陷入各种硬件系统的具体细节!
这一层软件就是操作系统。
三、什么是操作系统
操作系统是一个大型的软件系统,其功能复杂,体系庞大。
从不同的角度看的结果也不同,正是“横看成岭侧成峰”,下面我们通过最典型的两个角度来分析一下。
1。从程序员的角度看
正如前面所说的,如果没有操作系统,程序员在开发软件的源码屋net时候就必须陷入复杂的硬件实现细节。程序员并不想涉足这个可怕的领域,而且大量的精力花费在这个重复的、没有创造性的工作上也使得程序员无法集中精力放在更具有创造性的程序设计工作中去。
程序员需要的是一种简单的,高度抽象的可以与之打交道的设备。
将硬件细节与程序员隔离开来,这当然就是操作系统。
从这个角度看,操作系统的作用是为用户提供一台等价的扩展机器,也称虚拟机,它比底层硬件更容易编程。
2。从使用者的角度看
从使用者的角度来看,操作系统则用来管理一个复杂系统的各个部分。
操作系统负责在相互竞争的程序之间有序地控制对CPU、内存及其它I/O接口设备的分配。
比如说,假设在一台计算机上运行的三个程序试图同时在同一台打印机上输出计算结果。那么头几行可能是程序1的输出,下几行是程序2的输出,然后又是程序3的输出等等。
最终结果将是一团糟。这时,操作系统采用将打印输出送到磁盘上的缓冲区的方法就可以避免这种混乱。在一个程序结束后,操作系统可以将暂存在磁盘上的文件送到打印机输出。
从这种角度来看,操作系统则是系统的资源管理者。
四、操作系统发展历史
下面我们结合计算机的发展历史来回顾一下操作系统的发展历程。
1。第一代计算机(-):真空管和插件板
年代中期,美国哈佛大学、普林斯顿高等研究院、宾夕法尼亚大学的一些人使用数万个真空管,构建了世界上第一台电子计算机。开启计算机发展的历史。这个时期的机器需要一个小组专门设计、制造、编程、操作、维护每台机器。
程序设计使用机器语言,通过插板上的硬连线来控制其基本功能。
这个时候处于计算机发展的最初阶段,连程序设计语言都还没有出现,操作系统更是闻所未闻!
2。第二代计算机(-):晶体管和批处理系统
这个时期计算机越来越可靠,已从研究院中走出来,走进了商业应用。
但这个时期的计算机主要完成各种科学计算,需要专门的操作人员维护,并且需要针对每次的计算任务进行编程。
第二代计算机主要用于科学与工程计算。使用FORTRAN与汇编语言编写程序。棋牌网站 源码在后期出现了操作系统的雏形:FMS(FORTRAN监控系统)和IBMSYS(IBM为机配备的操作系统)
3。
第三代计算机(-):集成电路芯片和多道程序
年代初,计算机厂商根据不同的应用分成了两个计算机系列,一个针对科学计算,一个针对商业应用。
随着计算机应用的深入,对统一两种应用的计算机需求出现了。这时IBM公司试图通过引入System/来解决这个问题。
与这个计划配套,IBM公司组织了OS/操作系统的开发,然后复杂的需求,以及当时软件工程水平低下使得OS/的开发工作陷入了历史以来最可怕的“软件开发泥潭”,诞生了最著名的失败论著----《神秘的人月》。
虽然这个开发计划失败了,但是这个愿望却成为了计算机厂商的目标。
此时,MIT、Bell Lab(贝尔实验室)和通用电气公司决定开发一种“公用计算机服务系统”----MULTICS,希望其能同时支持数百名分时用户的一种机器。结果这个计划的研制难度超出了所有人的预料,最后这个系统也以失败结束。不过,MULTICS的思想却为后来的操作系统很多提示。
年代未,一位贝尔实验室曾参加过MULTICS研制工作的计算机科学家Ken Thompson,在一台无人使用的PDP-7机器上开发出了一套简化的、单用户版的MULTICS。后来导致了UNIX操作系统的诞生。
目前UNIX操作系统主导了小型机、工作站以及其他市场。
也是至今最有影响力的操作系统之一,而Linux也是UNIX系统的一种衍生。
4。第四代计算机(-今):个人计算机
随着计算机技术的不断更新与发展,计算机神奇般地闯入了人们的生活,现在以低廉的价格就可以获得强大计算能力的计算机。
价格不再是阻拦计算机普及的门槛时,降低计算机的易用性就显得十分重要!由于UNIX系统的本身特点,使得其不太适合于在运行在个人计算机上,这时就需要一种新的操作系统。
在这一历史关键时候,IBM公司由于低估了PC机的市场,并未使用最大的力量角逐这一市场,这时Intel公司趁机进入,成为了当今微处理器的老大。
同时善于抓住时机的微软公司的总裁比尔·盖茨适时地进入了这一领域,用购买来的CP/M摇身一变成为MS-DOS,并凭借其成为个人计算机操作系统领域的霸主。
虽然是苹果公司在GUI方面先拔头筹,但由于苹果公司的不兼容、不开放的市场策略,未能扩大战果,这时微软又适时地进入了GUI方面,凭借WINDOWS系统再次称雄!
五、记账源码开源操作系统构成
一般来说,操作系统由以下几个部分组成:
1)进程调度子系统:
进程调度子系统决定哪个进程使用CPU,对进程进行调度、管理。
2)进程间通信子系统:
负责各个进程之间的通信。
3)内存管理子系统:
负责管理计算机内存。
4)设备管理子系统:
负责管理各种计算机外设,主要由设备驱动程序构成。
5)文件子系统:
负责管理磁盘上的各种文件、目录!
6)网络子系统:
负责处理各种与网络有关的东西。
六、操作系统结构设计
操作系统有多种实现方法与设计思路,下面仅选取最有代表性的三种做一简单的叙述。
1。整体式系统结构设计
这是最常用的一种组织方式,它常被誉为“大杂烩”,也可说,整体式系统结构就是“无结构”。
这种结构方式下,开发人员为了构造最终的目标操作系统程序,首先将一些独立的过程,或包含过程的文件进行编译,然后用链接程序将它们链接成为一个单独的目标程序。
Linux操作系统就是采用整体式的系统结构设计。但其在此基础上增加了一些形如动态模块加载等方法来提高整体的灵活性,弥补整体式系统结构设计的不足。
2。层次式系统结构设计
这种方式则是对系统进行严格的分层,使得整个系统层次分明,等级森严!这种系统学术味道较浓!实际完全按照这种结构进行设计的操作系统不多,也没有广泛的应用。
可以这么说,现在的操作系统设计是在整体式系统结构与层次式系统结构设计中寻求平衡。
3。微内核系统结构设计
而微内核系统结构设计则是近几年来出现的一种新的设计理念,最有代表性的操作系统有Mach和QNX。
微内核系统,顾名思义就是系统内核很小!比如说QNX的微内核只负责:
¨ 进程间的通信
¨ 低层的网络通信
¨ 进程调度
¨ 第一级中断处理
七、操作系统横向比较
计算机历史中出现了许许多多的操作系统,然后大浪淘沙,无情地淘汰了许多,只留下一些经历过市场考验的:
1。
桌面操作系统:
1)MSDOS:Intel x系列的PC机上的最早的操作系统,微软公司产品,曾经统治了这个领域,现在已逐渐被自家兄弟WINDOWS 9x系列所代替,现在除了一些低档机外已不多见。
2)Windows 9x:微软公司产品,从Windows 3。
x发展而来,现在是基于Intel x系列的PC机上的主要操作系统,也是现然个人电脑中装机量最大的操作系统。面向桌面、面向个人用户。
3)Mac OS:苹果公司所有,界面友好,性能优异,但由于只能运行在苹果公司自己的电脑上而发展有限。
但由于苹果电脑独特的市场定位,现在仍存活良好。
[1]4)linux:Linux是一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名的例子。
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。
基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件(比如 ),等等。
2。
服务器操作系统:
1)UNIX系列:UNIX可以说是源远流长,是一个真正稳健、实用、强大的操作系统,但是由于众多厂商在其基础上开发了有自己特色的UNIX版本,所以影响了整体。在国外,UNIX系统可谓独树一帜,广泛应用于科研、学校、金融等关键领域。
但由于中国的计算机发展较为落后,UNIX系统的应用水平与国外相比有一定的滞后。
2)Windows NT系列:微软公司产品,其利用Windows的友好的用户界面的优势打进服务器操作系统市场。但其在整体性能、效率、稳定性上都与UNIX有一定差距,所以现在主要应用于中小企业市场。
3)Novell Netware系列:Novell公司产品,其以极适合于中小网络而著称,在中国的证券行业市场占有率极高,而且其产品特点鲜明,仍然是服务器系统软件中的长青树。
系统 xìtǒng [system]∶按一定的关系组成的同类事物
[编辑本段]人体系统
由各个器官按照一定的顺序排列在一起,完成一项或多项生理活动的结构叫系统。
人体共有八大系统:运动系统、神经系统、内分泌系统、循环系统、呼吸系统、消化系统、泌尿系统、生殖系统。这些系统协调配合,使人体内各种复杂的生命活动能够正常进行。
例如:口 - 咽 - 食管 - 胃 - 肠(小肠 - 大肠 - 直肠)- 肛门(其中包括:肝、胰和唾液腺等器官)
系统:是指相互联系又相互作用着的对象的有机组合。
系统:是由相互作用和相互依赖的若干组成部分结合而成的,具有特定功能的有机整体,而且这个有机整体又是它从属的更大系统的组成部分
★八大系统的作用:
一、运动系统:运动系统由骨、软骨、关节和骨骼肌等构成。起支架、保护和运动的作用。
二、神经系统:神经系统由神经元组成,是由中枢神经系统和遍布全身的周围神经系统而组成。在体内起主导作用;一方面它控制和调节个器官、系统的活动;另一方面通过神经系统的分析与综合,使人体对环境变化的刺激作出相应的反应,达到人体环境的统一。
三、内分泌系统:内分泌系统由多种腺体组成。
通过分泌不同的激素(雄性、雌性激素、胰岛素、肾上腺素)对整个人体的生长、发育、新陈代谢和生殖起到调节作用。
四、循环系统:循环系统由心脏、血管和淋巴管组成。它将消化系统的吸收的营养物质和肺吸收的氧送到全身器官的组织和细胞,同时将他们的代谢产物及CO2运送到肾、肺、皮肤排出体外。
以保证人体的新陈代谢不断。
五、呼吸系统:由呼吸道和肺组成。吸入新鲜空气,通过肺泡内的气体交换,使血液得到氧并排除Co2。
六、消化系统:有口腔、咽、食管、小肠、大肠等组成。是食物的消化和吸收的功能。供人体所需要的书屋和能量。
七、泌尿系统:由肾脏、输尿管、膀胱、尿道等组成。
排出体内多余的水分及代谢产物或毒素。
八、生殖系统:产生生殖细胞,繁殖后代。
[编辑本段]网络操作系统
网络操作系统严格来说应称为软件平台,因为目前并非单一的网络操作系统一统天下,而是存在着多种网络操作系统并存的情况,这种情况是由以下两方面的原因造成的:
1 。
以目前常用的酶来说,主要有UNIX的系统,网络系统和Windows NT的系统。以推出的时间来说, UNIX的为最早,网络为第二, Windows NT的最晚。除去技术上的原因,依靠推出时间早的优势, UNIX的几乎独霸了最早具有连网需求的邮电,银行,铁路,军事等领域,而随着网络技术的发展,虽然出现了像视窗新技这样界面更友好的操作系统,但用户出于保护投资及使用习惯上的原因不情愿完全抛弃一种操作系统,从而导致了操作系统的共存与混用。
2 。各种操作系统在网络应用方面都有各自的优势,而实际应用却千差万别,这种局面促使各种操作系统都极力提供跨平台的应用支持。由于以互联网的TCP / IP协议为基础,而的TCP / IP协议正是的UNIX的标准协议,互联网的高速发展自然就为的UNIX提供了极大的机遇,微软早在Windows 中里就提供了内嵌的TCP / IP的协议,其的Windows NT网络操作系统当然更是把对TCP / IP协议的支持作为其重要的开发策略;而随着视窗客户的日益增多,使得UNIX的,均提供对网络的Windows的支持。
请问什么是嵌入式软件?
嵌入式系统的定义
嵌入式系统是指用于执行独立功能的专用计算机系统。它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件与硬件可剪裁,以满足系统对功能、成本、体积和功耗等要求。
最简单的嵌入式系统仅有执行单一功能的控制能力,在唯一的ROM 中仅有实现单一功能的控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数字助理(PDA)、手持电脑(HPC)等,具有与PC 几乎一样的功能。实质上与PC 的区别仅仅是将微型操作系统与应用软件嵌入在ROM、RAM 和/或FLASH 存储器中,而不是存贮于磁盘等载体中。很多复杂的嵌入式系统又是由若干个小型嵌入式系统组成的。
嵌入式系统的硬件/软件特征
嵌入式系统的硬件必须根据具体的应用任务,以功耗,成本,体积, 可靠性,处理能力等为指标来选择。嵌入式系统的核心是系统软件和应用软件,由于存储空间有限,因而要求软件代码紧凑,可靠,大多对实时性有严格要求。
早期的嵌入式系统设计方法,通常是采用“硬件优先”原则。即在只粗略估计软件任务需求的情况下,首先进行硬件设计与实现。然后,在此硬件平台之上,再进行软件设计。
因而很难达到充分利用硬件软件资源,取得最佳性能的效果。同时,一旦在测试时发现问题,需要对设计进行修改时,整个设计流程将重新进行,对成本和设计周期的影响很大。
这种传统的设计方法只能改善硬件/软件各自的性能,在有限的设计空间不可能对系统做出较好的性能综合优化,在很大程度上依赖于设计者的经验和反复实验。 年代以来随着电子系统功能的日益强大和微型化,系统设计所涉及的问题越来越多,难度也越来越大。同时硬件和软件也不再是截然分开的两个概念,而是紧密结合、相互影响的。因而出现了软硬件协同(codesign)设计方法,即使用统一的方法和工具对软,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能低代价的优化设计方案。
嵌入式操作系统
目前流行的嵌入式操作系统可以分为两类:一类是从运行在个人电脑上的操作系统向下移植到嵌入式系统中,形成的嵌入式操作系统,如微软公司的Windows CE 及其新版本,SUN 公司的Java 操作系统,朗讯科技公司的Inferno,嵌入式Linux 等。这类系统经过个人电脑或高性能计算机等产品的长期运行考验,技术日趋成熟,其相关的标准和软件开发方式已被用户普遍接受,同时积累了丰富的开发工具和应用软件资源。
另一类是实时操作系统,如WindRiver 公司的VxWorks,ISI 的pSOS,QNX 系统软件公司的QNX,ATI 的Nucleus,中国科学院凯思集团的Hopen 嵌入式操作系统等,这类产品在操作系统的结构和实现上都针对所面向的应用领域,对实时性高可靠性等进行了精巧的设计,而且提供了独立而完备的系统开发和测试工具,较多地应用在军用产品和工业控制等领域中。
Linux 是 年代以来逐渐成熟的一个开放源代码的操作系统。 PC 机上的Linux 版本在全球数以百万计爱好者的合力开发下,得到了非常迅速的发展。 年代末uClinux,RTLinux 等相继推出,在嵌入式领域得到了广泛的关注,它拥有大批的程序员和现成的应用程序,是我们研究开发工作的宝贵资源。
学习嵌入式系统的意义
从控制意义上说,嵌入式系统涉及系统最底层的,芯片级的信息处理与控制。在某种意义上,对这些“微观”世界的了解与驾驭正是控制的真正目的。嵌入式系统与通常意义上的控制系统在设计思路和总体架构方面有许多不同之处,而这些不同之处恰恰是传统控制学科教学中较少教给学生的。在当今信息化社会中,嵌入式系统在人们的日常工作和生活中所占的份额,可能已超过传统意义的控制系统,这就是为什么我们的学生感到学的没有用,而有用的又没有学的原因。在嵌入式系统及开发环境方面,目前仍有许多问题尚在研究发展之中,如,嵌入式系统的硬件软件协同设计方法;面向多目标,多任务的微内核嵌入式操作系统;分布嵌入式系统的实时性问题,分布式计算,分布式信息交互与综合处理;以及嵌入式系统的多目标交叉编译和交叉调试工具的研究等。我们希望通过这本教材再配合我们的实验开发平台,学习嵌入式系统的一些基本理论和硬件软件综合设计的方法与技能,亲自动手,实现一个嵌入式系统的解决方案,为今后的深入研究打下一个初步基础。
“嵌入式系统”作为自动化学科一门理论与实际密切结合的,知识与技术含量较高的综合性专业课程,必将随着信息产业的发展而逐渐趋于成熟。
对于这种概念性强的词汇,建议多上上百度的百科