TSS(task state segment),本来是用来存储process的状态信息的,使用单独的一个segment来实现。tr寄存器是用来存储TSSD选择子的寄存器,它跟其它段寄存器一样也
有nonprogrammable的field:base和limit field of the TSSD.intel最初的设计是每个进程一个tss段,用于保存process切换时硬件上下文的保存。但是linux,对于每个cpu只分配一个tss段,跟
intel的本意不一致。另外intel提供process切换的硬件指令,但是自从2.6.xx后,linux使用基本的指令来实现process的切换,而不是用intel提供的指令,原因是:
1.使用基本的指令,可以随时进行check
2.使用基本的指令需要的时间跟硬件指令差不多,但是使用软件的方法,自己有更多的灵活性,可以对指令进行调优
2009/01/16 五
有关TSS
最新推荐文章于 2020-03-10 11:15:02 发布