第十三讲 实验四 内核线程管理

课件

章节

标题

本地视频文件(MD5)

Github视频字幕

学堂在线视频

幻灯片文件

视频练习

课堂思考题

13.1

总体介绍

3ab191643c7caf79b2bb5b7ac5691f49

lecture-13-1.srt

学堂在线视频

幻灯片文件

[[|视频练习]]

[[|课堂思考题]]

13.2

关键数据结构

413f2727ab4166d0c136f881dba6aeaf

lecture-13-2.srt

学堂在线视频

[[|幻灯片文件]]

[[|视频练习]]

[[|课堂思考题]]

13.3

执行流程

a450c91ba787e05276ae88d3cc35a807

lecture-13-3.srt

学堂在线视频

[[|幻灯片文件]]

[[|视频练习]]

[[|课堂思考题]]

13.4

实际操作

3d2de80359cf9e906094f56270fa5986

lecture-13-4.srt

学堂在线视频

[[|幻灯片文件]]

[[|视频练习]]

[[|课堂思考题]]

参考资料

课堂练习

课堂实践

在ucore实验八的参考实现代码中按如下的要求进行代码分析。

  1. 分析proc_struct数据结构,说明每个字段的用途,是线程控制块或进程控制块的,会在哪些函数中修改。
  2. 分析trapframe数据结构,说明每个字段的用途,是由硬件或软件保存的,在内核态中断响应时是否会保存。
  3. 分析线程切换流程,找到内核堆栈、页表、寄存器切换的代码位置。
  4. 分析内核线程idleproc的创建流程,说明线程切换后执行的第一条是什么。
  5. 分析内核线程initproc的创建流程,说明线程切换后执行的第一条是什么。

OS2018spring/lecture13 (last edited 2018-04-23 10:46:55 by xyong)

MoinMoin Appliance - Powered by TurnKey Linux