我试图了解 C 如何将内存分配给全局变量。
我正在研究一个简单的内核。到目前为止,除了打印到屏幕和启用中断之外,它不能做更多的事情。我现在正在开发一个基本的物理内存管理器。
我的内存管理器是一个位图,如果内存已分配或可用,则设置为 1 或 0。我需要将我的内核正在使用的内存作为“已分配”添加到位图中,因此没有任何内容会覆盖它。
我可以很容易地找到内核的开始,因为它被静态加载到 0x100000。弄清楚长度也不应该太难。我不确定的部分是全局变量在内存中的位置?
假设我的内核是 12K,然后我可以将这些 3x 4K 内存块分配给它以进行保护。我需要分配更多来覆盖它使用的变量吗?或者变量是 12K 的一部分?
谢谢你的帮助,我希望我有足够的意义。