这是摘要:
进程上下文、中断上下文、用户态/内核态、操作系统、任务的全局部分和局部部分
《X86汇编语言:从实模式到保护模式》墙裂推荐
本文重点在于搞清楚三个问题:
1:什么是任务的局部空间,什么是任务的全局空间,以及什么是用户态/内核态切换
2:什么是用户任务(进程),什么是内核任务(进程),以及什么是进程上下文切换
3:当执行中断处理代码时,系统是位于哪个状态?是位于用户任务还是内核任务,还是位于用户任务的局部空间还是位于用户任务的全局空间以及什么是中断上下文切换
补充:什么是线程上下文切换
补充:特权级切换与栈切换:
补充:TSS和TCB是什么以及他们的区别
备注1:文中“任务”就是”进程”,“进程”就是任务;任务包括用户任务与内核任务,他两的区别就是一个特权级低,一个特权级高。
备注2:文中的上下文切换带来的代价均是指硬件层面所必须花费的最小代价,不包括软件层面(内核)的代价(最后面会解释)
准备知识:
1:段式内存管理与GDT(Global Descriptor Table)、LDT(Local Descriptor Table)和GDT(Global Descriptor Table Register)、LDTR((Local Descriptor Table Register)
摘要:一个程序被组织为多个段,有代码段,数据段,栈段
2:页式内存管理