next up previous
Next: Resource optimization Up: RAMDISC Systems Previous: RAMDISC Systems

Performance

One of the reasons for using a RAMDISC is file-access performance; a RAMDISC can reach a read/write bandwidth comparable to a high-end SCSI device. This can substantially increase overall system performance. On the other hand, a RAMDISC does consume valuable system-RAM, generally a quite limited resource, so minimizing the filesystem size at runtime in a RAMDISC based system is performance critical. It is a slight exaggeration, but doubling available system-RAM in a low memory setup can improve overall performance as much as doubling CPU speed!

A nice feature available for Linux is to not only copy compressed filesystem images to a RAMDISC at boot time, but to actually let the kernel initialize a filesystem from scratch at boot-up and populate it from standard tar.gz archives thereafter. The advantage of this is that the boot-media can contain each type of service in a separate archive, which then allows safe exchange of this package without influencing the base system. Naturally, exchanging the base archive or the kernel is still a risk but at least updating services - which is the more common problem - is possible at close to no risk. If such an update fails, you just login again and correct the setup. With a filesystem image you generally have to replace the entire image; if this fails, the system will not come back online, and a service technician needs to be sent on site to correct the problem. To put the additional RAM requirement into relation to the services - a system providing a RTLinux kernel and running SSHD, inetd, syslogd/klogd, cron, thttpd, and a few getty processes will run in a 2.4MB RAM-disc, and require a total of no more than 4MB RAM.


next up previous
Next: Resource optimization Up: RAMDISC Systems Previous: RAMDISC Systems
Der Herr Hofrat
2002-05-25