چه تفاوتی بین ISR (Interactive Service Rutine) و یک بردار قطع وجود دارد؟


پاسخ 1:

یک وکتور قطع در یک مکان شناخته شده در حافظه ، معمولاً در جدول به اصطلاح بردار وقفه ذخیره می شود.

IVT را می توان به عنوان آرایه ای از آدرس های حافظه مشاهده کرد.

IVT معمولاً در یک مکان ثابت در RAM قرار دارد. هر ورودی شامل آدرس شروع ISR (سرویس قطع سرویس) با توجه به موقعیت آن در "Array" (IVT) است.

هنگامی که وقفه ای رخ داد ، سخت افزار قطع CPU را مجبور می کند تا وضعیت فعلی را ذخیره کند و سپس به آدرس موجود در IVT که مربوط به وقفه خاصی است که می کند ، میپرد. هنگامی که ISR به پایان رسید ، CPU وضعیت دستگاه قبلی را بازیابی می کند و اجرای کد نرمال همچنان ادامه دارد.