內(nèi)核數(shù)據(jù)中止是什么意思?
內(nèi)核數(shù)據(jù)中止來源于指令取指失敗和數(shù)據(jù)訪問失敗。
它們可以來自外部內(nèi)存系統(tǒng),在內(nèi)存訪問時給出錯誤響應。另外,中止可以由內(nèi)核的內(nèi)存管理單元生成。
操作系統(tǒng)可以使用MMU中止來為應用程序動態(tài)分配內(nèi)存。
預取一條指令時,可以在指令流水線中中將其標記為已中止。
僅當內(nèi)核嘗試執(zhí)行它時,才導致預取中止異常。異常發(fā)生在指令執(zhí)行之前。
如果標記為中止的指令到達指令流水線的執(zhí)行階段之前刷新了指令流水線,則不會發(fā)生中止異常。
數(shù)據(jù)中止異常發(fā)生在加載或存儲指令執(zhí)行時,并且是在嘗試讀取或?qū)懭霐?shù)據(jù)之后發(fā)生的。
如果中止是由于指令流的執(zhí)行或嘗試執(zhí)行而產(chǎn)生的,則中止被描述為同步的,并且返回地址將提供導致該中止的指令的詳細信息。
異步的中止不是由執(zhí)行指令生成,異步中止的返回地址可能不提供導致中止的原因的信息。