Introduction
Advanced Format hard drives have started rolling up in the past couple of years. Today you are more likely to buy an Advanced Format drive than not.
Generally speaking, an Advanced Format (AF) drive will have 4KB physical sectors, as opposed to 512B physical sectors on a standard/legacy format drive. There are some efficiency advantages to this, which can allow, in the future, higher density and possibly better performance. The technology brief can be read here.
Since many home operating systems and applications have learned to rely on 512B sector sizes, many of them would not support a 4K-drive natively. For this reason, all AF drives currently on the market work in 512B emulation mode – they allow the OS/BIOS/Firmware to access logical 512B sectors, and the drive translates it to physical 4KB access under the hood.
Sounds perfect? Almost. There are two issues:
Unaligned access
Even though the low level deals with 512B blocks, most higher level access is typically in 4KB or larger chunks. If not aligned on a 4KB boundary, this can lead to performance penalties, since one logical block is split across two physical sectors. This is not that hard to deal with – all it takes is that the partition start is aligned on a 4K-boundary, which will make all logical blocks aligned as well. Fortunately, Windows install routines since Vista SP1, as well as most modern cloning/partitioning tools will align the partition just fine (some of them always align, some do when they detect an AF drive or an SSD).
Summary of support for Advanced Format drives in modern operating systems and some partitioning/cloning tools:
-
Microsoft support policy for 4K sector hard drives in Windows
- Advanced Format Drives Support in Acronis Products
Broken Windows Update and other components
This problem is actually much more serious. It appears that although Windows in general works fine with the emulated 512B logical sectors, some key components still rely on the actual physical sector size, and cannot function. Specifically, they often cannot function if the physical sector size changes. But how can it change suddenly? Well, for example, in the following scenario which is not uncommon these days:
- You are replacing a failing hard drive or just want to upgrade your drive, without reinstalling the operating system
- Your new drive is Advanced Format, whereas the old one was not
- You clone your existing OS installation to the new drive or restore from a backup image
What are the possibly affected components? Turns out there are a few, and some of them are quite important. According to Microsoft, these are the components that rely on the ESENT (Extensible Storage Engine), which include:
- Windows Update
- Active Directory
- Windows Desktop Search
- Certification authority (CA)
- Windows Internet Name Service (WINS)
- Dynamic Host Configuration Protocol (DHCP)
- Windows Live Mail
Microsoft – The Fix that Won’t Fix
Turns out, Microsoft has actually been aware of the issue for quite some time and there are KnowledgeBase (KB) articles to address it:
Windows Vista / Server 2008:
- KB2470478: Applications that are built on ESENT and that run on a Windows Vista-based or Windows Server 2008-based computer may not work correctly after the reported physical sector size of the storage device changes
- KB2553708: A hotfix rollup that improves Windows Vista and Windows Server 2008 compatibility with Advanced Format disks
Windows 7 / Server 2008 R2:
- KB982018: An update that improves the compatibility of Windows 7 and Windows Server 2008 R2 with Advanced Format Disks is available
Now we’ll finally get to the key topic of this article.
So what is the problem? Well, if you run Win7, chances are you’d have no problem, because the hotfix was pushed as an update an was in fact included in Win7 Service Pack 1. However, for Vista, Microsoft, for whatever reason, decided not to push the hotfix to users. Even if you rigorously download all important and recommended updates, you would not get either of the two hotfixes mentioned above. If you read the KB articles, you will read the following:
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
But the hotfix was released post Vista SP2, and no “software update” with it ever came.
So, if you happened to be running Vista and cloned your installation to an AF drive, you would be facing the following unpleasant scenario (which, in case you had doubts, just recently happened to me):
- Windows Update stopped working (as well as possibly other, more or less important components; desktop search commonly breaks as well)
- If you are happen to figure out the cause being the AF drive, and search for solutions, you will fairly quickly get to the aforementioned KB articles, and obtain the hotfixes (which, BTW, are not offered for direct download, only via e-mail)
- And now, the grand finale: Having downloaded the hotfixes to fix Windows Update, you cannot install them, because they rely on the Windows Update service to install! :):):)
It is absolutely mind-boggling that such a simple and obvious contradiction escaped Microsoft’s engineers who worked on these fixes. Furthermore, I found multiple forum threads mentioning this exact problem, some of which are even from Microsoft’s own forums, from 2-3 years ago:
- http://answers.microsoft.com/en-us/windows/forum/windows_vista-windows_update/esent-errors-on-windows-vista-kb2470478/9c2e0fcc-ae72-4c0a-9c61-f6feab68080d
- http://answers.microsoft.com/en-us/windows/forum/windows_vista-hardware/vista-hotfix-for-kb-2470478-will-not-install/660b96b5-6073-e011-8dfc-68b599b31bf5
- http://support.macrium.com/topic.asp?TOPIC_ID=5861
- https://forum.acronis.com/forum/25558
- https://social.technet.microsoft.com/Forums/windows/en-US/32fe71df-35a6-4294-a1d6-ba2a59228348/can-vista-be-fixed-after-cloning-onto-advanced-format-drive
All of them talk about either having to install the hotfix before the cloning (which you would never do unless you happened to have heard of this rather obscure issue before), or have to somehow install the files manually (which has its own downsides, as nothing will protect you if you screw something up).
Update: The last thread (from Social.Technet) mentions that it is possible to do a half-automated install, by extracting the files from the hotfix archive, and then running PkgMgr, as described here. This at least beats having to manually inject the DLLs into the system directories, although most users are not likely to discover this option.
Intel – The Hunt for the Driver
Let’s assume that you avoided the Microsoft issues, by timely application of the hotfixes. Turns out you are not out of hot water yet. To fully support 4K drives, the storage driver must also be updated.
Assuming you have an Intel SATA controller (which is the common case if you have a system with an Intel CPU), you will need an updated version of the Intel Rapid Storage Technology (RST) driver. Again, there seems to be a “discrimination through negligence” for Vista users: according to various sources (e.g., the Macrium forum thread), RST 9.6 or higher is required. If you have Win7, any of the versions on the main download page will work for you (although for older chipsets you may need to select an older version, like 11.x). However, if you select Vista, you will be presented only with very old drivers, the newest of which is 8.9, from 2009, back when it was called “Intel Matrix Storage Manager”, and it does not support 4K drives.
Fortunately, an up-to-date compatible driver does exist, although you have to poke around the web a bit longer to find it. You will find it under Intel® Rapid Storage Technology Driver for Intel Desktop Boards:
Version 9.6 for XP, Vista, Win7 and the server variants (claimed to be the first version to support AF drives) – for older (Core 2 generation) chipsets
Version 11.0 for XP, Vista, Win7 and the server variants (apparently the last version to support Vista) – for newer (Core i5/i7) chipsets, but should support Core 2 chipsets as well
Once the driver is installed and the system is rebooted, everything should finally work. To verify proper support of 4K features, run the following command from the command prompt (assuming your drive letter is C):
FSUTIL FSINFO NTFSINFO C:
In the output, look for the value for “Bytes Per Physical Sector“. For an non-AF drive it should be 512. For an AF drive it should be 4096. If you don’t have the right driver installed, it will show up as “not supported“.
Conclusion
It is really shameful, in my opinion, that Microsoft, despite still supporting Windows Vista, allowed such a glaring, crippling issue to slip. KB2470478 describes the symptoms as arising from hard drive replacement, so Microsoft obviously considered this scenario. I simply have no way to explain how, knowing of a potential issue that renders key system components dysfunctional, and having the fix for it, Microsoft still decided that it’s OK not to push this as a high-priority updates to clients.
It is also unfortunate that Intel apparently also forgot that some people still use Vista, and neglected to put up-to-date drivers on the main page for RST downloads. But it’s good that at least there are working drivers. 🙂
TL;DR – Quicklist for adding Advanced Format (4K) drive support to Windows Vista / 7
Fresh install
- For Vista – use SP1 or later install media to properly align the partitions. For Win7 – any install media should work.
- For Vista – install hotfixes KB2470478 and KB2553708. For Win7 – install hotfix KB982018 or Service Pack 1.
- If you have an Intel SATA controller – install RST driver 9.6 or higher – for Vista get Version 9.6 or Version 11.0. For Win7 – you can get a newer driver from here (although the Vista ones should also work).
- Enjoy!
Cloning
- Install the hotfixes mentioned above before cloning to the new AF drive. For Vista – install hotfixes KB2470478 and KB2553708. For Win7 – install hotfix KB982018 or Service Pack 1.
- The SATA driver can be installed already on the cloned drive (but probably better to do so earlier)
- Recommended: use an up-to-date cloning utility that is AF-aware and will correctly align the partition to a 4K boundary (consult manufacturer documentation)
- Enjoy!
If you already cloned without the pre-work
- Download the relevant updates and install them manually by using the Windows Update Standalone Installer after stopping the Windows Update service.
- If the above fails, try the Package Manager method as described here.
- Cross your fingers and enjoy!
Unanswered Questions
Windows XP
According to Microsoft, WinXP is not AF-aware, so it does not explicitly support 4K drives. However, as far as I know, it should still work. In fact some manufacturers have proprietary technologies that can help account for XP’s lack of 4K-alignment in the driver firmware, so you may not even suffer performance issues.
It is unknown to me whether the aforementioned issues with ESENT applications that happen in Vista/7 without the relevant hotfixes will present themselves if you clone an existing XP installation. It is quite possible, but I haven’t seen it referred to anywhere, nor have I seen any fixes for it (the latter may be because Microsoft washes their hands completely of any AF support in XP). If the issues are present, it may be that it is actually impossible to clone an XP install and keep it functional. I am not going to try to find out. 🙂 In any case – Microsoft strongly advises against using XP on AF drives, due to possible unforeseen complications.
Non-Intel SATA Controllers
If the SATA controller your system drive is connected to is not by Intel, you will of course need to obtain the relevant driver from your manufacturer. As far as I know, most manufacturers should have relevant drivers available, but I haven’t tested any non-Intel controllers, so my write-up will not help you here. 🙂