试验四-基于内核栈切换的进程切换,回答问题: (1)为什么要加 4096; (2)为什么没有设置 tss 中的 ss0。 答: (1)由于Linux 0.11进程的内核栈和该进程的PCB在同一页内存上(一块4KB大小的内存),其中PCB位于这页内存的低地址,栈位于这页内存的高地址;加4096就可以得到内核栈地址。 (2)tss.ss0是内核数据段,现在只用一个tss,因此不需要设置了。