写点什么

《操作系统实战 45 讲》笔记 3——进程

作者:袁世超
  • 2023-09-04
    北京
  • 本文字数:367 字

    阅读完需:约 1 分钟

24 | 活动的描述:到底什么是进程?

内核控制进程,重点是上下文切换。

内核线程

用户线程

X64TSS 涉及一个 CPU 约定硬件操作:当发生中断时,切换的栈地址就是该结构体中 rsp0 指向的地址。

一个疑问:

为什么用户栈也分配在内存视图的“内核区”?

25 | 多个活动要安排(上):多进程如何调度?

对于进程切换,彭老师用了“偷天换日”这个词,太形象了!

进程首次执行会调用 retnfrom_first_sched 函数,该函数不会返回到调用它的 __to_new_context 函数中,而是直接运行新建进程的相关代码。

原因:在第 24 讲有新进程初始的内核栈的内容,并没有 save_to_new_context 函数的调用路径,所以执行运行即可。

26 | 多个活动要安排(下):如何实现进程的等待与唤醒机制?

本讲的“等待”和“唤醒”机制在第 8 讲信号量 sem_t 中有使用。

思考题的答案应该是:不会,因为只有调了 krlschedul 函数才会切换进程。

发布于: 刚刚阅读数: 10
用户头像

袁世超

关注

还未添加个人签名 2017-11-30 加入

还未添加个人简介

评论

发布
暂无评论
《操作系统实战 45 讲》笔记 3——进程_操作系统_袁世超_InfoQ写作社区