Engineering Windows 7

Welcome to our blog dedicated to the engineering of Microsoft Windows 7

Our Next Engineering Milestone

Our Next Engineering Milestone

Many posts start with a thank you and I want to start this post with an extra special thank you on behalf of the entire Windows team for all the installs and usage we are seeing of the Windows 7 Beta. We’ve had millions of installations of Windows 7 from which we are receiving telemetry, which is simply incredible. And from those who click on the “Send Feedback” button we are receiving detailed bug reports and of course many suggestions. There is simply no way we could move from Beta through Final Release of Windows 7 without this type of breadth coverage and engagement from you in the development cycle. There’s been such an incredible response, with many folks even blogging about how they have moved to using Windows 7 Beta on all their machines and have been super happy. The question we get most often is “if the Beta expires in August what will I do—I don’t want to return to my old [sic] operating system.” For a Beta release, that is quite a complement and we’re very appreciative of such a kind response.

This post is about the path from where we are today, Beta, to our RTM (Release To Manufacturing), building on the discussion of this topic that started at the PDC. This post is in no way an announcement of a ship date, change in plans, or change in our previously described process, but rather it provides additional detail and a forward looking view of the path to RTM and General Availability. The motivation for this, in addition to the high level of interest in Windows 7, is that we’re now seeing how releasing Windows is not something that Microsoft does “solo”, but rather is something that we do as one part of the overall PC ecosystem. Obviously we have a big responsibility to do our part, one we take very seriously of course. The last stages of a Windows release are a partnership across the entire ecosystem working to make sure that the incredible variety of choices you have for PCs, software, and peripherals work together to bring you a complete and satisfying Windows 7 experience.

The next milestone for the development of Windows 7 is the Release Candidate or “RC”. Historically the Release Candidate has signaled “we’re pretty close and we want people to start testing the release, especially because all the features are done.” As we have said before, with Windows 7 we chose a slightly different approach which we were clear up front about and are all now experiencing together and out in the open. The Pre-Beta from the PDC was a release where we said it was substantially API complete and even for the areas that were not in the release we detailed the APIs and experience in the sessions at the PDC. At that time we announced that the Beta test in early 2009 would be both API and feature complete, widely available, and would be the only Beta test. We continued this dialog with our hardware partners at WinHEC. We also said that many ecosystem partners including PC makers, software vendors, hardware makers will, as has been the case, continue to receive interim builds on a regular basis. This is where we stand today. We’ve released the feature complete Beta and have made it available broadly around the world (though we know folks have requested even more languages). As a development team we’re doing just what many of you do, which is choosing to run the Beta full time on many PCs at home and work (personally I have at least 9 different machines running it full time) and we’re running it on many thousands of individual’s machines inside Microsoft, and thousands of machines in our labs as well.

All the folks running the Beta are actively contributing to fixing it. We’re getting performance telemetry, application compatibility data, usage information, and details on device requirements among other areas. This data is very structured and very actionable. We have very high-bandwidth relationships with partners and good tools to help each other to deliver a great experience. One thing you might be seeing is that hardware and software vendors might be trying out updated drivers / software enhanced for Windows 7. For example, many of the anti-virus vendors already have released compatibility packs or updates that are automatically applied to your running installation. You might notice, for example, that many GPU chipsets are being recognized and Windows 7 downloads the updated WDDM 1.1 drivers. While the Windows Vista drivers work as expected, the new 1.1 drivers provide enhanced performance and a reduced memory footprint, which can make a big difference on 1GB shared memory machines. You might insert a device and receive a recently updated version of a driver as I did for a Logitech QuickCam. Another example some of you might have seen is that the Beta requires a an updated version of Skype software currently in testing. When you go to install the old version you get an error message and then the problem and solutions user interface kicks in and you are redirected to the Beta site. This type of error handling is deployed in real time as we learn more and as the ecosystem builds out support. It is only because of our partnerships across the ecosystem that such efforts are possible, even during the Beta.

