Windows lives on the C: drive, and the reason it's not called A: or B: goes back to the 1970s

1 week ago 2

If you've used a Windows PC, you might have noticed that the main system drive is labeled "C:" by default and caught yourself wondering what happened to "A:" or "B:". After all, the alphabet doesn't start with "C," so what's going on there? This naming quirk actually has a reason for existing, and it dates back to the early days of personal computing. Like a lot of things, it's rooted in historical conventions and legacy hardware.

In the era of floppy disks and early operating systems like CP/M and MS-DOS, A: and B: were reserved for floppy disk drives, which pushed the first hard drive to C:. Floppy disks were dominant back then, still in use for a long time past the advent of hard disks, and eventually C: as the default drive just... stuck.

Origins of A: and B:

It's all down to CP/M and MS-DOS

MS-DOS 6.22 running on a Raspberry Pi

The use of letters to designate drives can be traced back to some of the earliest microcomputer operating systems based on Intel 8080/85. CP/M, a popular OS in the late 1970s initially built for 8-bit machines with a maximum of 64 kilobytes of memory, was one of the first to use drive letters to identify storage devices. In CP/M (and the systems it influenced), "A:" referred to the first floppy disk drive, "B:" to the second, and so on.

One of the biggest names that this convention influenced was Microsoft's Disk Operating System, or MS-DOS. Released in the 1980s, this was originally a 16-bit clone inspired by CP/M, and from the very beginning of the IBM PC era, drives A: and B: were understood to be floppy drives. This carried forward throughout Windows versions, and is still present to this day.

It's worth noting that not all early personal computers used this naming method, and there were other ways companies tracked drives plugged into a computer, too. For example, the TRS-80 from Tandy Corporation labeled its first floppy as Drive 0 and the second as Drive 1 before the DOS era. Once MS-DOS arrived, though, the alphabetical letter scheme essentially became a standard for IBM-compatible machines.

Floppy disks and drive lettering

They used to be incredibly important

floppy disks in a pile

In the late 1970s and early 1980s, floppy disks were the primary storage medium for personal computers. Early PCs often came with one or two floppy disk drives, and these corresponded to the A: and B: drive letters. For example, the original IBM PC (introduced 1981) was commonly sold with two 5.25-inch floppy drives. In a two-drive setup, users would typically boot the operating system or run software from the A: drive and use the B: drive for data storage or another program disk, where one drive could load the program and your other would save whatever you were working on. This is not too dissimilar to using a second SSD for your user folders, for example.

What about when a PC had only one floppy drive? The operating system still preserved the idea of A: and B:, and in those cases, B: was a "phantom" second drive mapped to the same physical floppy drive. When software needed to access a second disk (drive B) on a single-drive system, DOS would prompt the user to swap disks in and out of the single drive, effectively emulating two drives using one device.

To give you an idea of how this worked, when copying files between disks with one drive, you’d see prompts like: "Please insert source disk into drive A:… Now insert destination disk into drive A:", alternating back and forth. You would basically remove the boot medium, put in the disk with your programs and data, then put back in the boot disk to use the command line again. This is why B: was still defined, as it allowed the OS and programs to treat the single drive as both A: and B: when needed.

Because floppy drives were standard and integral to early PC operations, the system hardware and BIOS expected up to two floppy drives. Motherboards had fixed hardware addresses for drive A and drive B, and DOS accordingly assigned those letters by default as it was built into the hardware anyway.

Moving to hard drives, but keeping A: and B:

Hard disks entered the fold when floppy disks were still in use

A few HDDs and SSDs, with one HDD inside of a Ugreen HDD enclosure

As technology progressed, hard disk drives (fixed disks) started appearing on personal computers in the early 1980s. The IBM PC XT, introduced in 1983, was the first IBM model to include an internal hard drive as standard. By convention, this new hard drive was assigned the next available drive letter after the floppy drives, which was C:.

Since A: and B: were reserved for floppies, the first hard disk naturally became C:, and it wasn't arbitrary, either. The hardware/BIOS and DOS didn’t "re-number" the floppies when a hard disk was added, and it was conceivable that hardware would still launch with floppy drives on a fixed hardware address. Operating systems needed to support both hard disks and floppy drives, and even high-end computers at the time were still expected to have one or two floppy drives installed as well.

In other words, a typical late-1980s PC might have had A: and B: as floppy drives (e.g. a 5.25-inch floppy and a 3.5-inch floppy) and C: as the hard disk. During this transitionary period, many systems even had both sizes of floppy disk drives (a legacy 5.25-inch and the newer 3.5-inch) coexisting as A and B. These two drives were still handled by the operating system and the hardware in a special way, but the hard disk with its vast amount of storage was the new C drive by default.

