在研究虚拟内存时,我对RAM有疑问。当我们在微控制器中编译程序时,程序代码在闪存中烧录,变量存储在RAM中,对吗?我们的台式机是否相同?我的意思是,虚拟内存的目标不是与物理内存(RAM)协调;虚拟地扩展物理内存就像让我们说如果进程需要位于RAM外部的下一个地址,它是否会改变页面(放开当前并从虚拟内存中获取页面)?话虽如此,RAM不仅包含变量,还包含正在运行的进程的程序存储器吗?
答案 0 :(得分:0)
当程序没有执行或从未被调用时,指令在闪存上,但没有为变量分配空间。但是闪存包含告诉操作系统有关为其分配的内存的指令。程序执行时程序的变量。
只有在程序执行时,操作系统才会将程序指令复制到RAM中,然后为变量分配内存。
因此,YES! .RAM包含所有程序指令和变量,但仅限于执行过程。
只有在传染性物理位置(如“变量数组”)中找不到进程所需的内存时,才会实现虚拟内存。
答案 1 :(得分:0)
RAM是可由CPU直接访问的唯一存储,因此根据定义,程序指令必须存储在那里。
否则,CPU将不知道该怎么做。