Of course, it is worth reiterating that our design point is that devices and software that work on Windows Vista and are still supported by the manufacturer will work on Windows 7 with the same software. There are classes of software and devices that are Windows-version specific for a variety of reasons, as we have talked about, and we continue to work together to deliver great solutions for Windows 7. The ability to provide people the vast array of choices and the openness of the Windows platform make all of this a massive undertaking. We continue to work to improve this while also making sure we provide the opportunities for choice and differentiation that are critical to the health and variety of the overall ecosystem. This data and the work we’re doing together with partners is the critical work going on now to reach the Release Candidate phase.

We’re also looking carefully at all the quality metrics we gather during the Beta. We investigate crashes, hangs, app compat issues, and also real-world performance of key scenarios. A very significant portion of our effort from Beta to RC is focused on exclusively on quality and performance. We want to fix bugs experienced by customers in real usage as well as our broad base of test suites and automation. A key part of this work is to fix the bugs that people really encounter and we do so by focusing our efforts on the data we receive to drive the ordering and priority of which bugs to fix. As Internet Explorer has moved to Release Candidate, we’ve seen this at work and also read about it on IE Blog.

Of course the other work we’re doing is refining the final product based on all the real-world usage and feedback. We’ve received a lot of verbatim feedback regarding the user experience—whether that is default settings, keyboard shortcuts, or desired options to name a few things. Needless to say just working through, structuring, and “tallying” this feedback is a massive undertaking and we have folks dedicated to doing just that. At the peak we were receiving one “Send Feedback” note every 15 seconds! As we’ve talked about in this blog, we receive a lot of feedback where we must weigh the opinions we receive because we hear from all sides of an issue—that’s to be expected and really the core design challenge. We also receive feedback where we thought something was straight forward or would work fine, but in practice needed some tuning and refinement. Over the next weeks we’ll be blogging about some of these specific changes to the product. These changes are part of the process and part of the time we have scheduled between Beta and RC.

So right now, every day we are researching issues, resolving them, and making sure those resolutions did not cause regressions (in performance, behavior, compatibility, or reliability). The path to Release Candidate is all about getting the product to a known and shippable state both from an internal and external (Beta usage and partner ecosystem readiness) standpoint.

We will then provide the Release Candidate as a refresh for the Beta. We expect, based on our experience with the Beta, a broad set of folks to be pretty interested in trying it out.

With the RC, this process of feedback based on telemetry then repeats itself. However at this milestone we will be very selective about what changes we make between the Release Candidate and the final product, and very clear in communicating them. We will act on the most critical issues. The point of the Release Candidate is to make sure everyone is ready for the release and that there is time between the Release Candidate and our release to PC makers and manufacturing to validate all the work that has gone on since the pre-Beta. Again, we expect very few changes to the code. We often “joke” that this is the point of lowest productivity for the development team because we all come to work focused on the product but we write almost no code. That’s the way it has to be—the ship is on the launch pad and all the tools are put away in the toolbox to be used only in case of the most critical issues.

As stated up front, this is a partnership and the main thing going on during this phase of the project is really about ecosystem readiness. PC makers, software vendors, hardware makers all have their own lead times. The time to prepare new products, new configurations, software updates, and all the collateral that goes with that means that Windows 7 cannot hit the streets (so to speak) until everyone has time to be ready together. Think of all those web sites, download pages, how-to articles, training materials, and peripheral packages that need to be created—this takes time and knowing that the Release Candidate is the final code that we’re all testing out in the open is reassuring for the ecosystem. Our goal is that by being deliberate, predictable, and reliable, the full PC experience is available to customers.

We also continue to build out our compatibility lists, starting with logo products, so that our http://www.microsoft.com/windows/compatibility site is a good resource for people starting with availability. All of these come together with the PC makers creating complete “images” of Windows 7 PCs, including the full software, hardware, and driver loads. This is sort of a rehearsal for the next steps.

At that point the product is ready for release and that’s just what we will do. We might even follow that up with a bit of a celebration!

