RAM File System

Release date: 
Wednesday, 1 March, 2006


Authors/Port authors:

An IFS-based RAM Disk for OS/2.

  • Create as many RAM drives as you want, using the drive letters that you want.
  • Size only limited by available RAM and swap disk space.
  • Allocates swappable RAM from OS/2 as necessary when files are created, and releases it again when files are deleted.
  • Long file name support like in HPFS.
  • Extended Attributes - up to 64 KB total for each file/directory.
  • Useful for holding temporary files - just let the TMP and TEMP variables point to a RAMFS drive.
  • 3DNow! performance optimizations for AMD processors.
  • Excellent to host swap file on systems with modern solid state disks (SSD).
This software is distributed as compressed package. You have to download and manually install it; if prerequisites are required, you will have to manually install them too.

Manual installation

Program is distributed as ZIP package: download to temporary directory and unpack to destination folder.

Add to CONFIG.SYS following lines (last two to change TEMP setting only):

  • IFS=<path>\RAMFS.IFS
  • CALL=<path>\RAMDISK.EXE R:
  • RUN=<boot>:\OS2\CMD.EXE /C md R:\temp
  • SET TEMP=R:\temp


  • SET TEMP=R:\temp

Please note: DosSetFileLocks() e DosFindNotify...() functions are not supported.

See below for download link(s).

Following ones are the download links for manual installation:

RAM File System v. 20060403 (3/4/2006, Andrew Belov) Readme/What's new
History ~~~~~~~ The development path of this public-domain utility, due to independent participation of various developers, is quite scattered. See the enclosed RAMFS.GIF for better understanding of various branches. 1998-01-03: (without version number). Initial release by Karl Olsen. 1998-12-05: RAMFS64. The only modification is reporting 64M free space. Released by Jack Stein. 2002-03-21: RAMFS64 Performance Update. Changed memory allocation algorithm to avoid performance penalties associated with moving the same data back and forth. This version was developed by Andrew Belov. 2002-04-14: Version 1.01. No big changes. Released by Karl Olsen and Stewart Buckingham. Version 1.01 does NOT contain the aforementioned performance patch. Here is the original change log: o Added a version number :-), the boot message, and the /Q switch. o Fixed a bug that showed up when doing wildcard searches from 32-bit programs, in particular Jonathan de Boyne Pollard's 32-bit Command Interpreter. Strange things happened if you specified an exact filename to a command that allowed wildcards. o Changed the amount of free space and total space reported to OS/2 from 1 MB to 64 MB. Some programs don't like to write large files to a drive that apparently only has 1 MB free. A test version, ramfs64.zip, with just this change has been floating around for some time. o Added the RCOPY program. 2002-10-21: Version 1.02 Performance Update. This is a merger of the previous two releases, released by Andrew Belov. Summary of changes: o Removed RCOPY (made obsolete by the performance patch). o Moved to Microsoft C v 6.0 and the DDK build environment. o Implemented AMD 3DNow!<TM> block copy code as per AMD technical note #22007. Added a kernel patch module and command-line parameters (/3, /!3) to control 3DNow!<TM>. o Added /S command-line parameter to set the free space amount reported by RAMFS. 2002-11-03: Version 1.03. o Fixed wrong behavior when memory allocation for large files failed (regression from 2002-03-21 perf. enh.) 2002-12-06: Version 1.04. o Added the /R parameter to keep the RAMFS data resident. 2003-01-12: Version 1.05. o Fixed a bug which resulted in read-only files being unrestricted for overwriting. 2003-02-19: Version 1.06. o Fixed the "avalanche" trap effect that might occur under certain conditions with 3DNow!<TM> optimization (regression from 1.02). 2003-02-22: Version 1.07. o The performance optimizations are restricted to K7 only. o Fixed an issue with the wrong detection of 3DNow!<TM> capabilities (regression from 1.02). 2003-05-31: Version 1.08. o Fixed the attributes returned for long filenames. 2003-06-16: Version 1.10. o Added an SBCS patch for 14.09x kernels (fixes inability to create filenames which end with an odd number of high-ASCII characters). o Interim solution for omissions in file list when retrieving multiple directory entries using DosFindFirst/FindNext. 2003-11-03: Version 1.11. o Implemented options to restrict the overall memory usage in RAMFS. 2003-11-17: Version 1.12. o Valid date/time properties are now reported for the root directory. 2003-12-02: Version 1.15. o Fixed traps during startup and upon memory exhaustion when using MEMMAN=NOSWAP. o Added the /CLU parameter to configure the variable cluster ranges. o Added a check for invalid memory addresses along with the /!VM parameter that disables it in favor of speed. 2005-06-22: Version 1.16. o Rearranged the read/write operations to ensure reentrancy when data transfer between RAMFS and a freshly allocated region requires program code to be loaded from RAMFS. Old behavior caused a deadlock condition (e.g. with IBM Web Browser installer). o Added a check to prevent empty filenames from being created (as in "prompt>T:\"). 2005-09-17: Version 1.17. Corrected the open/replace logic: o Previous versions of RAMFS unconditionally prohibited replacing open files - this has been replaced with a check for current sharing restrictions. o It is now impossible to replace a hidden/system file with a regular one. 2005-10-21: Version 1.18. o Compatibility fix: error codes for deleting non-empty directories, i.e. DosDeleteDir("somepath/somefile") and DosDeleteDir("somepath"), now match those returned by NETWKSTA.200 in similar cases. 2006-03-16: Version 1.20. o Fixed missing files in DosFindNext requests for redirected RAMFS volumes. 2006-04-02: Version 1.21. o Rolled back the 1.20 fix due to compatibility/performance regressions. o Introduced experimental support for FS_DETACH (RAMDISK /DELETE x:).
Record updated last time on: 08/01/2020 - 06:42

Translate to...

Add new comment