Channel 9: Inside Windows 7 Redux

Windows 7 hit general availability today, putting it in stores and on new PC’s. There are plenty of beneath-the-surface changes that make Windows 7 more power efficient, scalable, secure and responsive (and of course, there are lots of user-visible features like user-interface enhancements like Aero Snap and Aero Peek; to easier file sharing and streaming with Home Group and PlayTo; to business-focused features like DirectAccess and Branch Cache). I recorded a Channel 9 interview last year with Charles Torre where I talked about a number of these enhancements, including core parking, support for systems with more than 64 processors, the removal of the dispatcher lock and more. There’s obviously a lot of interest in Windows 7 because the video has become the most-viewed in Channel 9’s history with 658,000 views at the time of this post!

Channel 9: Inside Windows 7

I always enjoy chatting with Charles and showing my support for Channel 9, so a couple of weeks ago we talked again, this time about some of the changes I didn’t have a chance to cover in my previous Windows 7 interview. In this latest video, I describe Distributed Fair Share Scheduling (DFSS) and memory management enhancements. I also show demos of process reflection and how Windows divides the processors into groups on a running 256-processor system, something that’s required for compatibility with applications that use thread management APIs designed for systems with less than 64 processors. Finally, I talk a little about how I started with computers. Enjoy!

Channel 9: Inside Windows 7 Redux

Dave Solomon and I, along with Alex Ionescu, are hard at work on the 6th Edition of Windows Internals that will cover all the significant Windows 7 and Windows Server 2008 R2 kernel changes in detail, but in the meantime stay tuned to my blog where I’m going to start a multi-post Windows 7 and Windows Server 2008 R2 kernel changes series.

Comments (9)

  1. Anonymous says:

    Hi Mark

    I believe, the biggest obstacle to Windows 7 deployment is the inability to fix the default user profile by logging on, fixing up a profile, logging off and overwriting the default with the profile you fixed, sysprep, and image.

    Mark, I know you and Bryce could create a copy profile tool that would save thousands of admins, hundreds of hours.  Hacking the registry, and using sysprep and copyprofile, to fix something the Windows 7 developers are too isolated to understand. I know you understand why it is such a big deal to the folks that actually deploy Windows.  Read more here.


    Paul Willy

  2. Anonymous says:

    The new video is 700MB, isn’t that a bit overkill for what’s basically audio + a static camera frame of a person talking?

    Anyways, very informative video. Hearing about all the improvements made me consider trying out W7 and comparing it with Vista…

  3. Eric Aguiar says:

    Hey Mark I came to your blog to ask what you think of this idea  have:

    Charles and Channel 9’ers I actually believe I found that magic sauce/Silver Bullet/Free Lunch for concurrency & parallelism for running sequential programs in a concurrent manner on a multi-core chip.

    In no relation to relativity, I call it Relativistic Computation, I’m in school so time is limited.  But for relativistic computation I just mean when code gets pumped into a scheduler, in a sequential way, its functions are put into a CPU opcode pipeline, and when the function hits and goes over all the cores, flowing over to start on the first core again, it reassess the function to execute based on its progress over the available array of cores.

    Basically, it’s striping a STREAM of assembly opcodes into the CPU’s after the scheduler has a quick data flow analysis for it to make the recomputed true op/function running be +4 per core instead of the original +1 for each core that keeps unchanging data local to each computation and only creating that diff into each output stream.

    I’ll try to explain with a ASCII example to show the concept at work haha, for a trivial (embarrassly parallel) data dependent Increment to 40 showing what number goes where during each step to look like:

    Step #: 01 – 02 – 03 – 04 – 05 – 06 – 07 – 08 – 09 – 10


    Core 1: 01 – 05 – 09 – 13 – 17 – 21 – 25 – 29 – 33 – 37

    Core 2: 02 – 06 – 10 – 14 – 18 – 22 – 26 – 30 – 34 – 38

    Core 3: 03 – 07 – 11 – 15 – 19 – 23 – 27 – 31 – 35 – 39

    Core 4: 04 – 08 – 12 – 16 – 20 – 24 – 28 – 32 – 36 – 40

    Even though it looks plainly obvious I’ve never seen sub thread control mechanisms implemented.  And I’d really like to try and make it work for some real odd parallelism and how to persist locks through the control structure for compatibility.  Just have an input and output scheduler pump dependent opcodes sequentially into separate CPU pipelines to saturate the separate core pipelines with a CLR IL transformation extension.

    Well I know its quite a big comment…. but I really respect you and I’ve been wondering what a real Technical fellow down in the trenches thinks about this idea.  Hope you find it interesting!! Bing/Google my name if you would like to email me your thoughts, can’t wait for another Channel 9 interview! :)

  4. Richard Burrell says:

    I’ve heard a lot about Windows 7. What happens if after installing Windows 7 my hard drive fails and I need to install a new drive? Can it be done if so what steps must I take?

    Thank you

  5. Mikael K. Karlsson says:


    Will there be any Microsoft articles or interviews on the changes to the file cache and prefetching? For being one of the most advertised innovations in Vista it’s been strangely quiet about the significant changes to Windows 7 in the same field.

  6. yebangyu says:

    hello,Mr Mark,i am one of your reader,you know,your book ie windows internals is my favourite one,so ,my question is,when will you  finish the 6th edtion ?i can not wait any more,and will it include win7,right?thank you very much form a chinese stddent

  7. Chris McLean says:

    Any idea when shellrunas will be updated to work on the win7 gui elements (task bar & start menu)?  It works great in explorer, but not on the task bar or in the non-expanded start menu.

  8. Torsten says:

    Thanks for the information…i worked with windows 7 for a month now and i´m a little bit disappointed because the hype was sooo big and it is not so different as vista…but it works more faster..thats a big point to use it!

  9. jmdesp says:

    Mark, here’s a blog entry that documents what sounds like a major bug in Heap32Next in 64-bit Win7 :

    Basically the performance of Heap32Next has become a linear function of the number of objects on the heap. If you have 4 million heap objects, a single call to Heap32Next will take several seconds. Don’t know what the best channel would be to report that to Microsoft, but I hope to have some success here.