There’s one extra step which is what we call General Availability or GA. This step is really the time it takes literally to “fill the channel” with Windows PCs that are pre-loaded with Windows 7 and stock the stores (online or in-person) with software. We know many folks would like us to make the RTM software available right away for download, but this release will follow our more established pattern. GA also allows us time to complete the localization and ready Windows for a truly worldwide delivery in a relatively small window of time, a smaller window for Windows 7 than any previous release. It is worth noting that the Release Candidate will continue to function long enough so no one should worry and everyone should feel free to keep running the Release Candidate.

So to summarize briefly:

  • Pre-Beta – This release at the PDC introduced the developer community to Windows 7 and represents the platform complete release and disclosure of the features.
  • Beta – This release provided a couple of million folks the opportunity to use feature complete Windows 7 while also providing the telemetry and feedback necessary for us to validate the quality, reliability, compatibility, and experience of Windows 7. As we said, we are working with our partners across the ecosystem to make sure that testing and validation and development of Windows 7-based products begins to enter final phases as we move through the Beta.
  • Release Candidate (RC) – This release will be Windows 7 as we intend to ship it. We will continue to listen to feedback and telemetry with the focus on addressing only the most critical issues that arise. We will be very clear in communicating any changes that have a visible impact on the product. This release allows the whole ecosystem to reach a known state together and make sure that we are all ready together for the Release to Manufacturing. Once we get to RC, the whole ecosystem is in “dress rehearsal” mode for the next steps.
  • Release to Manufacturing (RTM) – This release is the final Windows 7 as we intend to make available to PC makers and for retail and volume license products.
  • General Availability (GA) – This is a business milestone and represents when you can buy Windows 7 pre-installed on PCs or as full packaged product.

The obvious question is that we know the Pre-Beta was October 28, 2008, and the Beta was January 7th, so when is the Release Candidate and RTM? The answer is forthcoming. We are currently evaluating the feedback and telemetry and working to develop a robust schedule that gets us the right level of quality in a predictable manner. Believe me, we know many people want to know more specifics. We’re on a good path and we’re making progress. We are taking a quality-based approach to completing the product and won’t be driven by imposed deadlines. We have internal metrics and milestones and our partners continue to get builds routinely so even when we reach RC, we are doing so together as partners. And it relies, rather significantly, on all of you testing the Beta and our partners who are helping us get to the finish line together.

Shipping Windows, as we hoped this shows, is really an industry-wide partnership. As we talked about in our first post, we’re promising to deliver the best release of Windows we possibly can and that’s our goal. Together, and with a little bit more patience, we’ll achieve that goal.

We continue to be humbled by the response to Windows 7 and are heads down on delivering a product that continues to meet your needs and the needs of our whole industry.

--Steven on behalf of the Windows 7 team

