åå®é
ä¸èµ·çï¼ææä¼å¥½çå¤ã
书ç±ä¸è®²çå¤æ¯ç论ï¼å¯ä»¥èªå·±åå»æ¾ä¸ªå¼æºçåµå
¥å¼OSï¼ä¸èµ·çç代ç å®ç°ï¼å°±ä¼å¥½çå¤äºãæ¯å¦FreeRTOSï¼å¯ä»¥ä¹ä¹°æ¬ä¹¦ï¼å¦ä¼ç¼è¯ï¼å¹¶å¨çµèéå½æ个åºç¨è·èµ·æ¥ï¼å¦ä¼èªå·±å建è¿ç¨ãåç¨åï¼è¿å
¥å¯¹åºçAPIå®ç°ççãå
æ ¸çè°åº¦ãä¼å
级ãå
å管çãèµæºç®¡çãæ¢å å¼ä»»å¡åæ¢ççã
éæ©åµå
¥å¼OSæ¯å 为足å¤å°ï¼æ¯ç«è¦ä¸ºè¿ä¸ªäºæ
读Linuxæºç å°±æ¯ä¸ªå¤§åãFreeRTOSæ¥æ大é¨åç°ä»£OSçåç§æ ¸å¿åè½ï¼ç¨æ¥å¦ä¹ çæ¯ä¸ªå¥½çä¾åãæä¹æ¯å¦äºFreeRTOSåï¼æéæ¸è®©æ°å¹´åæä½ç³»ç»çç¥è¯åå¾çµæ´»èµ·æ¥äºã
举å 个ä¾åï¼å¨FreeRTOSä¸çå®ç°ï¼
1. 线ç¨ç®¡çï¼
ç»æ¯ä¸ªçº¿ç¨å»ºç«ä¸ªç§æçå æ ï¼æ¯æ¬¡å¨çº¿ç¨éè°ç¨ä»»ä½çå½æ°ï¼æéçåæ°ä¼ éãæ¬å°åéçé½æ¯æ¾å¨çº¿ç¨ç§æå æ éçãè¿æ ·å个线ç¨ä¹é´ä¸ä¼åçæ··ä¹±ã该å æ ç建ç«ä¸è¬è¿æ个æ大é¿åº¦å¼ï¼ä»¥å
浪费å
åè¿å¤ï¼åæ¶ä¹éå¶äºéå½è¿æ·±çæ
åµãéè¦OSåºç¨ä¸å¼å§å°±è¿è¡ä¸ä¸ªä¼°ç®ï¼è°ç¨æ ä¼æå¤æ·±ã
2. å
å管çï¼
ä¸è¬æ¯å
ä»ç©çå
åéç³è¯·ä¸å¤§åå
åï¼å»ºç«é对è¿åå
åçåé
表ï¼æ¯å½æç³è¯·å
å就记å½ä¸æ¡ï¼éæ¾å
åå°±éæ©æ¶æºå°å©ä½å
åå并ãåé
çç¥æå¤ç§ï¼æ¯å¦æç
§é¡ºåºï¼æè
ä¼å
éæ©ç¬¦åæ¡ä»¶çæå°ç©ºé²æ®µãæ¯ä¸ªçº¿ç¨é½å»ºç«èªå·±çå ï¼æå©äºæé«å
ååé
æçã
3. è¿ç¨/线ç¨åæ¢ï¼
使ç¨ç³»ç»ç¡¬ä»¶ä¸çå®æ¶å¨ï¼æ¯éä¸å®æ¶é´å°±åçä¸æ¬¡ç¡¬ä»¶ä¸æï¼æ¤æ¶å½åè¿ç¨/线ç¨è¢«åæ¢ï¼ææå¯åå¨è¢«ä¿åå°è¿ç¨ç§ææ éã两次ä¸æä¹é´å®é
æ§è¡ä»»å¡ä»£ç çé¨åï¼å°±å«åä¸ä¸ªæ¶é´çãç¶åè°ç¨ä¸æå¤çå½æ°ãè¿ä¸ªä¸æå¤çå½æ°å°±æ¯OSå
æ ¸éçä»»å¡åæ¢åè½ï¼ä¼éæ°éæ©å¤äºå°±ç»ª(ready)ç¶æçå个任å¡ä¸ä¼å
级æé«çé£ä¸ªæ¥è¿è¡ãæ以ï¼ç解并å®ç°è¿ä¸ªä¸æå¤çå½æ°ï¼å°±æ¯ç解任å¡åæ¢çå
³é®ãæ¾å¿ä»£ç ä¸é¿ã
4. OSå
æ ¸è°ç¨ï¼
ç°ä»£çCPUï¼å
æ¬ä¸äºåµå
¥å¼MCUï¼é½ä¼ä¸¥æ ¼åºåuser spaceåkernel spaceã两è
çåç§èµæºç¸å¯¹ç¬ç«ï¼çè³å æ é½ä¸åãå½user applicationéè¦è°ç¨å
æ ¸æä¾çæå¡æ¶ï¼å¾å¾æ¯å°èªå·±è¦è°ç¨çå
æ ¸è°ç¨ç¬¦å·ãåæ°ãè¿åå¼æ¾å°å
åä¸æå®ä½ç½®ï¼ç¶å触åä¸ä¸ªè½¯ä»¶ä¸æãæ¯å¦Cortex-Mç³»åçSVCallï¼æè
DOSç80ä¸æãæ¤æ¶å°±åæ¢å°äºkernel modeãæ¤æ¨¡å¼ä¸çä¸æå¤çå½æ°ä¼æ ¹æ®ç³»ç»è°ç¨å
容ååè°ç¨è¯·æ±ï¼æ§è¡ç»æåï¼åæ ¹æ®è¿åå°å跳转åå»ã
ææ¨è 6.828 / Fall 2014ï¼å¾å¹´çè§é¢ä¹å¾å®¹ææ¾å°ãè¿é¨è¯¾ä¼æ¥è§¦å°ä¸¤ä¸ªå°çæä½ç³»ç»: xv6 å jOSã课å ä¸ä¸»è¦è®²xv6, ä¸ä¸ªå°çunixæä½ç³»ç»ï¼è课ç¨Labå6~7个é¶æ®µè®©ä½ å¡«åjOSçå
³é®ä»£ç ã
è¿é¨è¯¾ç好å¤å°±æ¯ç论å å®è·µï¼èä¸è¯¾ç¨èå¥å¾å¥½ã
æ¯å¦è®²å®ç³»ç»è°ç¨ï¼ä½ å°±å¯ä»¥è¯çç»xv6å 个timerè°ç¨ï¼è®²å®threadsï¼ä½ å°±å¯ä»¥è¯çç»xv6å 个系ç»è°ç¨ï¼ç¶å让è¿ä¸ªç³»ç»æ¯æ线ç¨...
Labå®ç°çjOSåxv6æå¾å¤è®¾è®¡å³çä¸åï¼å¯¹æ¯å®ä»¬ä½ å¯ä»¥æ´å¥½çç解ä»ä¹æ¯æä½ç³»ç»ï¼å½ç¶è½èªå·±äº²æåä¸äºä»£ç æè§ä¼å¾ä¸ä¸æ ·ï¼ç论æä¹è½¬æ¢å°å®è·µï¼
å ç¹ä½ä¼ï¼
homeworkä¹è®¸æ¯Labæ´æå¯åæ§(ææ¯è¿ä¹è®¤ä¸ºç)ï¼
å¦æçè¿CSAPPå°±æ好äºï¼æ±ç¼é½ä¸ç¨å¦äºï¼shellä¹ä¼åäºï¼memoryä¹äºè§£äºã
6.828æ个ä½ä¸æ交系ç»ï¼åªè¦é®ç®±å°±è½æ³¨åäºï¼ç¶åå¯ä»¥äºè¯Lab...
æäºä¸äºèªå·±çä½éªåï¼ç¶åç»å书çä¹è®¸å°±å®å
¨ä¸ä¸æ ·äºã
温馨提示:内容为网友见解,仅供参考