我们将添加一个内核内存分配器到libc/mem.c
。
kmalloc()
函数可用于请求对齐的页面, 它还将返回真实的物理地址,以供以后使用。
改变kernel.c
将所有shell
代码留在那里,
试试新的kmalloc()
,并检查第一页从0x10000
开始(硬编码在mem.c
)和随后kmalloc()
产生一个新地址与前一个对齐4096
字节或0x1000
。
请注意,我们添加了一个新的strings.c:hex_to_ascii()
为了更好地打印十六进制数字。
另一个修改是重命名types.c
为type.c
。