Leave a Comment
  • Please add 5 and 5 and type the answer here:
  • Post
  • I'm looking forward to Windows 8 or 9.  Perhaps by then Microsoft will allow the same amount of customization as you had in XP and 2000.  I analogize Windows 7 to IE 8 you gave back about  1/3 of the ability to truly customize the UI and your pounding your chest like this is a awesome new feature.

    Lets account, IE 6 and Windows XP very customizable, skin-able adaptable.  Vista and IE 7 is have it Microsoft's way or go away. Now IE 8 and Windows 7, it's, "Hey we listened you can change the colors, ooh look at the pretty colors, look wow you can change the size of the search bar. ooh, wow, ah."  

    I'm not a Microsoft hater, but I just want the respect, that I am intelligent enough to know what works for me, I don't want Microsoft to tell me, just give me the options so I can choose for my self.  This will more than likely be deleted by a Moderator, they've done it before. Again I'm not five years old, please don't treat me like a child, I'm old enough to choose for my self and to understand and except the responsibilities for my actions....  

  • Steven,

    I have to also second the complaints by marcinw and solaris.

    Windows 7 explorer does crash too often. The Random crashes in IE 8 and WMP does happen way too often. The hardware and memory footprint is still too much like Windows Vista. I think it needs to be dialed back further. Benchmark wise, it has to perform better.

    In my opnion, Windows 7 needs a Beta 2 or a Beta Refresh. Hopefully, a Beta 2 or a Beta Refresh will be given strong consideration.

    I think Windows 7 is about 70% ready. However, further hardware demand reduction is needed. Greater stability is needed. Benchmark testing is needed and tweaks to hold up to the competition.

    FYI, my system uses an AMD Athlon 64 x 2 Dual Core 3600+, 2 GB of DDR 2 800 Mhz, Diamond MM Radeon ATI HD2600 PRO with 512 MB of GDDR2 Memory, 160 GB SATA drive, and an ECS Geforce6100SM-M motherboard. Not the greatest but good enough to tackle Vista and Windows 7.

    I really do hope you'll take these suggestions and give Windows 7 the proper beta time to incubate properly.

    We really do appreciate the hard work and man hours put in. I think you guys are almost there. We just need some more work and Windows 7 will be one of the finest OS releases.

    Thank you for the time and Good Luck!

  • First , i use win7 on my machine and works great , good job, but....why support for doc and xls are still not included in Windows, only rtf, odt ? i should be able to see doc files and xls files,without any other 3rd programs, especialy now when the Office Team is  part of windows team...and 2nd try to disable Escape key from close highlight window(s), eg.( when i dload something from IE and i accidently hit Escape key will close dload window without any warning and approve mode)...

    Good Luck! to RC

  • @hitman721

    when crash Explorer?

    Explorer or Internet Explorer?

    Are you sure you have correctly installed the drivers?

    I install Windows 7 Beta on Fujitsu Siemens lifebook  Year 1999 (Ex OS Windows 98)

    and work .

    Whereas the price of modern hardware,

    we must look to the future and not to the past.

    what counts for Windows 7 is that it works well, and already from this Beta we only applaud the work of this great team

  • @Domenico,

    I respect your opinion, but I agree, that Win 7 build 7000 needs still a lot of work - I had also many crashes and various problems (part of dumps were sent automagically to MS). This is not problem of drivers.

    MS could have much easier life, when core of system (used for running processes & managing devices) will be separated from user applications (explorer/www browser/etc.) and when user applications will be more separated from each other. It would improve a lot security, stability, etc. and we will not have a need of running various anti(spyware/virus/etc.) software then.

    For now we have mix (where additionally many parts are totally new) and because of it we will have what we have.

    With good core MS could think about such revolution features like assigning network interfaces/bandwidth or max. CPU usage for each process....

    If MS teams are afraid of making bigger changes, let's make something like Windows NextGeneration (I quess, 50 programmers could be enough for it) for try (paraller with main Windows line).

    Do you want ideas for this Windows NG ? I can give them even for free (yeah, I'm working in IT since longer time and I can give more technical help). And believe me or not: it will be smaller, faster and more secure and will be able to run majority of win32 apps. I could even buy bottle of wine, if it will be different ;)

    You can say of course say in this moment, that this is wrong. But once again: long time ago in Intel somebody allowed for making Pentium M this way. The same with some other revolution things in other companies. For now Windows is collapsing and needs fresh view/blood.

  • @Domenico,

    I respect your opinion, but I agree, that Win 7 build 7000 needs still a lot of work - I had also many crashes and various problems (part of dumps were sent automagically to MS). This is not problem of drivers.

    MS could have much easier life, when core of system (used for running processes & managing devices) will be separated from user applications (explorer/www browser/etc.) and when user applications will be more separated from each other. It would improve a lot security, stability, etc. and we will not have a need of running various anti(spyware/virus/etc.) software then.

    For now we have mix (where additionally many parts are totally new) and because of it we will have what we have.

    With good core MS could think about such revolution features like assigning network interfaces/bandwidth or max. CPU usage for each process....

    If MS teams are afraid of making bigger changes, let's make something like Windows NextGeneration (I quess, 50 programmers could be enough for it) for try (paraller with main Windows line).

    Do you want ideas for this Windows NG ? I can give them even for free (yeah, I'm working in IT since longer time and I can give more technical help). And believe me or not: it will be smaller, faster and more secure and will be able to run majority of win32 apps. I could even buy bottle of wine, if it will be different ;)

    You can say of course in this moment, that this is wrong idea. But once again: long time ago in Intel somebody allowed for making Pentium M this way. The same with some other revolution things in other companies. For now Windows is collapsing and needs fresh view/blood.

  • for admins: please delete one of my posts. seems to be added by mistake

  • Hopefully the E7 team reads the comments... My impression so far. Not RC ready...

    Reasons (the bad):

    1) 64 Bit Installation from USB took FOREVER (also reported above by adir1)

    2) System Restore within Win 7 continually loads (i.e. doesn't work) Although if you boot from the install disk System Restore works (again takes FOREVER to load, just like install)

    3) Send Feed back never worked (quit saying you want feed back but never accept it. Hipocrit)

    4) Installing new graphics (NVIDIA) drivers DECREASED the performance of Win 7 and the experience score. (Win 7 updates recommended it)

    5) Win 7 Indexing (I think) messess up P2P software, like uTorrent, making it NOT save (write) the file. The only way to get it to work is to have it on a drive that isn't indexed. I think Win 7 is trying to index it for the library and maybe read the first part of the video while it is writing the file.

    6) Took me forever to figure out that I did truly install the 64bit version. Doesn't say it anywhere.

    7) Need the "Up Directory" button in Explorer

    8) Microsoft should have included support for mounting ISO’s in Windows 7. Looking for a ISO mount software is what caused me to have to use System Restore.

    Other than that I installed Vista RAID driver and my drives seem to be working.

    (more detail about installation)

    I had the same problem with 64 bit version taking a long time to install. I was installing on brand new hard disks and have no intention of dual booting. The installation screens seem to take about 10 minutes each. I also have SATA drives and IDE, so if it is the SATA hopefully it is fixed. The SATA I’m actually doing RAID so installed the Vista version of the RAID drivers and Win 7 picked it up fine (just took a long time to get to). Anyways my point is that 64 bit installation seems to take forever when it shouldn’t.

    AMD Phenom II quad 3ghz, 8GB RAM, (2) 150 GB 10k RPM drives (RAID 0).

    Fresh install of Win 7 with drives completely empty before install.

  • Forgot one other thing. Resuming from Sleep makes the audio not work anymore. I have to completely reboot the computer in order to restore audio.

  • @marcinw

    I respect your opinion, and I am sure that the team takes any good idea to make an assessment.

    I have great confidence in Sinofsky and TEAM.

    Expect RC and let our suggestions until the end

  • I don't have an ID to send feedback so I'll try here. The tooltip shell extension seems to be broken in that it truncates the text after the first tab character (not unicode). Works fine in all previous versions of windows. Other than that, Windows 7 is looking like a fantastic product!

  • @Domenico,

    Steven and Team have very difficult task and need to fight with time/external opinions/corporation procedures/limits and other things. They work hard, but it doesn't change fact, that even RC can be far away from Windows 5.x in various aspects (from engineer point of view). Sorry, but everything up to this moment confirms it...

  • @marcinw

    The most difficult challenge for Mr. Steven and Team is satisfy more than 1 billion people,

    PS. Windows 7 taskforce http://www.windows7taskforce.com/

  • It's very strange for me, that there's not going to be corporate launch before the general availability date, like it was with Vista. In such a way, I think many corporations could start evaluating the software before it's even available on the shelves.

    Also, I couldn't understand from your post, which of the mentioned timeframes is going to be devoted for OEMs, that they start prebuilding the machines with the RTM software version, and have their final problems solved together with Microsoft, just before the general availability. I think such a period is must.

  • @Domenico,

    Many from these 1 billion people were satisfied, when had smaller numbers (RAM/HDD/etc. usage)... When they're higher than in previous version, system is still not ready. Black is black, white is white.

    This is of course example only. We can speak a lot, but one fact will be not changed - without some deeper changes Windows will be collapsing.

Page 4 of 9 (129 items) «23456»