v77 - 2016-07-26

The TRIM commands (the ones usually sent to a SSD) can now be used to release the memory blocks of deleted files. This is much more efficient because the memory is directly freed, without wiping the whole empty space through a temporary file.

This can be implemented thanks to the version 2 of the ImDisk driver that is able to forward these commands.

TRIM requires Windows 7 or later, and the NTFS file system. If you attempt to force the use of TRIM through the GUI (in the "Dynamic RamDisk Parameters") without these prerequisites, the memory of deleted files will not be freed.
The "Automatic" parameter checks the prerequisites and uses the TRIM commands if possible.

Using TRIM disables the cleanup function because it is no longer required. Of course, this function remains available for the cases where TRIM cannot be used.


The data synchronization feature for ramdisks was not not working for a newly created dynamic ramdisk. It's because in this case, RamDyn.exe is called is the user session. Therefore, it is killed before the system send the pre-shutdown notifications to the services.
As a fix, RamDyn is now called from the session 0 ("System" user), through the ImDiskRD service (used to mount the ramdisks at system startup) included in RamDiskUI.exe.

However, RamDyn can still be called through command line and work in the user session. The fix is intended only to the data synchronization feature.

This fix has required important changes, but I used this opportunity to rewrite the management of the services in a way easier to maintain.


Executables now explicitly support DEP and ASLR. ASLR requires Vista or later.


The spanish translation is not yet done, it will be updated as soon as the translator is back. And I am also looking for a new russian translator, since the former seems to have given up.

 

Last edit: v77 2016-07-26