Как процессор узнает, что происходит IRQ или FIQ, и как он переключается в определенный режим запроса прерывания?

Предположим, процессор находится в режиме пользователя, и происходит IRQ, затем его изменения в режиме IRQ.

Но пользовательский режим не имеет права записи в поле управления cpsr, тогда как режим меняется? Может быть, я ошибаюсь, пожалуйста, объясните.

ARCH = ARM.

Заранее спасибо.

1 ответ

Прерывание фактически прерывает код режима пользователя и переводит процессор в режим IRQ. Вот почему это называется прерыванием. Аппаратное обеспечение может делать все что угодно, а механизм прерывания реализован в аппаратном обеспечении.

Другие вопросы по тегам