I don't think any Puppy that I've used has ever frozen.
Running out of ram can cause the OS to freeze.
This is more likely to happen on ram-challenged machines.
The Linux kernel has an Out Of Memory process killer, but it doesn't work properly in some kernel versions.
earlyOOM seems to work well, see: viewtopic.php?f=105&t=2980
To run entirely in RAM the savefolder/savefile would need to have their contents copied to RAM in 'init', and then copied from RAM to the savefolder/savefile in 'r.shutdown'.
Normal Puppy does not do that
No, Puppy does not do that.
I agree with @mikeslr
In regular mode 12, the save file is mounted rw and is the top layer of the aufs file system
and any changes to the fs are written directly to the top layer (the save file)
In mode 13, the save file is mounted rw but is now the second layer in the aufs file system.
The top layer is a tmpfs file system in ram.
aufs treats the save file layer as read only.
Changes to the file system are written to the tmpfs layer.
Saving the changes that were made to the file system (by clicking the save icon, for example)
copies any changes that were made since the last save, copying from the top tmpfs layer to the second layer (the save file layer)
All files in the save file layer (the 2nd layer) are visible in the Linux virtual file system, unless the file is also in the top tmpfs layer in ram.