OS_chapter_2
2.1 the logical struct of OS
仅重点or索引,具体见ppt
- os的设计和实现思路
- 整体式
- 层次式
- 微内核(client/server)
-
整体式:
module 为基本单位 , eg: the function of C
module多以全局变量形式完成 -
层次结构:
eg: TCP/IP
Func以调用order排列若干层;相邻层之间只有单向调用/依赖
分层原则 (ppt)
优势 -
微内核(
ppt
)
os=kernel+核外serveros
:small enough,仅提供最基本的核心和服务
核外服务器
:面向应用 -
举例 :
Minix OS – 微内核机构(4000 lines code)推荐阅读
Linux 单体内核
2.2 CPU的态
- CPU
- 内存
- 中断
- 时钟
CPU
- CPU态(Mode) [详见ppt]
- CPU的工作状态
- 对 资源 和 指令 使用权限的描述
- mode的分类
kernel mode
(核态)user mode
(用户态/目态)supervisor mode
(管态)
- mode之间的转换
user–>kernel
kernel–>user - 硬件和OS 对CPU的观察
- 硬件: 以 mode 区分CPU
- OS: 以 process 区分CPU
- 不同CPU对mode定义不同(ppt)
layer ring3 为应用层,不能directly访问data of device,请求OS访问(通过kernel32.dll)
memory
- 定义
- classify
- 按照semiconductor读写方式: ROM/RAM
- 按存储元材料
- 按与CPU的关系: 主/辅存
- principle of hierarchic memory system
- cpu读取instruction/data的访问顺序(access order)
中断
-
-
定义
- 基本思路: CPU收到外部信号( 中断信号)–>外部事件–>中断处( 断点)
-
-
the motivation of break
-
并发
实时
故障自动处理
-
并发
-
-
some important concept
-
中断源:引起中断的事件
中断类型:- 强迫break: 无预期 eg: I/O`外部break
- 自愿break: 有预期 eg:执行访管命令
- 外/内break
其中外中断 - 不可屏蔽外break - 可屏蔽外break
断点:
- 程序中断处将要执行的下一条指令的地址
CS:IP
现场:
break时程序状态- 程序正确运行所依赖的信息集合
- 相关寄存器
现场的两个处理过程:
- 现场保护:入栈
- 现场恢复:出栈
-
-
-
中断响应过程
-
-
-
-
中断响应实质
-
交换指令执行地址(主程序–>中断响应程序)
交换CPU mode(user–>kernel)
工作:- 现场的保护和回复
- 参数传递(通信)
-
交换指令执行地址(主程序–>中断响应程序)