How can I make two hard drives act as one in Windows 7?

By far the easiest solution that technically meets the requirement is to mount the second drive as a subdirectory of the first. I.e. the second drive could be C:\Drive2 instead of D:\. But they don't act as one, then: you don't pool free space.

If you do want to share space, you're talking about RAID-0 (or JBOD, Just a Bunch of Disks). Windows can do this without extra hardware. You'll use diskmgmt.msc ("disk management" from the Microsoft Management Console) for this task.

First, convert both disks to "dynamic" disks. Right-click the disk and choose "Convert to Dynamic Disk".

Next, you can create a volume on one disk and then extend it to the second disk. There's one restriction: you can't do this with the Windows boot disk itself. (That makes sense: you're not using hardware for this RAID solution but Windows, so Windows has to be loaded before this works)


If you are using NTFS for your file systems, you may want to look into Junction Points.

From How to create and manipulate NTFS junction points:

Microsoft offers three utilities for creating and manipulating NTFS junction points:

Linkd.exe

  • Grafts any target folder onto a Windows 2000 version of NTFS folder
    • Displays the target of an NTFS junction point
    • Deletes NTFS junction points that are created with Linkd.exe
    • Location: Microsoft Windows 2000 Resource Kit

Mountvol.exe

  • Grafts the root folder of a local volume onto a Windows 2000 version of NTFS folder (or "mounts" the volume)
    • Displays the target of an NTFS junction point that is used to mount a volume
    • Lists the local file system volumes that are available for use
    • Deletes the volume mount points that are created with mountvol.exe
    • Location: Windows 2000 CD-ROM in the I386 folder

Delrp.exe

  • Deletes NTFS junction points
    • Also deletes other types of reparse points, which are the entities that underlie junction points
    • Aimed primarily at developers who create reparse points
    • Location: Microsoft Windows 2000 Resource Kit

It then goes on to list some examples. To mount a drive as a subdirectory of another drive, as MSalters suggests, the appropriate example would be:

To mount another volume onto an NTFS junction point on your system drive:

  1. At a command prompt, type md ddrive.
  2. Type mountvol ddrive \\?\Volume{e2464852-8089-11d2-8803-806d6172696f}\
  3. Type dir ddrive to displays the contents of drive D.

NOTE: When you display the contents of a folder by using the "dir" command, NTFS junction points are indicated by {Junction}.

An excellent example of this is if you have a small SSD boot drive, but want to move a huge game you're not currently playing off your SSD and onto your big hard drive so you can install another game. First you move the folder to the other drive and create a junction point where it was to where it is now.

I haven't tried it yet, but a recent Lifehacker article suggests that SSD Boost Manager (English translation) should make this very easy indeed.