답변:
그래 넌 할수있어. 존재하지 않는 연속적인 실제 메모리 위치에서 읽기를 수행하여 캐시에 태그를 설정합니다. 그런 다음 캐시 라인의 추가 채우기를 끄고 쓰기 저장을 입력하여 캐시에 대한 읽기 / 쓰기를 제한하면 일반 RAM처럼 작동합니다.
Some of the bios-replacement projects do this because then you can spend much more code on the chipset and chipset memory controller setup, so you can write it in C for example.
This practice is widely used for embedded-class CPUs as well for handling bootloaders. The methods to turn the cache into a RAM-like mode vary a bit.
For a brief low-level introduction you can check out this presentation.
Note that as others have pointed out you still need to load the boot-code from somewhere obviously.
When the CPU comes out of reset, cache is turned off. The BIOS is what initially configures and clears out the cache. So no, you can't run it RAM-less because there is no RAM to boot the thing up in the first place.
I don't know how accurate this is, but these are my thoughts:
I don't think there is any way you can get programmatic access to the cache. You cannot guarantee from one instruction to the next what would be in the cache, and where it would be located, so you cannot use it reliably as RAM even if you could access it directly.
You could run an x86 without RAM, but you wouldn't be able to get it to do very much useful. You'd be restricted to purely using the internal registers for data storage.