You’ll have no doubt heard over the weekend that Microsoft sneakily announced a new support policy for Windows operating systems prior to Windows 10 – a policy which states that new CPU platforms like AMD’s Bristol Ridge and Intel’s Kaby Lake families won’t be supporting installations of Windows 8.1 and older. Some people are going to act surprised at hearing this policy for the first time, but it’s really not a new thing. It’s beneficial to the PC industry as a whole, and there are many good reasons for why this must happen. I’d like to talk you through a couple of them.
First note, though, that Microsoft isn’t doing this straight away. A number of OEM systems will be added to a compatibility list where Microsoft will still support the installation of Windows 7 and 8.1 with patches and updates, but they won’t seed updates to there machines that may end up affecting stability. These systems are mostly for enterprise and mission-critical use, and are priced appropriately, so it’s nothing that really concerns consumers today.
However, for those of you who DIY your own rigs, or who have installed Windows 8.1 on your Skylake system, or Windows 7 to your new Skylake-based notebook for use in the office, this change will affect you and will affect how your system is supported in future. Microsoft plans to cut off Windows 7 and 8.1 support for systems based on new hardware on 17 July 2017. From that point on, it’s Windows 10, or your favourite supported Linux distribution.
New UEFI systems are rapidly advancing away from Windows 7 support
When I said that Microsoft’s “new” policy wasn’t so new, I’m not joking. Over a year ago Intel announced that users who wanted to install Windows 7 on to their shiny new Skylake machines were going to have a few problems, the least of which were going to be USB driver support for the installer. Yes, no USB driver support. It sounds ridiculous to some, but it’s been coming for a while. Intel, AMD, and third-party chipset providers are all now implementing the new xHCI-handoff mode in their hardware, which allows the operating system to support USB devices using a new, more efficient driver stack that also exposed some new hardware tricks like UASP support, or switching to a different operating mode to work around limited system resources.
Operating systems need to be able to understand the xHCI protocol in order to take ownership of the USB ports and the peripherals plugged into them, which is one of the things that my MSI 970 Gaming motherboard doesn’t do under Linux yet (the fix for me is to make the ASMedia chipset controlling it to think that I’m passing it through IOMMU). That’s why installing Windows 7 on a Skylake machine that can’t turn off xHCI in the BIOS isn’t supported – if it doesn’t have PS/2 ports, you’re not going to be able to input anything unless you have one of those nifty auto-install discs that you can make with nLite. Luckily this doesn’t affect most laptops yet, because many of them attach the keyboard and mouse to an internal PS/2 port.
SSDs based on non-volatile memory extensions (NVMe) had to have a driver installed during the setup phase of Windows 7 in order for the drive to be recognised by the installer. That reminds me of the days when you had to install SATA drivers for your Windows XP SP2 CD just to get it to recognise the hard drive.
Old workarounds for system lag need no longer apply
With Skylake and Windows 10, Intel introduced something interesting called “Speed Shift”. It’s not a new Need for Speed, but rather a hardware algorithm that yanks control of the CPU clock speed from the OS and hands it back to the CPU, which can intelligently analyse workloads to balance power usage, and also ramp up the clock speed when necessary. This is particularly useful for web browsing while using a touch screen, because there’s perceptible lag when doing this on Haswell-based notebooks and older Windows tablets. With the CPU controlling the experience, Windows doesn’t have to bother itself with controlling the clock speed anymore, which results in a small performance boost as well as a general improvement in responsiveness.
Speed Shift isn’t supported on Windows 7 or Windows 8.1. Windows 10 was designed to work with it, but Intel had Microsoft patch out the support until they were satisfied that it was working properly. This will eventually solve two problems that have had some serious press time in the last two years – namely that certain ASUS laptops ramp up CPU speed to improve scrolling smoothness and speed, and that Google Chrome makes changes to the system clock in order to improve the user experience at the detriment of battery life (now Google won’t have to do this for newer hardware that implements Speed Shift-like tech).
Other fixes that reply on CPU responsiveness are waiting in the wings, but they require Intel’s Skylake and Speed Shift to be supported. It currently doesn’t even work in Linux. There’s also been many, many changes in how hardware communicates internally, and using Windows 7 on that hardware forces everything into a compatibility mode, something that works with what Windows 7 expects to be there because it was designed for older computers.
Security and encryption methods have changed since the Vista days
Windows 7 wasn’t a completely new OS. In fact, it was based on the work done with Windows Vista, which had horrible driver support in the beginning due to Microsoft’s miscommunication with developers, as well as the steps they were asking hardware partners to take to improve the way drivers were being made and implemented. There were other things that Vista instigated as a result of its higher hardware requirements, namely more laptops coming with more and faster RAM to reduce the usage of the page file on the then-dog-slow IDE hard drives, as well as solid state drives coming to the fore. But more importantly, Vista brought users new methods of securing their data, which included User Account Control (UAC) and full drive encryption through BitLocker.
Now we’re on to Windows 10 almost ten years later, and things have changed tremendously. We now have encryption for so many things that Intel, AMD, ARM, Samsung, and all of their competitors making processors felt it necessary to design dedicated hardware logic to accelerate the decryption process. Password managers like KeePass and LastPass rely on the contents of the files they work with be encrypted, and more and more people are downloading and installing the Tor browser to see what it’s all about. We have plug-ins like HTTPS Everywhere trying to increase security on the internet, and we have technologies like Windows Hello coming to the fore, offering biometric logins for your Windows account as well as anything else that can make use of a fingerprint reader.
Security in Windows 7 and 8.1 is still good, and even Vista with service pack 2 installed is serviceable as an operating system. But they all use old systems that need replacing.
Finally, driver development will be far less complex
Intel’s Skylake family and AMD’s upcoming Carrizo and Zen processors are going to be the last CPUs that have motherboards with Windows 7 and Windows 8.1 drivers. From Kaby Lake and Bristol Ridge (respectively) onwards, motherboard manufacturers only have to worry about developing two sets of drivers (one for 32-bit, and one for 64-bit Windows 10). Even now, there are significant differences in the way drivers are coded for Windows 7, 8, 8.1, and 10, and only having one OS to target simplifies things a lot.
A while back, Microsoft’s changes to Windows 8.1 were wreaking havoc across the software industry because of the changes deemed necessary to improve application security and making driver software more efficient – changes that no-one could actually look into until the OS had released. Having only Windows 10 to target now reduces the complexity of releasing future hardware drivers, and Windows 10 becomes the new base just like Vista and Windows 8 to some extent.
There’s one more thing as well. AMD is in the final stages of launching a fully compliant HSA-aware hardware platform, which will rely on new APIs like DirectX 12 to work properly. Forcing complete and final HSA support into Windows 8.1 just isn’t going to happen, even though the early implementations of it were there already. When Zen eventually launches, it’ll only be supported on Windows 10 (and newer versions of Linux, obviously) and AMD won’t have to spend months of development time trying to get it to work in Windows 7.