From Wikipedia, the free encyclopedia
Jump to: navigation, search

For computer file systems, fdisk (for "fixed disk") is a command-line utility that provides disk partitioning functions. In versions of the Windows NT operating system line from Windows 2000 onwards, fdisk is replaced by more advanced tool called diskpart. Similar utilities exist for Unix-like systems.


DOS and Windows[edit]

Screenshot of FDISK on MS-DOS

IBM introduced fdisk, Fixed Disk Setup Program version 1.00, with the March 1983 release of the IBM PC/XT, the first PC to store data on a hard disk, and the IBM Personal Computer DOS version 2.0. Version 1 could be used to create one FAT12 DOS partition, delete it, change the active partition or display partition data. fdisk writes the master boot record, which supported up to four partitions. The other three were intended for other operating systems such as CP/M-86 and Xenix, which were expected to have their own partitioning utilities as fdisk did not support them.

In August 1984, PC DOS 3.0 added FAT16 partitions to support larger hard disks more efficiently.

In April 1987, PC DOS/fdisk 3.30 added support for extended partitions, which could hold up to 23 "logical drives" or volumes.

Support for FAT16B was added with Compaq MS-DOS 3.31, and later became available with MS-DOS/PC DOS 4.0.

Most DOS fdisk programs, including the fdisk program that came with the original Windows 95, are only capable of creating FAT partitions of types FAT12, FAT16 and FAT16B.

A derivative of the MS-DOS fdisk was provided with Windows 95, Windows 98, and later Windows Me. Only those fdisk versions shipping with Windows 95B or later are able to manipulate FAT32 partitions. Windows 2000 and later do not use fdisk, they have the Logical Disk Manager feature, as well as DiskPart.

Unlike the fdisk programs for other operating systems, the fdisk programs for DOS and Windows 9x/Me not only alter data in the partition table, but will also overwrite many sectors of data in the partition itself.[citation needed] (However, to create an extended partition any partition editor must put extended boot records before each logical drive on the disk.) Users must be sure the correct disk/partition has been chosen before using a DOS/Windows fdisk for partitioning. The fdisk /mbr switch is undocumented but well known for repairing the master boot record.

The fdisk supplied with Windows 98 does not report the correct size of a hard disk that is larger than 64 GB. An updated fdisk is available from Microsoft that corrects this.[1]


The implementation of fdisk in FreeDOS is free software.


OS/2 shipped with two partition table managers up until version 4.0. These were the text mode fdisk and the GUI-based fdiskpm. The two have identical functionality, and can manipulate both FAT partitions and the more advanced HPFS partitions.

OS/2 versions 4.5 and higher (including eComStation) can use the JFS filesystem as well as FAT and HPFS, and replace fdisk with the Logical Volume Manager (LVM).

PC DOS 7.10[edit]

IBM PC DOS 7.10 contained FDISK32 and FORMAT32 utilities.

Unix-like systems[edit]

Linux needs at least one partition, namely for its root file system. It can use swap files and/or swap partitions. Almost all Linux installations have a second partition dedicated as swap space.

Other Intel based Unix-like systems typically use a more elaborate arrangement. BSD-derived systems use a disklabel as their primary method of identifying distinct sections of the disk, usually termed slices. These slices may or may not correspond to partitions enumerated in the master boot record. A typical arrangement is for the entire Unix system to have a single partition allocated to it which is then subdivided into distinct slices for each filesystem and the swap area. Other partitions outside this dedicated one may be legitimately referenced in a disklabel - this is particularly true in dual boot scenarios, where it is desired that the Unix system be able to access partitions used by other operating systems residing on the same machine.

This approach is not mandatory since the MBR and bootlabel are two distinct records - it is technically possible (but not recommended) for the disklabel to describe a filesystem on an area of the disk that the MBR regards as unused. Regardless of the correlation between the two records, the 'entire disk' slice of the disklabel usually corresponds to the entire physical disk and not solely to the dedicated partition. In order to eliminate any possibility of confusion caused by these two (possibly contradictory) records, the sysadmin of these systems may elect to eliminate the master boot record from the disk. However, a disk laid out this way is unusable by any other operating systems.

The situation with System V-derived systems is similar to that with the BSDs, although the terminology usually used differs slightly. In this instance a single partition is subdivided using the divvy command, and such areas are often simply referred to as divisions.

On older Intel compatible hardware, the BIOS that boots the system can often only access the first 1024 cylinders of the disk. For this reason a separate filesystem, often of only a few megabytes, is often created at the start of the disk to store the kernel image and a few auxiliary files needed at boot time, ensuring that they are readable by the BIOS. Once the kernel is loaded and has taken over responsibility for disk activity, the filesystem is typically mounted on /boot or /stand. There may also be reasons of security, ease of administration and backup, or testing, to use more than the minimum number of partitions.

See also[edit]

External links[edit]