From 53c85705dc343aa00463a6a45c357be65d426b07 Mon Sep 17 00:00:00 2001 From: ParkMoonJ Date: Wed, 16 Jun 2021 16:18:28 +0800 Subject: [PATCH] Update 2021.6.16 --- 408/操作系统/README.md | 29 ++++++++++++++++-- 408/操作系统/操作系统学习规划.numbers | Bin 187177 -> 200827 bytes 408/计算机组成原理/README.md | 41 ++++++++++++++++++++++++++ 3 files changed, 68 insertions(+), 2 deletions(-) diff --git a/408/操作系统/README.md b/408/操作系统/README.md index 797adfe..3af2042 100644 --- a/408/操作系统/README.md +++ b/408/操作系统/README.md @@ -192,7 +192,7 @@ #### 学习建议 -- 由严格到宽松:预防(破坏死锁必要条件) ->避免(银行家算法) ->检测(死锁定理)并解除 +- 由严格到宽松:预防(破坏死锁必要条件) ->避免(银行家算法) ->检测(死锁定理)并解除 - 本节重点是银行家算法,需要掌握流程,学会做题 #### 考研修仙 @@ -234,4 +234,29 @@ - 道上仙:在页式和段式的基础上理解段页式存储,掌握地址划分,掌握逻辑地址和物理地址的转换 > 小题:6,11,12,16,17,29,43,44,48,49,51,53 -> 大题:2,3,4,5,6,7,8,9,10,11,12 \ No newline at end of file +> 大题:2,3,4,5,6,7,8,9,10,11,12 + +## Week 5 + +### 3.2 虚拟内存管理 + +#### 学习建议 + +- 抖动(也即颠簸)是指页面频繁换入换出 +- 只有 FIFO 会有 Belady 异常现象 + +#### 考研修仙 + +- 道上人:理解虚拟存储器的定义,理解局部性原理 + +> 小题:1,6,7,8,13,14,19,20,26 + +- 道上佬:理解请求分页机制(他与分页机制的区别是什么),掌握缺页中断的处理过程,理解缺页次数的影响因素,掌握页面置换算法的过程及策略 + +> 小题:2,3,4,5,9,10,11,12,17,21,22,23,25,27,28,29,31,32,33,37,38 +> 大题:1,4,7,8,11,12,14,15 + +- 道上仙:掌握不同页面置换算法的特点并会模拟置换页面过程,掌握虚实地址变换流程(最好能自己画图模拟),学会计算访问时间 + +> 小题:15,16,18,24,30,34,35 +> 大题:2,3,5,6,9,10,13 \ No newline at end of file diff --git a/408/操作系统/操作系统学习规划.numbers b/408/操作系统/操作系统学习规划.numbers index e642a64c2a332f04e6962701ef387599aaf78d98..f7950c166acd5967d871451f4e95a7bab8cde57b 100755 GIT binary patch delta 39545 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 I;u;b8AKYUqzyJUM diff --git a/408/计算机组成原理/README.md b/408/计算机组成原理/README.md index 198f94b..5fa49e8 100644 --- a/408/计算机组成原理/README.md +++ b/408/计算机组成原理/README.md @@ -193,3 +193,44 @@ > 小题:2,11,12,13,15 > 大题:2,4,5,6 + +## 3.5 双端口 RAM 和多模块存储器 + +### 学习建议 + +- 本节重在掌握多体并行(低位交叉编址),把它与流水线联系学习 + +### 考研修仙 + +- 道上人:了解双端口原理,理解交叉存储器的概念以及高地位交叉的区别 + +> 小题:1,2,3 + +- 道上佬:掌握多体并行(低位交叉编址)的简单计算 + +> 小题:4,5,6,7 +> 大题:1,2,3 + +# Week 4 + +## 3.6 高速缓冲存储器 + +### 学习建议 + +- 本节需重点复习,特别是图以及地址结构 + +#### 考研修仙 + +- 道上人:理解局部性原理,掌握 Cache 基本概念 + +> 小题:1,2,5,14 + +- 道上佬:掌握不同 Cache 映射方式的地址结构,掌握 Cache 不同替换算法以及写策略 + +> 小题:3,4,6,7,8,9,11,12,15,17 +> 大题:1,2 + +- 道上仙:掌握 Cache 地址划分, 掌握访存时间的简单计算 + +> 小题:10 +> 大题:3,4,5,6 \ No newline at end of file