Sharvil Nanavati http://sharvilnanavati.posterous.com Most recent posts at Sharvil Nanavati posterous.com Sun, 08 Feb 2009 02:40:00 -0800 Windows 7 Internals http://sharvilnanavati.posterous.com/2009/02/windows-7-internals.html-49826 http://sharvilnanavati.posterous.com/2009/02/windows-7-internals.html-49826

The folks over at Channel9 recently interviewed Mark Russinovich, a Technical Fellow at Microsoft. Mark shares some nitty-gritty details of the improvements they've made in the Windows 7 kernel - particularly with respect to performance. The interview is a bit slow at times but there are enough interesting tidbits to warrant a watch.

Media_httpsharvilnana_dhlha

Here are some of the improvements that I found particularly interesting:

  • Scalability
    • Finer grained locks on dispatcher queue
    • Finer grained locks on PFN database
    • Support for up to 256 cores
  • Power Consumption/Battery Life
    • Core parking: putting cores into deeper sleep states by migrating processes away to more active cores
    • Socket parking: putting an entire socket into a low power state by parking cores on the same socket (this is really cool!)
    • Timer coalescing API
  • Virtualization
    • Integrated support for creating/mounting VHDs
    • Boot directly from VHD!

The timer coalescing API needs an explanation. Suppose you have two timers on your system firing every 5ms, except the first timer was set at t=0ms and the second was set at t=1ms. Then your timer interrupts have to fire at 5ms, 6ms, 10ms, 11ms, ... to service those timers. Since both timers have a period of 5ms, it would be more efficient to reuse the interrupt at t=5ms by advancing the first servicing of the second timer. This way, the CPU has more time between interrupts to go into a deeper sleep state or to execute other code.

In short, the timer coalescing API allows timers to share the same interrupt by adjusting the first timer event of a new timer.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/1736355/photo.jpg http://posterous.com/users/ehbApsjW8MmKe Sharvil Nanavati sharvilnanavati Sharvil Nanavati