www.pudn.com > LFYOS.zip > system.s
.global do_idle,reload_cr3_flag .global system_call_interruption_routine,timer_interruption_routine reload_cr3_flag: .long 10 do_idle: sti nop nop cli ret system_call_interruption_routine: call save_parameter cmpl $(0x00),%edi je restore_parameter movl $(system_call_routine),0x48(%edi) jmp restore_parameter timer_interruption_routine: call save_parameter cmpl $(0x00),%edi je 2f movl $(time_routine),0x48(%edi) jmp restore_parameter 2: call lock_os_kernel cmpl $(0x00),%eax jne 2b call kernel_semaphore_time_deal call unlock_os_kernel jmp restore_parameter