到底改进了什么?Win7/2008 R2核心剖析
Windows 7/Server 2008 R2的用户级线程调度实现其实不是一个发生在内核层面上的改进,因为它并没有去掉内核级线程调度。User Mode Scheduling,用户级调度,就和教科书上说的一样,通过避免频繁切换进内核来降低进程切换的消耗,从而获得很好的运行性能,同时避免一些内核的锁操作获得更好的并发性能。
可能知道的人很少:Windows NT一直提供了用户级线程的支持,它被称为Fiber,中文名叫做纤程。Fiber就是纤维的意思,把它叫做纤程的确很妙,纤程是比线程更细小的运行实体,一个线程可以分成多个纤程来运行。实际上,在Windows NT当中,程序的运行层次有四个:Task任务、Process进程、Thread线程、Fiber纤程。不过中间两个用的最多,两头的用的最少。
不过遗憾的是,UMS用户级线程调度只有在64位上提供,也就是Windows 7 x64和Windows Server 2008 R2上可用,Windows 7 32位没有这个功能。0
相关文章
