lab4 spoc discuss
掌握知识点
- 内核线程的启动、运行、就绪、等待、退出
- 内核线程的管理与简单调度
- 内核线程的切换过程
请完成如下练习,完成代码填写,并形成spoc练习报告
1. 分析并描述创建分配进程的过程
注意 state、pid、cr3,context,trapframe的含义
练习2:分析并描述新创建的内核线程是如何分配资源的
###设计实现
注意 理解对kstack, trapframe, context等的初始化
当前进程中唯一,操作系统的整个生命周期不唯一,在get_pid中会循环使用pid,耗尽会等待
练习3:阅读代码,在现有基础上再增加一个内核线程,并通过增加cprintf函数到ucore代码中
能够把进程的生命周期和调度动态执行过程完整地展现出来
扩展练习4:增加可以睡眠的内核线程,睡眠的条件和唤醒的条件可自行设计,并给出测试用例,并在spoc练习报告中给出设计实现说明