PDA

View Full Version : To seek a single file to ramdisk.


lanevo9mrgsr
May 20, 2009, 07:11 AM
I ask this in terms of warcraft3
I have 1gb ram.
the warcraft3 folder has war3.mpq(420mb) and war3x.mpq(330 mb) files which "has to be most frequently" read files.
I want any one of those files(I can take away a maximum of only 450 mb of ram... this was found using a 3rd party program) to be put into a ramdisk
that won't be a problem...
here is the problem:
when wc3(warcraft3) seeks the .mpq file,it should get redirected to the files location in the ramdisk and read data from it

what I've tried:
1)used eboostr,but it didn't cache the abovesaid files even when I used a 2gb usb drive for the caching and I also tweaked the software to its limits but it still didn't cache the files.
2)"cut" one of the mpq files to another location.took the shortcut of the new location."cut" the shortcut and pasted it in the old location with the "exact same name" of the original file.but it didn't work,wc3 was not redirected.

solution I desire:
1)a utility which enables my wc3 to get redirected to another location when it seeks my mpq file.
OR
2)a utility that can cache a "specific" file into ram and "ensures" that the file is read only from the ram.

Scleros
May 22, 2009, 11:08 PM
I don't know of a software solution that does what you wish, but I'll throw out what follows for your consideration, pursuit, and testing. It is pure "what-if" on my part and I have no practical experience doing anything like this.

The NTFS file system supports hard and soft (symbolic) file links similar to those in Unix type operating systems. The gist of a link is analogous to a shortcut but instead of an individual file as a shortcut is, the link is simply a specific entry in the file system's records. Multiple hard links in different locations within the file system can all refer to the same data on disk.

How this could apply to your situation is: Create the ramdisk and move the desired MPQ to it (saving a copy elsewhere as backup would probably be a good idea). Then create a hard link (may not be possible since file is on different drive) or a soft link to the ramdisk file at the file's original location. WC3 may be none the wiser.

Resources to get you started:
Wikipedia: Hard link (http://en.wikipedia.org/wiki/Hard_link)
Shell-Shocked: Windows Symbolic and Hard Links (http://www.shell-shocked.org/article.php?id=284)
FlexHex: NTFS Hard Links, Directory Junctions, and Windows Shortcuts (http://www.flexhex.com/docs/articles/hard-links.phtml)