Skip to main content

每個操作系統都需要RAM嗎?

每個操作系統都需要RAM嗎?

Geoffrey Carr

如果你的計算機RAM可能已經壞了,那麼有沒有可以在計算機上運行的操作系統,至少可以幫助你測試和診斷硬件?今天的超級用戶問答帖子對這個主題進行了熱烈的討論,以滿足好奇的讀者的問題。

今天的問答環節由SuperUser提供,這是Stack Exchange的一個細分,Stack Exchange是一個社區驅動的問答網站分組。

照片由Chris Isherwood(Flickr)提供。

問題

超級用戶讀者VusP想知道是否有一個可以在沒有RAM的情況下運行的操作系統:

Is there an operating system that can be used without RAM, specifically, the kind I can create a bootable flash drive from and use it with my computer? This gets awkward, since booting is essentially loading the operating system in 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.

是否有可以在沒有RAM的情況下運行的操作系統?

答案

SuperUser貢獻者agtoever為我們提供了答案:

Does every Operating System need RAM?

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.

有興趣看到有關此特定主題的更多反饋?然後一定要查看下面鏈接的熱烈討論主題!


有什麼要補充說明嗎?在評論中發聲。想要從其他精通技術的Stack Exchange用戶那裡閱讀更多答案嗎?在這裡查看完整的討論主題。

Link
Plus
Send
Send
Pin