Reference 1
static void cpu_startup(void *);
SYSINIT(cpu, SI_SUB_CPU, SI_ORDER_FIRST, cpu_startup, NULL);
cpu_startup(void *dummy)
in sys/mips/mips/machdep.c
–> cpu_init_interrupts();
cpu_init_interrupts()[sys/mips/mips/intr_machdep.c]: perform initialization of interrupts prior to setting handlings.
intrnames
; increase the global counter intrcnt_index
;void mips_vector_init(void)[sys/mips/mips/machdep.c]: initialize the hardware exception vectors, and the jump table used to call locore cache and TLB management functions, based on the kind of CPU the kernel is running on.
sys/mips/mips/exception.S
MipsException: handles all exceptions except RESET and TLBMiss.
RESET
MipsTLBMiss: vector address 0x8000,0000
If you could revise
the fundmental principles of
computer system design
to improve security...
... what would you change?