计算机系统基础(二):程序的执行和存储访问
分享
课程详情
课程评价
spContent=在“计算机系统基础(一):程序的表示、转换与链接"课程中,你学习了可执行文件的生成。接下来,你是否很想知道可执行文件是如何运行、指令和数据是如何存放和被访问的呢?如果是的话,那么就请你参加“计算机系统基础(二):程序的执行和存储访问"课程的学习吧!
—— 课程团队
课程概述

本课程主要介绍可执行文件中的代码如何在CPU中执行,如何从存储器中取指令,以及如何从存储器中取数据或存结果。在本课程中,我们主要围绕以下问题进行讲解。

计算机中的CPU是如何执行程序的?

CPU中包含哪些基本的功能部件?

存放代码和数据的主存储器如何构成?

存放文件的磁盘存储器是怎么工作的?

CPU如何把一个虚拟地址转换为主存地址?

如何利用高速缓存技术加快访问存储器的速度?

 IA-32/Linux平台如何实现存储访问?

 

课程大纲

第一周 程序执行概述

第一周 程序执行概述引言

第1讲  程序和指令的关系

第2讲  一条指令的执行过程

第3讲  IA-32指令的大致执行过程

第4讲  CPU的基本功能与结构

课件PPT

第一周小测验

第二周 主存储器组织

第二周小测验

第二周 主存储器组织引言

第1讲  存储器基本概念

第2讲  主存的基本结构

第3讲  主存的性能指标

第4讲  半导体存储器组织

第5讲  内存条组织与总线宽度

第6讲 主存模块的连接与读写操作

课件PPT

第三周 磁盘存储器

第三周小测验

第三周磁盘存储器引言

第1讲 磁盘存储器的结构

第2讲  磁盘驱动器以及操作过程

第3讲  磁盘存储器的组成

第4讲  磁盘存储器的连接与操作

课件PPT

第四周 高速缓存概述

第四周小测验

第四周高速缓存概述引言

第1讲 存储器层次结构概述

第2讲 Cache基本概述

第3讲 Cache映射方式

第4讲 Cache命中率和缺失率

第5讲 Cache的关联度

课件PPT

第五周 Cache替换算法和写策略

第五周小测验

第五周 Cache替换算法和写策略引言

第1讲 Cache替换算法

第2讲  Cache写策略(一致性问题)

第3讲  Cache实现的几个因素

第4讲  Cache实现举例

第5讲  Cache综合计算举例

课件PPT

第六周 虚拟存储器

第六周小测验

第六周虚拟存储器引言

第1讲  分页存储管理的基本概念

第2讲  虚拟存储器及虚拟地址空间

第3讲  分页存储管理的实现

第4讲  存储器层次结构及其访问过程

第5讲  段式和段页式虚拟存储管理

第6讲 存储保护

课件PPT

第七周 IA-32/Linux中的地址转换

第七周小测验

第七周IA-32/Linux中的地址转换引言

第1讲  IA-32的地址转换和寻址方式

第2讲  段选择符和段寄存器

第3讲  段描述符和段描述符表

第4讲  逻辑地址向线性地址的转换

第5讲  线性地址向物理地址的转换

第6讲  Intel Core i7/Linux存储系统

课件PPT

预备知识

高级语言程序设计(最好有C语言程序设计的基础)

证书要求

1.最终成绩由小测验成绩和期末考试成绩两部分组成。

2.课程讲授共7周,每周对应一次小测验,每次小测验由10道单选题构成,每题1分,共70分。

3.期末考试占30分。

总成绩60分及以上合格,85分及以上优秀。

电子版的课程结业证书免费。纸质版认证证书收费:100元/人 。

 

 

 

参考资料

教材:袁春风. 计算机系统基础 [M]. 北京:机械工业出版社,2014 (第5-6章)

参考书目:Randal E. Bryant, David R. O'Hallaron. 深入理解计算机系统(原书第3版)[M]. 龚奕利,贺莲译  北京:机械工业出版社,2016

常见问题

1.学习“计算机系统基础”系列课程时,最重要的学习方法是什么?

首先,不要死记硬背,关键是要不断将所学内容关联起来,以真正理解所学内容。

其次,要多动手实践。不明白的地方就编写一个程序,通过打印结果或利用gdb等调试工具查看机器级代码来分析。

此外,多提问和多参与讨论。真理越辩越明,在与他人的讨论过程中,往往会忽然开朗,有时,一个问题自己冥思苦想几天都想不明白,但实际上课程讨论区早就有人讨论过了,或者在讨论区一提问,马上就有人帮你解决了。

 

2.“计算机系统基础”系列课程属于硬件课程还是软件课程?

该系列课程涉及到其他很多课程,包括硬件课程和软件课程。它与高级语言程序设计、组成原理、汇编、编译、链接和操作系统等课程的内容有关。虽然涉及到很多其他课程的内容,但是,我们在本系列课程中只会讲解这些课程内容之间的关联,而不会讲解这些课程的细节内容,例如,本课程不会讲解如何实现编译器和如何实现操作系统。

 

3.《计算机系统基础》系列一共包含几门慕课?

          包含以下三门慕课:

    (1)计算机系统基础(一):程序的表示、转换与链接。

    (2)计算机系统基础(二):程序的执行和存储访问。

    (3)计算机系统基础(三):异常、中断和输入/输出