| Vista Partitions |
|
For nearly 30 years there has
been a standard to the way basic partitions have been organised and
positioned
on the common IDE/SATA hard drive. In coming years the continuing
expansion of
drive sizes is going to mean a change to hard drive geometry that will
force
the old standards of partitioning to be updated. Microsoft have
agreed to help facilitate this change by making Vista ready for the new drives. Partitions
created by Vista are using new rules that are not entirely compatible
with all
previous versions of Windows or most current third-party tools for
partitioning, imaging and cloning. Some third-party vendors are
trying to catch up and are
releasing “Vista Compatible” versions, but at least two
that I know of have
been premature in this claim. If you only have Vista on your computer and don’t mess with imaging or cloning then you have nothing to worry about. However if you do image or clone your drive or have a dual/multiboot configuration with OSes other than Vista, then there are various serious problems that can arise. For now the best solution is to not let Vista create partitions, but do it with previous Windows OSes or with third-party tools. When installing Vista you should create the partition yourself beforehand and point the Vista install to that partition. Vista is perfectly happy to follow the standard conventions and I have not seen any issues when everything has been done by the old rules using XP compatible tools. Many current apps that worked with XP can be used with Vista, however many might not install inside Vista but they can be used from inside another OS or boot disk. When there have not been any Vista created partitions on the drives I have successfully used several non-Vista versions of partitioning and imaging/cloning tools. I obviously can’t test all the functions of all such apps in all possible OS, drive and hardware combinations, so test your own apps on your own setup before relying on them. There are of course issues with the BCD store and the Disk Signature when imaging and cloning, but these are not always related to partition structure and are dealt with on other pages of this site. When you add the problems of maintaining the unusual drive letter assignments caused by the Microsoft bootmanager into the mix with the BCD, Disk Signature and the new partitioning scheme, then it’s hardly surprising that third-party vendors are struggling to catch up. The possible variations of OSes and partition types on multiple hard drives is going to be a minefield. I would suggest remaining wary of "Vista Compatible" imaging apps for the time being. |
| One aspect of the new partitioning rules “aligns the volume offset with the cache line size” which is a tweak currently used with existing hard drives to increase I/O performance. http://geekswithblogs.net/ntpro/archive/2005/08/11/49948.aspx http://www.msexchange.org/tutorials/Disk-Geometry.html On an average PC any gains will be minimal and not worth chasing, but if you run a busy server or are a high-end gamer then you might want to consider keeping the Vista partitions. You should first however fully familiarize yourself with the limitations on imaging, cloning and dual/multibooting that the new partitions currently impose. |
| Goodbye to Cylinder Boundaries |
|
If you have already decided to follow the advice of not
letting Vista create your partitions then you do not have to read any
further. If you don’t know what cylinder
boundaries or sectors and tracks are, then you will need to brush up on the basics.
http://www.pcguide.com/ref/hdd/geom/tracks.htm On the new drives the individual sectors are going to be larger in size. At present they are 512bytes each, the new sector size will most likely be 4096bytes, which is 8 times larger. There may be a slight drop in overhead from not having to address 8 separate sectors, but the real advantage comes from less error control and the resulting saved disk real estate. On present hard drives the ECC (Error Correction Code) can account for up to 10% of disk space and projections have put this as high as 40% if sector sizes remained at 512bytes. So we need larger sectors and it makes sense to update partitioning conventions to best suit the new hard drive geometry and modern operating systems and software. If you want to read more then there are links at the bottom of this page. Current partitioning rules will always start the first primary partition on the 64th sector, leaving the first 63 sectors (31.5kb) for the MBR. This aligns the partition with the old CHS track boundary and so starts the partition on what would have been the first sector of the second track. Vista by default leaves a 1MB offset at the start of a drive, which results in 2048 sectors not used by the partition, (on the new drives 1MB will be 256 sectors). I've also found the ending sector of any Vista created partition will not be aligned to a cyl boundary, but will be short of it by a couple to several thousand sectors. I don’t know what criteria Vista is using to decide the ending sector, but the constants appear to be that the partition length will always be an even multiple of 2048 and the ending sector number on the first primary will always finish with the digits 2047 – e.g. xxxxx2047 (counting sectors from zero). Any partition created by Vista will follow the new rules, so if you create another partition after a Vista one it will start on the very next sector of xxxxx2048, and again end with xxxxx2047. Extended partitions will start with the Vista rules but end on a cyl boundary. Logical partitions also adhere to Vista rules with the first logical having the 2048 sector offset from the beginning of the extended partition, the same as a first primary has to the start of the drive. This adds 2048 to the count so the first logical starts xxxxx4096 and ends xxxxx4095. Then each successive logical also has the 2048 offset from its own partition table, so the count adds again to xxxxx6144 to xxxxx6143, and etc for each further logical, (The sector numbers I've shown are only if all partitions on the drive have been made with Vista). Mixing the Old With the New A Vista partition after one that does end on a cyl boundary will still use the new rules and so leave unused sectors from the boundary to the start of the Vista partition. So far I’ve seen a few hundred to over eleven thousand unused sectors, (over 5mb). The sector numbers given above are not maintained once a non Vista partition has broken the progression. Any third-party tool I’ve used to create a partition after a Vista one has adhered to cyl boundaries and so left unused sectors between the partitions. Windows XP has thrown up a surprise however because creating a primary partition after a Vista one with XP's Disk Management utility will begin the partition on the very next sector, but it still ends it on a cyl boundary. A partition created by XP during the install of itself will stick to cyl boundaries at both ends and so leave unused sectors from the Vista partition. Without knowing the criteria of Vista's partitioning rules I can't guarantee that they will produce the same results on all hardware. I'll update this page if required as I do more testing. More Hidden Sectors Hidden Sectors are just sectors on a drive that are not part of any partition. Under the old scheme of things the first track on the drive is reserved for the MBR, which will give you 63 hidden sectors. There are no gaps between primary partitions or between primary and extended, so no hidden sectors there. Each logical partition in an extended partition will have a reserved track immediately before it for its partition table, so you will have another 63 hidden sectors before each logical partition. With Vista the hidden sector figures become 2048 for the MBR and also 2048 before each logical. If you have both Vista’s new partitions and old partitions mixed on a drive then you can have several thousand unused sectors between partitions. Now the lost space to these extra hidden sectors is minimal on today’s drives and I can’t see anyone complaining that they have a few MB missing. What may cause problems is that these figures for hidden sectors are not expected by all operating systems and software before Vista. Microsoft themselves have already been caught out by the new partitions, as the “Disappearing Partitions” issue linked to above has shown. Perhaps XP views the hidden sector value of the Vista logical as invalid, or maybe it’s just the fact that the partition is not on cyl boundaries. If XP finds a logical it is happy with before the Vista one/s then it writes the details of the partition it has been asked to create into that one's partition table, which overwrites the record of the logical/s in-between. I have also since seen a couple of other situations where logical partitions can get deleted, both by XP and Vista. |
| Thanks to MudCrab for bringing this important detail of Vista to my attention. I'd missed all but the first partition offset back in January - due in part to the absence of anything about this in the MS documentation on the web, but mainly because of my own habit of not letting Windows create its own partitions to prevent the installation of the Microsoft bootmanager. 29th May 2007 |
| References and reading: Long Block Data Sector Standard
http://www.sys-con.com/read/368465_p.htm 4K Byte-Sector HDD-Data Format Standard (.doc download) http://www.idema.org/_smartsite/modules/local/data_file/show_file.php?cmd=download&data_file_id=1259 ATA/ATAPI-7 Support for 4K Sector Drives (.doc download) http://www.idema.org/_smartsite/modules/local/data_file/show_file.php?cmd=download&data_file_id=1261 The two above documents (HGST WinHEC 2005 White Paper - HGST ATA Standard Proposal) can be had direct from: http://www.idema.org/_smartsite/modules/local/data_file/show_file.php?cmd=standards&cat=103&h=1 > Long Data Block Standards > Proposed Standards. Configuring Disk Alignment http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/core/fnee_exa_ljfw.mspx?mfr=true How Windows NT Handles Drive Translation http://support.microsoft.com/?kbid=161563 http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=994065&SiteID=17 http://forums.storagereview.net/index.php?showtopic=25416 The following links are also in the text above: Windows Vista support for large-sector hard disk drives http://support.microsoft.com/kb/923332 The partition that hosts Windows Vista may disappear if you use Windows XP to create a partition on a computer that has both Windows XP and Windows Vista installed. http://support.microsoft.com/kb/931854 You cannot install Windows XP successfully after you use Windows Vista or Windows PE 2.0 to create partitions on a hard disk. http://support.microsoft.com/kb/931760 You cannot install Windows Server 2003 successfully after you use Windows Vista or Windows PE 2.0 to create partitions on a hard disk. http://support.microsoft.com/kb/931761 The Case of the Disappearing Partitions http://www.dcr.net/%7Ew-clayton/Vista/DisappearingPartitions/DisappearingPartitions.htm |