وقفهها جزء مهمی از معماری کامپیوتر هستندو نحوه عملکرد آنها از ماشینی به ماشین دیگر ممکن است متفاوت باشد. وقفه راهکاری را فراهم میسازد تا اجرای دستورالعملهای جاری پردازنده موقتاً متوقف شده و دستورات سرویس دهی دیگری اجراء گردد و سپس از آن کنترل دوباره به برنامه وقفه داده شده باز گردد.
انواع وقفهها را میتوان به صورت زیر دسته بندی کرد:
وقفههای برنامه (یاprogram check) که به دلیل اجرای بعضی دستورات رخ میدهند. مثلاً سرریز شدن محاسباتی تقسیم بر صفر, اجراء دستورالعمل غیر مجاز, رجوع به آدرس خرج از محدوده مجاز کاربر. به این وقفهها اغلب Trap یا تله گفته میشود.
وقفههای زمان سنج(Timer) این وقفه به سیستم عامل امکان میدهد بعضی اعمال را به صورت مرتب در یک پریود زمانی خاص انجام دهد (مثل تنظیم ساعت, چک کردن سخت افزار و..).
وقفههای I/O این وقفهها به وسیله کنترل کنندههای دستگاه I/O تولید میشوند تا کامل شدن طبیعی یک عمل یا بروز خطا در انجام عمل را نشان دهند.
وقفههای نقص سخت افزار یا وقفههای Machine-check) مثل وقفهای که بر اثر خطای بیت توازن (parity) حافظه رخ میدهد یا وقفه نقص برق
وقفه (Super Visor Call) که در واقع یک تقاضا از طرف برنامه کاربر جهت دریافت سرویس ویژهای از سیستم عالم است .
وقفه Restart که با فشار دادن دکمه Reset ایجاد میشود .
در یک تقسیم بندی کلی میتوان وقفههای را سه دسته کرد:
وقفههای داخلی (trap) که بر اثر اجرای دستورات خود برنامه به صورت داخلی در CPU رخ میهند.
وقفههای نرم افزاری(یاهمان SVC) که بر اثر فراخوانی توابع سیستمی توسط برنامه رخ میدهند.
با اجرای مجدد برنامه , وقفههای داخلی به همان صورت قبلی دوباره رخ میدهند ولی وقفههای خارجی مستقل از دستورات برنامه و ناهمگام با برنامه میباشند.
اگر چند منبع همزمان تقاضاهایشان را از طریق یک خط وقفه به CPU اعلام کنند , آنگاه CPU با روش همه پرسی یا سرکشی(polling) منبع وقفه دهنده را تشخیص خواهد داد.)
از پیوند [http://www.foo.com] یا [http://www.foo.com|شرح] برای پیوندها.
برچسب های HTML در داخل توضیحات مجاز نیستند و تمام نوشته ها ی بین علامت های > و < حذف خواهند شد..
وزارت آموزش و پرورش > سازمان پژوهش و برنامهريزی آموزشی
شبکه ملی مدارس ایران رشد