Ever since I have 8GB of RAM (yes, hi, I'm late to the party... =b), I've been looking for ways to actually use the extra resource properly. AFAIK, most people use Dataram RAMDisk (which I'll call 'DR' from this point onward), which is limited to 4GB a disk and doesn't support multiple RAM disks at once. And that is where ImDisk comes into play. Also, this guide is about a 'RAM disk', not DR a.k.a. 'RAMDisk' which is another software to create RAM disks; just to clarify things. =b Yes, I do realize that most people with 8GB or more RAM don't need a RAM disk more than 4GB nor even multiple RAM disks, and I'm not suggesting that you should, but this is just to show that it's possible, and how to do it. In short, it's because we can, not necessarily because it's better. Before we start, I'd like to point out that I use Windows 7 Home Premium 64-bit. So, Vista 64-bit users may also follow the same steps. XP users...well, seriously, why bother having more than 4GB? :3eyes: Installation In case you haven't visited the ImDisk link above, go here. Download the installer, and then run it; pretty self-explanatory. ImDisk, like DR, runs in background by installing itself as a device driver. Setting up a RAM disk You can either use the command prompt (cmd) and then run imdisk, or from the ImDisk panel in Control Panel; you might have to set the Control Panel view from Category to icons to find it. But this guide is all about using the command-line version a.k.a. imdisk. Remember, you have to run cmd with an administrative privilege. This also goes for when you're deleting a RAM disk. The easiest way is to type cmd at the Start Menu search box and then press Ctrl+Shift+Enter. And no, Ctrl+Shift+Enter doesn't work on Win+R a.k.a. Run box. Now that you've installed ImDisk, open up cmd as described above. To make a 512MB disk on drive X: using NTFS, type this : imdisk -a -s 512M -m X: -p "/fs:ntfs /q /y" -a initializes the virtual disk. -s 512M is the size, 512 MegaBytes. The full choices are b, k, m, g, t, K, M, G, or T. These denote a number of 512-byte blocks, thousand bytes, million bytes, billion bytes, trillion bytes, KB, MB, GB, and TB, respectively. -m X: sets up the mount point a.k.a. the drive letter, X:. -p "fs:ntfs /q /y" formats the drive. -p's parameters are actually for Windows' format program. So, if you want the RAM disk in a different filesystem, just change ntfs to fat (FAT16) or fat32 (FAT32). After you run that command, you should be able to see it with Windows Explorer, formatted and ready to be used. Any additional disks can be made by simply changing -m's parameter to another letter, changing the size & filesystem parameters if you want to, and run it again. Deleting a RAM disk Run imdisk -d -m X:, or imdisk -D -m X: to force a removal. X: is of course the drive letter of the RAM disk you want to detach/delete/remove. Setting up RAM disk(s) automatically when Windows starts The surefire way to do this without using Group Policy Editor (gpedit.msc, which only exists in Professional version and up) is to define a task in Task Scheduler (taskschd.msc). As usual, Start Menu's search box should make it easy to find and start Task Scheduler. But before creating a schedule, it's advisable to create a command script first a.k.a. .cmd file, especially if we're going to start multiple RAM disks. For example, we want to create 3 RAM disks with drive letters X:, Y:, and Z:. X: is 1GB in NTFS, Y: is 256MB in FAT16, and Z: is 768MB in FAT32. Therefore, we need to create a simple text file (Notepad will do fine) and put this : Code: imdisk -a -s 1G -m X: -p "/fs:ntfs /q /y" imdisk -a -s 256M -m Y: -p "/fs:fat /q /y" imdisk -a -s 768M -m Z: -p "/fs:fat32 /q /y" ...then save it as imdisk-start.cmd, or any other name as long as it ends with .cmd. Personally, I'd save the file inside a directory I created under C: or system drive. i.e C:\ImDisk\ directory. When that is done, let's go back to Task Scheduler. Using the left-most pane, browse to Task Scheduler Library -> Microsoft -> Windows. Like so. Then right-click on the upper middle pane (which is usually empty) and Create New Task.... I'll explain what to do in each tab. General Name The name of your schedule; I named mine 'ImDisk Start'. Description Leaving it blank is fine. Security options Click Change User or Group. Enter the object name SYSTEM, all capitals, then click OK. The user account should now read NT AUTHORITY/SYSTEM. Turn on Run with highest privileges.Turn on Hidden, then choose the OS you're currently using in Configure for:. Triggers Click New.... On Begin the task:, choose At startup. Click OK. Actions Click New.... Click Browse.... Look for the .cmd file you created earlier to start the RAM disks; i.e imdisk-start.cmd. Double-click the file, then click OK. Conditions Turn off Start the task only if the computer is on AC power. Settings Turn on Run task as soon as possible after a scheduled start is missed. Click OK to create the schedule. That's it! Setting up a page file in a RAM disk when Windows starts For this, we need an extra tool called swapadd. We need to go back to the website where we downloaded ImDisk, but to its command-line utilities section. Look for swapadd.zip, and download that. Extract the content to C:\Windows\System32\ to make things easier. Remember that .cmd file we created earlier? We're going to edit it a bit. Say we want to have 1GB of RAM disk dedicated for a page file formatted in NTFS assigned to W:. Then we need to add these two lines. Code: imdisk -a -s 1G -m W: -p "/fs:ntfs /q /y" swapadd W:\pagefile.sys 990M 990M First line, by now, is self-explanatory. The second line is basically adding pagefile.sys to the RAM disk in W:, sized 990MB. The first 990M is the minimum size, or lower limit. The second is the maximum size for the page file. When you set both to the same number, it sets a page file with a static size. Similar to imdisk, you can set the size to KB, MB, or GB, by using K, M, or G after the number, respectively. Setting a persistent RAM disk across restarts and shutdowns Now, what if we want to set a RAM disk as a browser cache, but we don't want it getting 'reset' every time we start Windows? Or maybe even our account's temporary folder (which is different from Windows' temporary folder)? As before, we need to visit here again. Look for rawcopy.zip, and extract its content to C:\Windows\System32\ directory. Now, for this, we need to create both a new .cmd file and a new schedule. This is because we need to run the command(s) when Windows is shutting down in order to restart or shutdown, which requires a separate schedule along with a different trigger. Then, edit the imdisk-start.cmd to reflect these changes. First, the new .cmd file. Say we're planning to preserve Y: and Z: contents. We need to put this in the .cmd file : Code: rawcopy -mld \\.\Y: "C:\RAM disks\Y.img" rawcopy -mld \\.\Z: "C:\RAM disks\Z.img" ...and then save it as, for example, imdisk-save.cmd. You can save it in the same directory as where you've saved imdisk-start.cmd. As for the parameters, you only need to understand the last two. \\.\Z: is the drive letter of the RAM disk which contents we want to preserve. "C:\RAM disks\Z.img" means that rawcopy will write the image file (named Z.img; it's up to you, though) in a directory called C:\RAM disks\. Next, setting up the schedule. Aside from the schedule name (I named mine 'ImDisk Save'), the steps and settings are similar to when we created the schedule for starting the RAM disks. Except that at : Triggers Click New.... On Begin the task:, choose On an event. Settings On Log:, choose System. On Source:, choose USER32. On Event ID:, type 1074. Click OK. Actions Click New.... Click Browse.... Look for the .cmd file you created earlier to save the RAM disks; i.e imdisk-save.cmd. Double-click the file, then click OK. Settings Turn off If the running task does not end when requested, force it to stop. Don't forget turn on Run task as soon as possible after a scheduled start is missed. Click OK to create the new schedule, and that's it. If you're wondering why the trigger is like that, open up Event Viewer (eventvwr.msc). Navigate to Windows Logs -> System, then look for events with the source USER32. And the reason we need to turn off 'If the running task does not end when requested, force it to stop' option is to prevent Windows from prematurely ending imdisk-save.cmd, which could make rawcopy stopping halfway or not starting at all. Lastly, we need to edit the imdisk-start.cmd file again. Replace these lines : Code: imdisk -a -s 256M -m Y: -p "/fs:fat /q /y" imdisk -a -s 768M -m Z: -p "/fs:fat32 /q /y" ...with these : Code: imdisk -a -t vm -f "C:\RAM disks\Y.img" -m Y: imdisk -a -t vm -f "C:\RAM disks\Z.img" -m Z: The new codes are basically telling imdisk to make RAM disks using the image files that were saved when Windows was shutting down. Of course, the directory and image file names should be according to what you've set in imdisk-save.cmd before. Closing notes This is about as 'advanced' as I can explain, since my own usage is basically what I've written above. If you have any questions about things I've not covered, it's better to consult with ImDisk's author in this forum. Most of the explanations I have here are also from there, including ImDisk settings (parameters and whatnots). The only thing I thought up myself was the task scheduling, along with the triggers. It also goes without saying that the storage device you're saving the RAM disk image(s) into shouldn't be external storage devices like thumb drives or external HDDs. Aside from a noticeable slow down when saving the image(s) due to USB's transfer speed (which is still slower than SATA even with USB 3.0), we have no way to ensure that at Windows start up the external storage device is ready when our schedule runs imdisk-start.cmd to load the images. This is why it's better to save the image(s) on an internal HDD/SSD. And in case you haven't noticed, creating those two little .cmd files saves you from having to create a schedule in Task Scheduler for each and every command you're trying to run at Windows startup or shutdown. With that said, have fun trying ImDisk. Just don't hold me responsible when your PC implodes or anything. And if you could, donate to ImDisk's author. Thanks for reading this colorful wall of text. And so much for using the 'DR' abbreviation.