Things get a bit weirder as time goes on, with the assignment of drive letters becoming a little bit more intelligent. DOS (through the 1980s and early 90s) always ensured that a hard disk, if present, would get the letter C. In fact, starting with MS-DOS 5.0 (released in 1991), the assignment algorithm was explicitly designed so that drive C: is the first hard disk, even if more than two floppy drives exist. Previously, older versions would enumerate all floppy disks first, so your hard disk could end up being on D: or E: depending on how many floppy drives were present.

This scheme added consistency that allowed software developers and users to assume that C: referred to the computer's main storage disk. Over time, as additional drives became common, such as CD-ROM or DVD drives, they took the subsequent letters in order. For example, when CD-ROM drives became common in the 1990s, a single-hard-drive system would typically have the CD drive as D: by default.

All of this is to say that C: became the first hard drive by accident in one sense, but by design in another.

Why does Windows 11 still use C:?

It's all about user convenience

Trying to change the drive letter on an NVMe SSD to drive letter A    

I know what you're wondering; we're talking about Microsoft's operating system back in the 80s and 90s, so why does that have bearing in 2025? You'd be forgiven for assuming that Microsoft would have switched over to A: and B: for the primary and secondary boot devices eventually, but it's the backwards compatibility of Windows that's kept the tradition alive.

You see, it's not just the case that Microsoft wants to keep floppy disks as a supported piece of hardware on modern systems. Instead, it's that software assumed that the main disk (with the OS and programs) would be C:, meaning that many installation scripts, configuration files, and system tools in the DOS/Windows ecosystem were built with this assumption. Changing the default would break a lot of software, and keeping C: as the system drive ensures compatibility with older applications.

To this day, A: and B: are considered special cases, and the operating system will react differently to drives that are assigned those letters manually. It assumes they might be occasionally absent or swapped, and installing Windows on a drive that's assigned one of those letters will prevent it from being indexed. Using the built-in tool to change drive letters, Windows won't even let you assign A: or B: to non-removable media.

Another reason the C: convention sticks around is simply user familiarity. For over 30 years, PC users have been accustomed to the idea that the computer’s main drive is "C." This is taught in countless books and tutorials, and many people just expect it. By the time floppy disks disappeared from common use, everyone was so used to C: as the primary drive. There hasn't been a compelling reason to overhaul the lettering scheme, since it doesn't really cause problems.

With all of this, Windows continues to start at C for the system drive out of tradition and compatibility, and it likely will for the foreseeable future.

What about other operating systems?

Everyone does it differently

While Windows inherited drive letters from CP/M and DOS, other modern operating systems took a very different approach to organizing file systems. Unix-like systems (such as Linux and macOS) do not use drive letters at all. Instead, they have a single unified directory tree and mount each storage device into that tree as a folder. Drives are represented on many Linux distributions as a whole drive in the form of /dev/sda, /dev/sdb, and so on, with individual partitions looking like /dev/sda1 or /dev/sda2.

This separation is also why you can mount drives to different places. A Linux system might mount its primary partition to /, whereas you may mount an external drive to /mnt/data. There isn't a separate lettering designation used, and aside from the sda and sdb nomenclature, drives aren't typically enumerated in the same way as on Windows. In fact, you can mount drives by their ID instead of these fixed points, which ensures that the right drive is mounted to the right place every time. Otherwise, if another drive ends up being /dev/sdb on the next boot, your mount points might be incorrect.

On Windows, there is no single parent directory for all of your drives. Each drive is its own file system tree, and neither approach is strictly superior. Most of it comes from history and design choices, and the Linux method is is very flexible and avoids many limitations found on Windows. However, Windows makes it incredibly straightforward to use and understand, and each drive is an obvious top-level entity. You can actually mount drives to specific folders in modern NTFS versions, but it doesn't make a whole lot of sense for most Windows users.

The same goes for macOS, and new disks are mounted in the /Volumes directory. There are no "C" or "D" drives; instead, they're simply known by an actual name. Other operating systems can all have their own conventions. For instance, some may have used device names or numbers rather than letters, as the drive letter idea was largely a microcomputer phenomenon started by CP/M and MS-DOS.

Windows runs on the C: drive simply as a process of technological evolution and backwards compatibility. It's all thanks to the floppy drives the operating system relied on, and hard drives simply took the next letter available. Now it's about not rocking the boat and keeping software compatible with modern versions of Windows. You can assign your removal media to an A or a B drive, but you're better off going with the letters after C. Because where else will your floppy drives mount?

Read Entire Article