آشنائی با IRQ

آشنائی با IRQ: در نسخه‌های اولیه‌ ویندوز، مشكل تداخلی سخت افزاری بسیار دیده می‌شد. تداخل IRQ وقتی به وجود می‌آید كه چند سخت افزار درصدد استفاده از منابع یكسانی هستند. برای آن كه تصویری …

آشنائی با IRQ:
در نسخه‌های اولیه‌ ویندوز، مشكل تداخلی سخت افزاری بسیار دیده می‌شد. تداخل IRQ وقتی به وجود می‌آید كه چند سخت افزار درصدد استفاده از منابع یكسانی هستند. برای آن كه تصویری بهتری درباره تداخل IRQداشته باشید.
نسخه‌های مختلف ویندوز (از ویندوز ۹۵ به بعد) دارای قابلیت بسیاری برای اداره و كنترل اتوماتیك منابع هستند. هر نسخه جدیدی كه از ویندوز عرضه می‌شود در آن بهبود بیشتری حاصل شده و تداخل سخت‌افزار، كمتردیده می‌شود. البته اگر شما هنوز از ویندوزهای X۹،NT۴.۰،۲۰۰۰،وMe استفاده می‌كنید حتماً هر از گاهی با تداخل سخت‌افزاری روبرو می‌شوید. در ویندوز XP تعداد تداخلات سخت‌افزاری بسیار كمتر از سایر ویندوزها است، اما این بدان معنا نیست كه شما هیچ گاه با چنین مشكلی روبرو نمی‌شوید.
IRQ كوتاه شدن عبارتLines Interrupt Request می‌باشد. معنای این عبارت ((خطوط تقاضای وقفه)) است و منظور از آن فرآیندی است كه یك سخت‌افزار و یا نرم‌افزار موجود در كامپیوتر از پردازشگر می‌خواهد كه كادر خود را رها كند و تقاضای آن وسیله یا برنامه را انجام دهد. معمولاً این بدان معنا است كه آن وسیله یا نرم‌افزار نیاز به انتقال داده دارد و لازم است كه پردازشگر این انتقال را برای او انجام دهد.
وقفه‌ها، وسیله‌های ریز پردازنده جهت برقراری اربتاط با اجزاء دیگر تشكیل دهنده سیستم كامپیوتر هستند.
معمولاً دونوع وقفه وجود دارد:
وقفه نرم‌افزاری و وقفه سخت‌افزاری.
وقفه نرم‌افزاری توسط برنامه كاربردی تقاضا می‌شود و وقفه سخت‌افزاری توسط سخت‌افزارها و وسایل جانبی سیستم تقاضا می‌گردند. تقاضای وقفه می‌تواند علت‌های بی‌شماری داشته باشد كه ممكن است عادی یا غیر منتظره باشد.از جمله این وضعیتها می‌توان درخواست‌های سخت‌افزاری، اعلام خطا در روند ، اقدام انجام كار غیر ممكن و اشكالات حافظه و برخی از بخش‌های مهم را نام برد. هر گاه بیش از یك وقفه در یك لحظه به پردازشگر برسد ابتدا تقدم آنها مشخص می‌شود و سپس اولین نوبت به وقفه‌ای خواهد رسید كه بالاترین تقدم را دارا باشد. علت استفاده كامپیوترها از سیستم IRQ (تقاضای وقفه) كارآمد بودن این سیستم‌ها است. شاید به‌نظر برسد كه تقاضای وقفه از طرف اجزاء سیستم، موجب توقف موقتی عمل پردازشگر می‌شود، اما در هر صورت برای انتقال داده‌ها به مقصد مورد نظر یا انجام هر عمل خاص، باید عمل وقفه صورت بگیرد. اگر وقفه اعلان نشود تنها راه دیگری كه برای پردازشگر باقی می‌ماند تا بتواند این فرآیند را عملی سازد آن است كه در مدت زمان‌های معینی به‌طور مرتب از وسایل دیگر درباره این كه آیا می‌خواهند مورد استفاده قرار گیرند یا خیر پرسش نماید كه البته كارآئی این روش از سیستم تقاضای وقفه كمتر خواهد بود. با یك مثال بهتر می‌توانید این دو روش را با هم مقایسه كنید و تصور درستی از تفاوت میان آنها است به دست آوردید:
خطوط تقاضای وقفه را همچون Pager (فرا خوان) در نظر بگیرید كه هر گاه كسی با شما كار دارد با تولید صدای بیپ آن را به شما اعلام می‌كند. اما روش نظر سنجی از وسایل؛ مانند آن است كه شما به افرادی كه تصور می‌كنید شاید كاری با شما داشته با شند دائماً تلفن كرد و از آنها بپرسید آیا با شما كاری دارند یا خیر؟ به نظرتان كدام روش كارآمدتر خواهد بود؟
سرعت بالای پردازشگر موجب می‌شود كه كاربر از IRQ های (تقاضای وقفه) به وجود آمده در سیستم مطلع نگردد، چون پردازشگر می‌تواند در هر ثانیه تعداد بی‌شماری تقاضای وقفه را اداره و كنترل نماید. در حقیقت شما زمانی از وجود وقفه مطلع می‌شوید.كه تداخل IRQ به وجود می‌آید و سیستم قفل كرده و یا وسیله از درست كار كردن باز می‌ایستد.
ـ خطوط IRQ معدودی برای انتقال درخواست‌های وقفه به پردازشگر وجود دارد. این خطوط با بر چسب‌های IRQ۰ ، ۱IRQ تا IRQ۱۵ مشخص می‌شوند. توزیع این خطوط از اتصال دهنده‌های موجود در گذرگاه توسعه (باس) تا كنترل‌گر وقفه برنامه پذیر موجود بر روی مادربرد را شامل می‌شود.
وقتی عملی از سوی كاریر مانند فشردن یك كلید از صفحه كلید یا عملی از سوی سیستم مانند دریافت داده از درگاه سر یال موجب پدید آمدن تقاضای وقفه می‌شود، كامپیوتر روتین كنترل وقفه را اجراء می‌كند. این روتین به پردازشگر می‌گوید كاری را كه هم اكنون در حال انجام آن است به حالت تعلیق در می‌آورد. آدرس آخرین خط برنامه اجراء شده را در یك جا ذخیره می‌كند، سپس به یك جدول از قبل تعریف شده رجوع می‌كند (جدول برداری). وقتی كه یك وقفه می‌آید حامل یك شماره وقفه است. با چك كردن شماره وقفه نوع كار درخواست شده تعیین می‌گردد و پردازشگر مشغول انجام درخواست خواسته شده می‌شود. پس از اتمام كار، پردازشگر مجدداً به حافظه سر زده و از آنجا به بازیابی آدرسی كه مشغول اجراء بوده است و در هنگام توقف علامت گذاری كرده است می‌رود و برنامه روند عادی خود را طی خواهد كرد. ممكن است بعضی از خطوط تقاضای وقفه دیگر موجود نباشند یعنی وسایلی كه این خطوط به آنها مربوط می‌شوند از سیستم خارج شده‌اند. بنابراین وظیفه‌ای كه ویندوز در اولین نصب خود و نیز هر گاه كه شما قطعه جدیدی را به سیستم اضافه می‌نمائید با آن روبرو می‌شود این است كه خطوط وقفه را به نحوی بین وسایل موجود توزیع كند كه آنها بتوانند با پردازشگر ارتباط بر قرار كنند.
موضوع دیگر استفاده از رابط‌هائی چون USB است:
ـ رابط USBخود تنها از یك خط IRQ استفاده می‌كند، اما می‌توان وسایل بی‌شماری كه به آن وصل می‌شوند را كنترل نماید.
ـ وسایلی كه از رابط USB استفاده نمیظكنند ناچار هستند IRQ ها را به اشتراك بگذارند.
این مورد در وسایل PCI هم دیده می‌شود. این وسایل بسیاری از كارت‌های افزودنی كه امروز فروخته می‌شوند را شامل می‌شود. به‌عنوان مثال دیگر از شیارهای ISA كه برای سخت افزارهای قدیمی استفاده می‌شدند خبری نیست. بعد ازISA ‌ شاهد طراحی و به‌كارگیری شیارهای PCI برای اشتراك گذاری IRQها بودیم. به این ترتیب میزان تداخلات IRQ كه در محیط DOS و نسخه‌های اولیه ویندوز امری معمول به شمار می‌رفت بسیار كاهش دادند.
برای مثال یكی از تداخلات IRQ معمول در آن زمان هنگام استفاده از ماوس با مودم به وجود می‌آمد. علت این مشكل آن بود كه مودم و ماوس هر دو برای استفاده از خط IRO ۴ تلاش می‌كردند.نتیجه این شرایط آن بود كه هنگام راه‌اندازی مودم، ماوس قفل می‌كرد. اما در هر صورت هنوز مشكل تداخل در ارتباط با درگاه COM وجود داشت و كاربر مجبور بود به‌طور دستی به تنظیم مودم بپردازد و همچنین یك جفت Dipswitch كوچك را بر روی مودم خود نصب می‌كرد. با ظهور ویندوز ۹۵ دیگر استفاده از Dipswitch برای مودم‌ها كنار گذاشته شد، چون این ویندوز می‌توانست درگاه‌های COM و خطوط IRQ را به‌طور خوركار تنظیم كند.
شاید تنها رد پای باقی مانده از گذشته مربوط به BIOS تنظیمی وجود دارد كه به سیستم عمل اجازه می‌دهد تمام تخصیص‌های سخت‌افزاری را كنترل و اداره نماید. اگر از ویندوز ۹۸ یا نسخه‌های بالاتر استفاده می‌كنید. می‌توانید وارد BIOS شده و ویژگی مذكور را به گونه‌ای تنظیم كنید كه عمل تخصیص سخت‌افزاری فقط توسط سیستم عامل انجام گیرد . اگر این كار را نكنید در آن صورت ویندوز ناچار خواهد بود تا از تخصیص‌های تعیین شده توسط BIOS استفاده كند و همین امر بروز تداخل IRQ را شدت می‌بخشد. در حقیقت با پیشرفت سیستم عامل‌های جدید، سیستم‌ها قادر خواهند بود مسئوولیت شناسائی سخت‌افزارها و اختصاص منابع موجود به آنها را بپذیرند. برای ورود به BIOS باید كامپیوتر را راه‌اندازی كرد و قبل از بالا آمدن سیستم یكی از كلیدهای F۱،F۱۰ و یا Delete را فشار دهید.