-4
我無法在xv6-rev6源代碼中找到頁面錯誤處理程序。是我錯過了,還是根本沒有頁面錯誤處理程序?我在Traps.h(表格中的2817行)中發現了「#define T_PGFLT 14 // page fault」,但除第2817行之外,我找不到它。xv6 rev6頁面錯誤處理程序
我無法在xv6-rev6源代碼中找到頁面錯誤處理程序。是我錯過了,還是根本沒有頁面錯誤處理程序?我在Traps.h(表格中的2817行)中發現了「#define T_PGFLT 14 // page fault」,但除第2817行之外,我找不到它。xv6 rev6頁面錯誤處理程序
異常處理開始於vector14()
,這是在矢量S中定義的,由this Perl script生成。
vector14()
然後將控制轉移到alltraps()
,這是所有進一步例外和系統呼叫處理的常用入口點。
alltraps()
終於調用C處理程序trap()
,該處理程序分析事件並分派適當的處理程序(系統調用,I/O,異常)。
trap()
調用pgfault_handler()
來處理頁面錯誤。
感謝您的回答。 –