فایل بررسي ورودی و خروجی INPUT/ OUTPUT MANAGEMENT
توضیحات تکمیلی
فایل بررسي ورودی و خروجی INPUT/ OUTPUT MANAGEMENT Normal 0 false false false EN-US X-NONE FA MicrosoftInternetExplorer4 <w:LatentStyles DefLockedState='false' DefUnhideWhenUsed='true' DefSemiHidden='true' DefQFormat='false' DefPriority='99' LatentStyleCount='267'> <w:LsdException Locked='false' Priority='0' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Normal'/> <w:LsdException Locked='false' Priority='0' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='heading 1'/> <w:LsdException Locked='false' Priority='10' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Title'/> <w:LsdException Locked='false' Priority='11' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Subtitle'/> <w:LsdException Locked='false' Priority='22' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Strong'/> <w:LsdException Locked='false' Priority='20' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Emphasis'/> <w:LsdException Locked='false' Priority='59' SemiHidden='false' UnhideWhenUsed='false' Name='Table Grid'/> <w:LsdException Locked='false' Priority='1' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='No Spacing'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 1'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 1'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 1'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 1'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 1'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 1'/> <w:LsdException Locked='false' Priority='34' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='List Paragraph'/> <w:LsdException Locked='false' Priority='29' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Quote'/> <w:LsdException Locked='false' Priority='30' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Intense Quote'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 1'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 1'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 1'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 1'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 1'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 1'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 1'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 1'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 2'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 2'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 2'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 2'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 2'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 2'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 2'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 2'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 2'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 2'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 2'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 2'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 2'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 2'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 3'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 3'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 3'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 3'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 3'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 3'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 3'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 3'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 3'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 3'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 3'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 3'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 3'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 3'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 4'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 4'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 4'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 4'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 4'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 4'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 4'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 4'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 4'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 4'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 4'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 4'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 4'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 4'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 5'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 5'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 5'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 5'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 5'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 5'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 5'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 5'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 5'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 5'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 5'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 5'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 5'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 5'/> <w:LsdException Locked='false' Priority='60' SemiHidden='false' UnhideWhenUsed='false' Name='Light Shading Accent 6'/> <w:LsdException Locked='false' Priority='61' SemiHidden='false' UnhideWhenUsed='false' Name='Light List Accent 6'/> <w:LsdException Locked='false' Priority='62' SemiHidden='false' UnhideWhenUsed='false' Name='Light Grid Accent 6'/> <w:LsdException Locked='false' Priority='63' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 1 Accent 6'/> <w:LsdException Locked='false' Priority='64' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Shading 2 Accent 6'/> <w:LsdException Locked='false' Priority='65' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 1 Accent 6'/> <w:LsdException Locked='false' Priority='66' SemiHidden='false' UnhideWhenUsed='false' Name='Medium List 2 Accent 6'/> <w:LsdException Locked='false' Priority='67' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 1 Accent 6'/> <w:LsdException Locked='false' Priority='68' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 2 Accent 6'/> <w:LsdException Locked='false' Priority='69' SemiHidden='false' UnhideWhenUsed='false' Name='Medium Grid 3 Accent 6'/> <w:LsdException Locked='false' Priority='70' SemiHidden='false' UnhideWhenUsed='false' Name='Dark List Accent 6'/> <w:LsdException Locked='false' Priority='71' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Shading Accent 6'/> <w:LsdException Locked='false' Priority='72' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful List Accent 6'/> <w:LsdException Locked='false' Priority='73' SemiHidden='false' UnhideWhenUsed='false' Name='Colorful Grid Accent 6'/> <w:LsdException Locked='false' Priority='19' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Subtle Emphasis'/> <w:LsdException Locked='false' Priority='21' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Intense Emphasis'/> <w:LsdException Locked='false' Priority='31' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Subtle Reference'/> <w:LsdException Locked='false' Priority='32' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Intense Reference'/> <w:LsdException Locked='false' Priority='33' SemiHidden='false' UnhideWhenUsed='false' QFormat='true' Name='Book Title'/> /* Style Definitions */ table.MsoNormalTable {mso-style-name:'Table Normal'; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:''; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:'Calibri','sans-serif'; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:'Times New Roman'; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:Arial; mso-bidi-theme-font:minor-bidi;} <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>يكي از عملكردهاي بسيار مهم و اصلي سيستم عامل كنترل و مديريت دستگاههاي ورودي/ خروجي (I/O)<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> در كامپيوتر است. سيستم عامل بايد فرمانهايي را به اين دستگاهها بفرستد، وقفه ها را بگيرد و خطاها را اداره كند. و همچنين بايد يك رابط بين دستگاهها و بقيه سيستم به منظور استفاده ساده تر از آنها فراهم نمايد. <span style='font-size:18.0pt;mso-ansi-font-size:16.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>اصول سخت افزاري I/O<span style='font-size:18.0pt;mso-ansi-font-size:16.0pt;line-height:140%; font-family:Lotus' lang='AR-SA'> <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>ديد افراد مختلف نسبت به سخت افزار I/O<span style='font-size:16.0pt;mso-ansi-font-size:14.0pt;line-height:140%;font-family: Lotus' lang='AR-SA'> متفاوت است. مهندسين برق و الكترونيك آن را بصورت مدارهاي مجتمع، مدار چاپي، منابع تغذيه، موتورها و ديگر اجزاء فيزيكي تشكيل دهنده سخت افزار مي بينند. برنامه نويسان آن رابه شكل واسطه ارائه شده به نرم افزار، فرامين مورد قبول سخت افزار، توابع قابل اجرا و خطاهاي احتمالي و گزارش آنها مي بينند. از يك ديدگاه، دستگاههاي ورودي/ خروجي بطور كلي به دو دسته تقسيم مي شوند. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>1- دستگاههاي بلوكي BLOCK DEVICE<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>2- دستگاههاي كاركتري CHARACTER DEVICE<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>يك دستگاه بلوكي وسيله اي است كه اطلاعات را در يك بلوك با اندازه معين ذخيره مي كند كه هر كدام با آدرس خودشان مشخص شده اند. حدود اندازه بلوكهاي معمولي از 512 بايت تا 32768 بايت مي باشند خاصيت اساسي يك دستگاه بلوكي اين است كه خواندن و نوشتن هر بلوك را بطور مستقل از بقيه ممكن مي سازد ديسكها از متداولترين دستگاههاي بلوكي هستند. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>نوع ديگري از دستگاههاي ورودي/ خروجي، دستگاههاي كاركتري است. يك دستگاه كاركتري يك جريان از كاركترها را بدون توجه به هيچ ساختار بلوكي، دريافت نموده و يا تحويل مي دهد، بنابراين قابليت آدرس دهي و جستجو در آن وجود ندارد. چاپگرها، واسطه هاي شبكه، موشواره ها و ديگر دستگاههايي كه شبيه ديسك نيستند، به عنوان دستگاه كاركتري در نظر گرفته مي شوند. از ديدگاه ديگر دستگاههاي ورودي/ خروجي به سه طبقه تقسيم مي شوند: <span style='font-size:16.0pt;mso-ansi-font-size:14.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>1- قابل خواندن توسط انسان: <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>مناسب براي ارتباط با كاربر، مانند پايانه هاي نمايش دهنده تصوير، صفحه كليد و…<span style='font-size:16.0pt;mso-ansi-font-size:14.0pt;line-height:140%; font-family:Lotus' lang='AR-SA'> <span style='font-size:16.0pt;mso-ansi-font-size:14.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>2- خواندن توسط ماشين: <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>مناسب براي ارتباط با وسائل الكترونيكي، مانند گردانندهاي ديسك و نوار، حس كنندهها، كنترل كننده ها و محركها. <span style='font-size:16.0pt;mso-ansi-font-size:14.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>3- ارتباطات: <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>مناسب براي ارتباط با دستگاههاي دور مانند، گرداننده هاي ديجيتالي خط و مودمها. تفاوتهاي زيادي در بين هر طبقه وجود دارد كه مهمترين آنها عبارتند از: <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>نرخ انتقال، كاربرد، پيچيدگي كنترل، واحد انتقال، نمايش داده ها، شرايط خطا. <span style='font-size:18.0pt;mso-ansi-font-size:16.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>سازمان عمل ورودي/ خروجي <span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>الف) ورودي/ خروجي برنامه ريزي شده: <span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>پردازنده يك فرمان ورودي/ خروجي را از جانب فرايندي به يك مولفه ورودي/ خروجي صادر مي كند. سپس آن فرايند قبل از ادامه، تا كامل شدن عمل ورودي/ خروجي به انتظار مي ماند. <span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>ب) ورودي/ خروجي مبتني بر وقفه:<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> پردازنده يك فرمان ورودي/ خروجي را از جانب فرايند صادر مي كند، سپس به اجراي دستورالعملهاي بعدي ادامه مي دهد و با كامل شدن عمل ورودي/ خروجي يا وقفه مولفه ورودي/ خروجي مواجه مي شود. دستورالعملهاي بعدي مي توانند از همان فرايند باشند البته به شرطي كه فرايند نيازي به انتظار براي تكميل ورودي/ خروجي نداشته باشد. در غير اين صورت فرايند در انتار وقفه معلق مي گردد و كار ديگري انجام مي گيرد. <span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>پ) دسترسي مستقيم به حافظه DMA<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>: <span style='font-size:16.0pt;mso-ansi-font-size:14.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>مولفه DMA<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> تبادل داده ها بين حافظه اصلي و مولفه ورودي/ خروجي را كنترل مي كند. پردازنده تقاضايي براي انتقال يك بلوك از داده ها را به مولفه DMA<span style='font-size:16.0pt;mso-ansi-font-size:14.0pt;line-height:140%;font-family: Lotus' lang='AR-SA'> مي فرستد و فقط پس از انتقال كل بلوك مورد وقفه قرار مي گيرد. <span style='font-size:18.0pt;mso-ansi-font-size:16.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>تكامل عمل ورودي/ خروجي <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>مي توان گامهاي تكاملي را بصورت زير خلاصه نمود: <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>1- كنترل دستگاه جانبي بطور مستقيم. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>2- يك كنترل كننده يا مولفه ورودي/ خروجي افزوده شده است. پردازنده از ورودي/ خروجي برنامه ريزي شده بدون وقفه استفاده مي كند. با اين گام پردازنده از جزئيات اختصاصي واسط هاي دستگاه خارجي جدا مي گردد. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>3- همان پيكربندي گام دوم، ولي اين بار از وقفه استفاده شده است. ديگر وقت پردازنده تلف نمي شود. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>4- از طريق DMA<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> كنترل مستقيم حافظه به مولفه ورودي/ خروجي داده شده است. حال مي توان بلوكي از داده را بدون دخالت پردازنده به/ از حافظه انتقال داد. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>5- مولفه ورودي/ خروجي تا حد پردازنده اي مجزا، با مجموعه اي دستورالعملهاي خاصي براي ورودي/ خروجي ارتقاء يافته است. پردازنده مركزي (CPU)<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>، پردازنده ورودي/ خروجي را براي اجراي برنامه ورودي/ خروجي از حافظه هدايت مي كند، پردازنده ورودي/ خروجي اين دستورالعملها را بدون دخالت پردازنده مركزي واكنشي و اجرا مي كند. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>6- مولفه ورودي/ خروجي داراي حافظه محلي اختصاصي و در واقع به نوبه خود يك كامپيوتر است. با اين معماري، مجموعه بزرگي از دستگاههاي ورودي/ خروجي با حداقل دخالت پردازنده مركزي مي تواند كنترل شود. <span style='font-size:18.0pt;mso-ansi-font-size:16.0pt; line-height:140%;font-family:Lotus' lang='AR-SA'>دسترسي مستقيم به حافظه <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>اساساً مولفه DMA<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> بايد فقط زماني از گذرگاه استفاده كند كه پردازنده به آن نيازي ندارد، يا بايد پردازنده را وادار كند كه بطور موقت عمليات خود را معلق نمايد. روش اخير بيشتر معمول است و به آن ربودن چرخه مي گويند. روش DMA<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> به اين صوتر كار مي كند كه، هرگاه پردازنده در صدد خواندن يا نوشتن بلوكي از داده ها برآيد، فرماني به مولفه DMA<span style='font-size:16.0pt; mso-ansi-font-size:14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> مي دهد و از اين طريق اطلاعات زير را به آن مولفه ميفرستد. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>- اينكه درخواست خواندن يا نوشتن. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>- آدرس دستگاه ورودي/ خروجي درگير. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>- آدرس مكان شروع خواندن يا نوشتن در حافظه. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>- تعداد كلماتي كه بايد خوانده يا نوشته شود. <span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'>سپس پردازنده به كارهاي ديگر پرداخته و عمل ورودي/ خروجي را به مولفه DMA<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> محول مي كند. مولفه DMA<span style='font-size:16.0pt;mso-ansi-font-size: 14.0pt;line-height:140%;font-family:Lotus' lang='AR-SA'> همه بلوك داده ها را به صورت يك كلمه در هر زمان به طور مستقيم و بدون عبور از پردازنده به/ از حافظه انتقال مي دهد. هنگاميكه انتقال كامل شده مولفه DMA<span style='font-size:16.0pt;mso-ansi-font-size:14.0pt;line-height:140%;font-family: Lotus' lang='AR-SA'> يك علامت وقفه به پردازنده ارسال مي كند. بنابراين پردازنده فقط در آغاز و پايان انتقال درگير مي باشد.