@@ -27,6 +27,16 @@ backgroundColor: white
2727[ 课程幻灯片列表] ( https://www.yuque.com/xyong-9fuoz/qczol5/glemuu? )
2828
2929
30+ ---
31+
32+ ### 问题
33+
34+ - 什么是计算机系统的** 层次结构** ?
35+ - 层次结构中相邻层次间有什么** 区别** ?
36+ - 层次结构中相邻层次间的** 边界** 是什么?
37+
38+ 例如:软件与硬件、操作系统与应用程序
39+
3040---
3141** 提纲**
3242
@@ -110,7 +120,7 @@ u/rCore的框架结构
110120 - 好处:执行很快;
111121 - 好处:灵活-易于传递和返回复杂数据类型;
112122 - 好处:程序员熟悉的机制,...
113- - 坏处 :应用程序不可靠,可能有恶意,有崩溃的风险
123+ - ** 坏处 ** :应用程序不可靠,可能有恶意,有崩溃的风险
114124
115125
116126<!--
@@ -150,25 +160,26 @@ u/rCore的框架结构
150160
151161---
152162#### 隔离要解决的问题
153- - 防止程序 X 破坏或监视程序 Y
163+ - 防止程序 X ** 破坏或监视 ** 程序 Y
154164 - 读/写内存,使用 100%的 CPU,更改文件描述符
155- - 防止进程干扰操作系统
156- - 防止恶意程序、病毒、木马和 bug
165+ - 防止进程 ** 干扰 ** 操作系统
166+ - 防止恶意程序、病毒、木马和 ** bug**
157167 - 错误的过程可能会试图欺骗硬件或内核
158168
159169---
160170#### 什么是隔离?
161171- 隔离(Isolation) 的** 定义**
162- - 指操作系统通过软硬件机制确保不同的进程、用户或虚拟机相互独立运行 ,避免彼此之间在执行、数据或资源使用上的干扰或未经授权的访问 。
172+ - 指操作系统通过软硬件机制确保不同的进程、用户或虚拟机相互 ** 独立运行 ** ,避免彼此之间在执行、数据或资源使用上的 ** 干扰或未经授权的访问 ** 。
163173- 隔离的** 本质**
164174 - 不同实体间具备交换或共享信息、资源的情况下,如何确保彼此之间的安全和独立运行。
165175- 隔离并不意味着不要共享
166176
167177---
168178#### 隔离边界
179+
169180隔离需要建立边界(boundary)
170181- 边界决定了各自的势力范围
171- - 跨界即有 ** 风险 ** 的共享资源
182+ - 跨界即 ** 有风险的共享 ** 资源
172183- 强制隔离
173184 - 避免有问题的单元对整个系统的安全影响
174185- 隔离的单位
@@ -206,12 +217,12 @@ u/rCore的框架结构
206217
207218---
208219
209- #### OS隔离APP的分类
220+ #### OS隔离APP的方法分类
210221* 对** 数据** 的隔离:** 地址空间**
211222 * 用户地址空间 vs 内核地址空间
212223* 对** 控制** 的隔离:** 特权级机制**
213224 * 用户态 vs 内核态
214- * 对** 时间** 的隔离:** 中断处理 **
225+ * 对** 时间** 的隔离:** 时钟中断处理 **
215226 * 随时打断正在执行的用户态App
216227* 对破坏隔离的处理:** 异常处理**
217228 * OS在内核态及时处理用户态App的异常行为
@@ -224,7 +235,7 @@ u/rCore的框架结构
224235- 地址空间 address spaces
225236 - 一个程序仅寻址其自己的内存
226237 - 若无许可,则** 每个程序无法访问不属于自己的内存**
227- - 虚拟内存
238+ - 虚拟内存需要解决的问题
228239 - 读写内存的安全性问题
229240 - 进程间的安全问题
230241 - 内存空间利用率的问题
@@ -256,35 +267,36 @@ u/rCore的框架结构
256267
257268---
258269#### 控制隔离:特权模式
259- 特权模式是 CPU 提供的一种机制,它将 CPU 的执行权限划分为不同的级别 ,防止低权限代码访问或修改高权限的系统资源。
270+ 特权模式是 CPU 提供的一种机制,它将 CPU 的 ** 执行权限 ** 划分为不同的级别 ,防止低权限代码访问或修改高权限的系统资源。
260271- CPU 硬件中的特权模式
261- - 保护操作系统内核,防止应用直接访问关键数据或执行特权指令
262- - 防止应用恶意或错误访问硬件状态 :控制寄存器、内存管理单元
263- - 提供受控的系统调用接口:应用可受限制地请求操作系统服务
272+ - ** 保护操作系统内核** ,防止应用直接访问关键数据或执行特权指令
273+ - 防止应用恶意或错误访问 ** 硬件状态 ** :控制寄存器、内存管理单元
274+ - 提供受控的系统调用接口:应用 ** 可受限制地请求操作 ** 系统服务
264275
265276
266277---
267278#### 特权模式
268279
269280- CPU 硬件支持不同的特权模式
270281 - Kernel Mode(内核态) vs User Mode(用户态)
271- - 内核态可以执行用户态无法执行的特权操作
282+ - 内核态可以执行用户态无法执行的 ** 特权操作 **
272283 - 访问** 外设**
273284 - ** 配置** 地址空间(虚拟内存)
274285 - 读/写特殊** 系统级寄存器**
275286- OS内核运行在内核态
276287- 应用程序运行在用户态
277- - 每个微处理器都有类似的用户/内核模式标志
288+ - 每个微处理器都有类似的用户/内核 ** 模式标志 **
278289
279290---
280- #### 时间隔离:中断 --v.s.-- 控制隔离:异常机制、陷入机制
291+ #### 时间隔离:时钟中断 --v.s.-- 控制隔离:异常和陷入
281292- CPU ** 硬件支持** 中断/异常的处理
282- - 异常(Exception): CPU 执行指令时检测到错误 (如除零错误、缺页异常),立即触发异常处理例程。
293+ - 异常(Exception): CPU 执行指令时检测到 ** 错误 ** (如除零错误、缺页异常),立即触发异常处理例程。
283294 - 中断(Interrupt): 是一种用于处理外部或内部事件的机制。当中断发生时,CPU 暂停当前执行的指令流,转而执行相应的中断处理例程。
284- - 陷入(Trap): 也称系统调用(Syscall),进程主动请求操作系统服务,需要从用户模式切换到内核模式。
295+ - 时钟中断:定时器超时产生的中断,可控制** CPU时间片**
296+ - 陷入(Trap): 也称系统调用(Syscall),进程主动** 请求操作系统服务** ,需要从用户模式切换到内核模式。
285297
286298---
287- #### 时间隔离:中断 --v.s.-- 控制隔离:异常机制、陷入机制
299+ #### 时间隔离:时钟中断 --v.s.-- 控制隔离:异常和陷入
288300- 中断是** 异步** 发生,由外部设备或异步事件触发,而非程序主动调用,这使得它们与当前指令流无直接关系。。
289301- 陷入是** 同步** 触发的,因为它是程序主动发起的。
290302- 异常是** 同步** 发生,是由由程序指令直接触发的错误或异常情况。
@@ -356,6 +368,9 @@ u/rCore的框架结构
356368---
357369### 小结
358370
359- - 了解计算机硬件与操作系统的关系:接口/边界
360- - 了解操作系统与应用程序的关系:接口/边界
361- - 了解操作系统如何隔离与限制应用程序
371+ - 计算机硬件与操作系统的关系:接口/边界
372+ - 指令集
373+ - 操作系统与应用程序的关系:接口/边界
374+ - 系统调用
375+ - 操作系统如何隔离与限制应用程序
376+ - 时间、空间、权限、
0 commit comments