In the past, when hard disks were relatively expensive, the best advice was usually to buy the biggest disk you could afford. Larger disks tended to offer a lower cost per megabyte (!), except perhaps for the largest model. Though that disk would seem to offer a lot of space, you’d run out of space around the time your PC was heading for obsolescense.
When hard disks came down in price and a the difference between a hundred gigabytes more or less became pocket change, the advice was to put your operating system on a separate spindle (hard disk). Hard disks have become the bottleneck in PC performance, and seek time is the bottleneck in hard disk performance. Desktop operating systems assume hard disks respond “instantly”. When accessing the disk, the operating system waits however long it takes for the disk to respond. That’s why Windows grids to a halt when an application is furiously reading from or writing to disk. By installing Windows (and its swap file) on one disk and saving your data files on another disk your applications are less likely to tie up the operating system drive and thus Windows itself. This is particularly good advice when working with virtual machines. You don’t want two or more instances of Windows to compete for attention from the same disk.
Today we’re starting to measure hard disks in terabytes. A 2 TB model comes in at about $200, or 10 cents per gigabyte. Solid state drives (flash drives or SSDs) have come of age as well. A 250 GB drive like I recently installed costs about $750 or 3 dollars per gigabyte. That makes the SSD thirty times more expensive than the HDD. (I’ve rounded prices and capacities to get whole numbers. Prices change every day anyway.) That means that unless you’re storing very little data or don’t care about how much money you’re spending, you’ll be using both SSD and HDD drives in the near future.
Since SSD drives don’t have spindles or any other mechanical parts, they have virtually no seek time. So the old advice of putting your OS on a separate drive no longer applies. The OS goes onto your SSD together with everything else that you need fast access to. In my case, that means everything I use when developing software. That includes VMware and all its virtual machines, so all running virtual machines benefit from the SSD’s speed. It also includes temporary files, such as Lightroom’s cache folder.
I have split my 256 GB SSD into two partitions. The reason for this is not speed but backup strategy. I’ve allocated 50 GB to the boot partition with Windows 7 and all applications. I back this up by making an image of the partition to an external hard disk. I do this when I’ve installed new software and I’m happy with the configuration. This gives me a point to go back to if the operating system or an important application gets messed up in the future. The remaining 200 GB is the data partition which I back up daily by synchronizing it with an external hard disk. Version histories are stored on both the SSD and the external backup. The Just Great Software applications and their source code don’t take up that much space. So I put all of it on the SSD for convenience.
The second drive in my PC is a 500 GB mechanical hard disk that I’ve been using for some time. This disk stores my photographs, music files, applications I’ve purchased and other downloads, and more random stuff that takes up lots of space but isn’t important to my day-to-day work. This stuff also gets backed up by synchronizing it with an external hard disk.
To budget all this, get the biggest SSD you can afford. If you can only afford 64 GB, that’s way better than nothing. Install the OS on it and fill it with the files you work with most often. You can split a 64 GB drive into two 32 GB partitions just fine. If you have more files than the SSD holds, put the remainder on a mechanical hard disk.
Don’t fill the SSD completely. Leave about 10% to 20% free space so the drive’s wear-leveling algorithm has room to move things around as blocks are erased. SSDs cannot overwrite data. They need to erase it first, usually in blocks of 1 MB. TRIM support in Windows 7 and new SSDs allows the drive to be proactive about erasing unused space. But that only works if there actually is unused space. The free space also gives you headroom for larger temporary files.