计算机启动
- 启动自检
- 初始化启动
- 启动加载
- 内核装载
- 登录
中断
- 硬件中断
- I/O设备
- CPU
- Timer:时间片结束后,发中断给CPU
- Scheduler:将CPU合理分配任务使用
- 异常中断
- 内存:使多任务共享内存资源
- 软件中断
- 内核态:操作系统运行的状态
- 用户态:用户程序运行的状态(必须通过操作系统访问硬件)
- 状态寄存器:位于CPU内,获取当前进程状态,通过int指令将用户态变为内核态
- 系统调用函数:操作系统中用于控制硬件的函数,运行在内核态。CPU运行到系统调用函数时执行int指令,产生软件中断唤醒操作系统,执行函数内容,结束后返回用户态
多运行环境管理
- 进程:操作系统为可执行程序提供的运行环境。包括代码段、数据段、栈、堆、BSS段、PCB等
- 三状态模型
- 运行态:进程在CPU上运行时
- 就绪态:可被CPU运行时
- 阻塞态:等待某事件发生时
- 进程调度:动态地把CPU分配给出于就绪序列中的进程。策略有先来先服务,短任务优先等
文件系统
- 文件类型:普通文件、目录文件、块设备文件、字符设备文件
- 树结构
- 绝对路径:从根到目标文件的完整路径
- 相对路径:从当前目录到目标文件的路径
参考:
操作系统公开课(清华大学)
http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240243X+sp/about
http://os.cs.tsinghua.edu.cn/oscourse/OS2019spring
Operating Systems: Three Easy Pieces
http://pages.cs.wisc.edu/~remzi/OSTEP/
Linux中断(interrupt)子系统之一:中断系统基本原理
https://blog.csdn.net/DroidPhone/article/details/7445825
Linux C编程一站式学习
http://docs.linuxtone.org/ebooks/C&CPP/c/
设计64位操作系统
https://zhuanlan.zhihu.com/p/86475224
Linux IO 模型
https://zhuanlan.zhihu.com/p/113467811
阻塞/非阻塞/同步/异步