æ°æ®ä¼ éæ§å¶æ¹å¼æç¨åºç´æ¥æ§å¶æ¹å¼ãä¸ææ§å¶æ¹å¼ã
DMAæ¹å¼åééæ¹å¼4ç§ã
ç¨åºç´æ¥æ§å¶æ¹å¼å°±æ¯ç±ç¨æ·è¿ç¨æ¥ç´æ¥æ§å¶å
åæCPUåå¤å´è®¾å¤ä¹é´çæ°æ®ä¼ éã
å®çä¼ç¹æ¯æ§å¶ç®åï¼ä¹ä¸éè¦å¤å°ç¡¬ä»¶æ¯æã
å®ç缺ç¹æ¯CPUåå¤å´è®¾å¤åªè½ä¸²è¡å·¥ä½ï¼
设å¤ä¹é´åªè½ä¸²è¡å·¥ä½ï¼æ æ³åç°åå¤çç±äºè®¾å¤æå
¶ä»ç¡¬ä»¶æ产ççé误ã
ä¸ææ§å¶æ¹å¼æ¯å©ç¨åCPUåéä¸æçæ¹å¼æ§å¶å¤å´è®¾å¤åCPUä¹é´çæ°æ®ä¼ éã
å®çä¼ç¹æ¯å¤§å¤§æé«äºCPUçå©ç¨çä¸è½æ¯æå¤éç¨åºå设å¤ç并è¡æä½ã
å®ç缺ç¹æ¯ç±äºæ°æ®ç¼å²
å¯åå¨æ¯è¾å°ï¼å¦æä¸æ次æ°è¾å¤ï¼ä»ç¶å ç¨äºå¤§éCPUæ¶é´ï¼
å¨å¤å´è®¾å¤è¾å¤æ¶ï¼ç±äºä¸æ次æ°çæ¥å§å¢å ï¼å¯è½é æCPUæ æ³ååºä¸æèåºç°ä¸æ丢失çç°è±¡ï¼
å¦æå¤å´è®¾å¤é度æ¯è¾å¿«ï¼å¯è½ä¼åºç°CPUæ¥ä¸åä»æ°æ®ç¼å²å¯åå¨ä¸åèµ°æ°æ®è丢失æ°æ®çæ
åµã
DMAæ¹å¼æ¯å¨å¤å´è®¾å¤åå
åä¹é´å¼è¾ç´æ¥çæ°æ®äº¤æ¢éè·¯è¿è¡æ°æ®ä¼ éã
å®çä¼ç¹æ¯é¤äºå¨æ°æ®åä¼ éå¼å§æ¶éè¦CPUçå¯å¨æ令ï¼å¨æ´ä¸ªæ°æ®åä¼ éç»ææ¶éè¦åä¸æéç¥CPUè¿è¡ä¸æå¤çä¹å¤ï¼ä¸éè¦CPUçé¢ç¹å¹²æ¶ã
å®ç缺ç¹æ¯å¨å¤å´è®¾å¤è¶æ¥è¶å¤çæ
åµä¸ï¼å¤ä¸ª
DMAæ§å¶å¨çåæ¶ä½¿ç¨ï¼ä¼å¼èµ·å
åå°åçå²çªå¹¶ä½¿å¾æ§å¶è¿ç¨è¿ä¸æ¥å¤æåã
ééæ¹å¼æ¯ä½¿ç¨ééæ¥æ§å¶å
åæCPUåå¤å´è®¾å¤ä¹é´çæ°æ®ä¼ éã
ééæ¯ä¸ä¸ªç¬ç«ä¸CPUçä¸ç®¡è¾å
¥ï¼è¾åºæ§å¶çæºæï¼å®æ§å¶è®¾å¤ä¸å
åç´æ¥è¿è¡æ°æ®äº¤æ¢ã
å®æèªå·±çééæ令ï¼è¿äºæ令åCPUå¯å¨ï¼å¹¶å¨æä½ç»ææ¶åCPUåä¸æä¿¡å·ã
该æ¹å¼çä¼ç¹æ¯è¿ä¸æ¥åè½»äºCPUçå·¥ä½è´æ
ï¼å¢å äº
计ç®æºç³»ç»ç并è¡å·¥ä½ç¨åº¦ã
缺ç¹æ¯å¢å äºé¢å¤ç硬件ï¼é ä»·æè´µã
端å£æ¯æ¥å£çµè·¯ä¸è½è¢«CPUç´æ¥è®¿é®çå¯åå¨çå°åã
I/O端å£çç¼åæ¹å¼å¯ä»¥å为ç»ä¸ç¼åä¸ç¬ç«ç¼å两ç§ã
ç»ä¸ç¼åæ¹å¼æ¯ä»
åå¨å¨ç©ºé´ååºä¸é¨åå°å空é´ç»I/O设å¤ï¼æI/Oæ¥å£ä¸ç端å£å½ä½åå¨å¨åå
ä¸æ ·è¿è¡è®¿é®ï¼ä¸è®¾ç½®ä¸é¨çI/Oæ令ï¼æä¸é¨å对åå¨å¨ä½¿ç¨çæ令ä¹å¯ç¨äºç«¯å£ã
ç»ä¸ç¼åçæ
åµæ¯ï¼ä¼ç¹ï¼æ令类åå¤ãåè½é½å
¨ï¼ä¸ä»
使访é®I/O端å£å¯å®ç°è¾å
¥/è¾åºæä½èä¸å¯å¯¹ç«¯å£è¿è¡ç®æ°
é»è¾è¿ç®ã移ä½çï¼
å¦å¤è½ç»ç«¯å£è¾å¤§çç¼å空é´ã
缺ç¹ï¼ç«¯å£å ç¨äºåå¨å¨çå°å空é´ï¼ä½¿åå¨å¨å®¹éåå°ï¼å¦å¤æ令é¿åº¦æ¯ä¸é¨I/Oæ令é¿ï¼å èæ§è¡é度è¾æ
¢ã
ç¬ç«ç¼å使æ¥å£ä¸ç端å£å°ååç¬ç¼åèä¸ååå¨ç©ºé´åå¨ä¸èµ·ã
ç¬ç«ç¼åçç¹ç¹æ¯ï¼ä¼ç¹ï¼I/O端å£å°åä¸å ç¨åå¨ç©ºé´ï¼
使ç¨ä¸é¨çI/Oæ令对端å£è¿è¡æä½ï¼I/Oæ令çæ§è¡é度快ï¼
并ä¸ç±äºä¸é¨I/Oæ令ä¸åå¨å¨è®¿é®æ令æææ¾çåºå«ï¼ä½¿ç¨åºä¸I/Oæä½ååå¨å¨æä½å±æ¬¡æ¸
æ°ï¼ç¨åºçå¯è¯»æ§å¼ºã
缺ç¹ï¼æ令å°ï¼åªæè¾å
¥ä¸è¾åºåè½ã
CPUä¸I/Oæ¥å£çµè·¯ä¹é´ä¼ éçä¿¡æ¯æ