kern/process/ (新增进程管理相关文件)
- proc.[ch]:新增:实现进程、线程相关功能,包括:创建进程/线程,初始化进程/线程,处理进程/线程退出等功能
- entry.S:新增:内核线程入口函数kernel_thread_entry的实现
- switch.S:新增:上下文切换,利用堆栈保存、恢复进程上下文
kern/init/
-
- kmalloc.[ch]:新增:定义和实现了新的kmalloc/kfree函数。具体实现是基于slab分配的简化算法 (只要求会调用这两个函数即可)
- memlayout.h:增加slab物理内存分配相关的定义与宏 (可不用理会)。
- pmm.[ch]:修改:在pmm.c中添加了调用kmalloc_init函数,取消了老的kmalloc/kfree的实现;在pmm.h中取消了老的kmalloc/kfree的定义
- swap.c:修改:取消了用于check的Line 185的执行
kern/trap/
- trapentry.S:增加了汇编写的函数forkrets,用于do_fork调用的返回处理。
kern/schedule/
- sched.[ch]:新增:实现FIFO策略的进程调度
-
编译执行
编译并运行代码的命令如下: