If you have a computer that the RAM has possibly gone bad on, are there any operating systems that will function on the computer, at least to help you test and diagnose the hardware? Today’s SuperUser Q&A post taps into a lively discussion on the subject to satisfy a curious reader’s question.
Today’s Question & Answer session comes to us courtesy of SuperUser—a subdivision of Stack Exchange, a community-driven grouping of Q&A web sites.
Photo courtesy of Chris Isherwood (Flickr).
The Question
SuperUser reader VusP wants to know if there is an operating system that can function without RAM:
Is there an operating system that can function without RAM?
Note: I originally wanted to know about a RAM-less operating system to check and see if my laptop’s RAM had gone bad (it does not boot but presents a blank screen), but I like the way this question has snowballed.
The Answer
SuperUser contributor agtoever has the answer for us:
Interested in seeing more feedback on this particular topic? Then make sure to check out the lively discussion thread linked below!
A mandatory step in the BIOS POST process is to check if there is RAM. Optionally, it checks to see if your RAM is functioning correctly. So the answer to your question, “Does every operating system need RAM?” is: No, not on this (IBM PC compatible) hardware. Also, for the remainder of this answer, I will assume IBM PC compatible hardware.
Can an Operating System boot with faulty RAM?
If your RAM is faulty (and not entirely absent or broken), or if you can (partially) replace your RAM, you might be able to boot using the BadRAM or BadMEM kernel patches. It requires you to recompile the kernel (sounds easier than it is if you are doing it for the first time) and you can reboot, then tell the kernel where your bad memory is. A nice explanation of the use of Memtest86/Memtest86+ and BadRAM/BadMEM can be found here.
Can an Operating System boot without RAM and using the CPU’s cache as RAM?
As far as I know, there is no way to use your CPU’s cache as RAM without any RAM present on your system (as is suggested by @philipp and others) in the comments. If there is, it would be nice to add it here. The only paper I could find on the subject is this paper about Using a processor’s cache as RAM until the RAM is initialized. Not sure if (and how) it will work without RAM. As far as I know, there is no working code that boots an operating system on an IBM compatible PC. Any references to proof-of-concepts, working code, or anything else is welcome and I will add it to this answer.
Can I get to the BIOS?
The original poster’s question is a bit vague if the laptop is able to pass the BIOS POST. As @Tonny points out, no operating system will help you to get to the BIOS. You enter the BIOS using the F1, F2, F10, DEL, or ESC keys (depending on your brand of BIOS).
How to recover data from the laptop without RAM?
As for the goal behind your question, why do you need access to your laptop? Is there still data on the hard-drive that you want to recover? If that is the case, it is far easier to pull the hard-drive out (see manual) and attach it to an external storage device or directly to a desktop computer. Here is a nice guide to do just that.
Have something to add to the explanation? Sound off in the comments. Want to read more answers from other tech-savvy Stack Exchange users? Check out the full discussion thread here.