"If I show you the PC I use as my primary machine, I think you'll be surprised," Steven Sinofsky told us just before this year's Professional Developers Conference.
The next day the Senior Vice President of the Windows team showed off the Lenovo IdeaPad S10 running Windows 7, and the next week at the Windows Hardware Engineering conference he had an Atom-based Asus EEE netbook with 1GB of RAM in his hands.
At the same event Microsoft showed a Dell Inspiron Mini 9, an MSI Wind, an Asus Bamboo and even the VIA-based HP Mini-Note 2133 all running Windows 7 with full Aero and no missing features.
Don't expect system requirements until next year, but Windows 7 will give you "a good user experience" on a 1.6GHz Atom processor with 1GB of RAM and 16GB of disk space, according to Windows Lead Program Manager Leon Braginski.
Memory use reduced
It uses around half the memory (less with a WDDM 1.1 driver that uses the graphics chipset to handle multiple windows so the amount of memory needed by the Desktop Window Manager doesn't grow linearly as you open more windows). And it takes around 8GB of disk space. That's not just Windows files, Braginski explains, but a realistic measurement of the space Windows will need over the lifetime of the PC: "the Windows footprint includes log files, memory dumps, caches, restore points, the page file, the hibernation file and so on, and the Windows 7 disk footprint will be smaller than Vista".
Over 1GB of that footprint in Vista is pre-installed drivers, and Windows components add another 500MB. Microsoft doesn't plan to reduce those much, but Sinofsky says the beta of Windows 7 will extend the list of 'optional components' which are installed but not loaded by default.
Even in the pre-beta this is much more granular; you can remove XPS support, gadgets or tablet features. Even if you have tablet features loaded, the component won't actually be in the memory unless you have tablet hardware on your PC.
The same goes for services like BitLocker; if you don't have an encrypted drive in the PC, the BitLocker service won't be running. Like the power-saving features, these performance improvements apply to any Windows 7 machine but they'll matter more on low-power netbooks.
Solid state issues
A 16GB solid-state drive (SSD) isn't just a small drive; it has very different characteristics from a hard drive of any size. Vlad Sadovsky, an architect in the Windows team, says that "we are tuning not for SSD but for devices with low latency" and Intel Fellow Knut Grimsrud agrees that "if software is trying to help based on near-term assumptions about SSD it's very likely to become a long-term hindrance". But there are some specific changes in Windows 7 to make it work better with SSDs, including some proposed logo requirements that will mean SSDs using an internal USB connection won't be supported.
Some of the requirements are needed to work around the fact that although you can read data from an SSD much faster than from a hard drive, it's actually ten to a hundred times slower to write files. This is because the sectors of the SSD have to be erased before they can be written and a sector can't be overwritten in the same location if the information in it changes. So unchanged information in the same file may need to be written again.
This causes 'write amplification' which affects both performance and the lifetime of the drive, which can only erase sectors a fixed number of times; an issue that Microsoft wants to address by adding the Trim command (a standard it proposed that will be implemented in new SSDs).
Trimming it down
Trim will tell the device which blocks and sectors aren't being used, allowing it to use areas that have already been erased and pre-erasing areas where files have been deleted. This will also maximise unused space, which the SSD can use for wear levelling, to stop some areas of flash wearing out before the rest of the drive, which is cheaper than adding extra capacity.
The completion time for Trim command must stay under 20ms to qualify for a Windows 7 logo. "The goal of Trim is to improve performance," says Senior Program Manager Frank Shu; "We don't want to create a performance bottleneck - if we send a lot of Trim data to the device and the device is busy doing garbage collection we could have a long delay, hurting system performance and responsiveness."
For the logo an SSD will also have to report that it's not a spinning hard drive (which works with ATA and SCSI interfaces), so Windows can turn off scheduled defragmentation. SSDs connected via SATA must use the faster SATA-IO connection, prioritise data reads over slower data write and not slow down as you approach the drive capacity.
ATA and SCSI interfaces also let a drive report its size as an offset, avoiding problems in aligning the NTFS partition to the 24K page size of most SSDs. However, this is only a problem from machines upgraded from Windows XP where the first partition is in the middle of an SSD page, which can degrade performance by 50 per cent because modified files have to be moved more often.
Remove the bloat
Defragmentation places files around a drive platter so they will load more quickly to deal with latency issues that you don't have with SSD. You also don't need disk optimisation algorithms like SuperFetch, which Grimsrud found caused an SSD system to make 25 per cent more disk accesses than with a hard drive (it also used an additional 400mW of power).
Grimsrud also suggested that SSD lifetime isn't a real problem: "All this concern about drives wearing out: the reality is so much different from user perception, it's almost laughable. But the mystique of having a technology that has an internal wear out makes people get excited about that."
John Loveall, Director of Program Management for the Windows Storage platform, hinted that commands like Trim could evolve in future versions of Windows. "This is the start of us looking at richer commands being sent down to devices. We are creeping on the edge of some architectural changes and next time around we may be talking about fundamental changes, but this time it's incremental."
Bytes versus blocks
Vlad Sadovsky went into more details, suggesting that Windows could move to addressing individual bytes on an SSD rather than blocks and sectors. "What about byte addressing: do we need another layer? It would definitely be very useful and we know where the OS would benefit. We also definitely know the OS would have to be rewritten at kernel level to take account of it - we would have to do [things like] security differently." And he confirmed "we have started looking at this."
In the short term, if you're installing the Windows 7 M3 pre-beta build on a netbook yourself, the most common problem is not getting drivers but getting them installed; driver installers often look for hard-coded version numbers and many won't run under Windows 7. However, if you copy the driver files onto the PC and let Device Manager look for an updated driver, you can get most devices working.