From a7a7b97b9545712438c04e1179c24a89e6a8cf64 Mon Sep 17 00:00:00 2001 From: Shine wOng <1551885@tongji.edu.cn> Date: Thu, 9 May 2019 21:04:33 +0800 Subject: [PATCH] modify the layout --- thu_os/chp1.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/thu_os/chp1.md b/thu_os/chp1.md index 660a90c..761b640 100644 --- a/thu_os/chp1.md +++ b/thu_os/chp1.md @@ -108,6 +108,7 @@ BIOS -> 磁盘主引导扇区的主引导记录 -> 活动分区的引导扇区 + 此外,他们之间是可以相互嵌套的。例如异常服务例程执行过程中可以会出现硬件中断,异常服务例程执行时也可能会遇到缺页异常。 关于系统调用与常规调用的不同点: - - CALL RET 用于常规调用 - - INT IRET 用于系统调用 - - 系统调用往往开销更高,这是因为系统调用还涉及到堆栈的切换,从用户堆栈切换到内核堆栈(也是出于安全的考虑),因此系统调用相对于常规调用,在保护现场的操作中,除了要保存当前的CS:IP以及一些关联寄存器外,还需要保存状态信息(EFLAGS),以及当前用户堆栈的地址(SS和ESP),以便于从内核堆栈恢复到用户堆栈 + +- CALL RET 用于常规调用 +- INT IRET 用于系统调用 +- 系统调用往往开销更高,这是因为系统调用还涉及到堆栈的切换,从用户堆栈切换到内核堆栈(也是出于安全的考虑),因此系统调用相对于常规调用,在保护现场的操作中,除了要保存当前的CS:IP以及一些关联寄存器外,还需要保存状态信息(EFLAGS),以及当前用户堆栈的地址(SS和ESP),以便于从内核堆栈恢复到用户堆栈