计算机系统基础:程序的执行和存储访问---学习心得
程序执行概述
介绍程序执行概述,首先介绍程序和指令的关系,然后介绍程序中一条指令的执行过程。我们在计算机系统基础(一)中主要是以IA-32架构来讲解程序的机器级表示的,所以,我们这里会介绍在IA-32中一条指令的执行过程,最后简单介绍一下CPU的基本功能和基本结构,包括数据通路和控制器的基本功能和结构。
主存储器组织
介绍存储器概述,首先介绍存储器相关的基本概念,然后介绍主存的基本结构及其性能指标。组成计算机中内存储器主要是半导体存储器,所以,接下来我们会介绍半导体存储器的组织方式,包括静态随机访问存储器和动态随机访问存储器组织。在此基础上,再介绍内存条和存储器总线的关系,最后讲解一下CPU和主存模块的连接以及CPU访问主存时的读写操作过程。
磁盘存储器
磁盘存储器,首先介绍磁盘存储器的结构,然后介绍磁盘驱动器及其操作过程。接下来介绍磁盘存储器的组成和磁盘存储器与主机的连接以及磁盘读写操作。
高速缓存概述
高速缓存(也就是Cache)的基本原理,首先介绍Cache在存储器层次结构中的位置,然后介绍Cache和主存的关系,以及实现Cache需要解决的问题。接下来介绍Cache和主存之间的三种映射方式,最后讲解一下Cache命中率及其与关联度之间的关系。
Cache替换算法和写策略
本周介绍高速缓存(也就是Cache)的替换算法和写策略,首先简单介绍一下Cache的三种替换算法,然后介绍Cache的写策略,也就是Cache的一致性问题。接下来介绍Cache实现中需要考虑的几个因素, 以及典型的Intel架构中的Cache实现,最后给出一个综合计算的例子,把关于Cache的一些主要知识点串联起来。
虚拟存储器
本周介绍虚拟存储器,首先简单介绍一下早期分页存储管理的基本概念,然后介绍虚拟存储管理和虚拟地址空间的概念;接下来介绍分页存储管理的实现,包括页表、地址转换和TLB等。在此基础上,介绍存储器层次结构及其访问过程,最后简单介绍一下段式和段页式存储管理的基本原理,以及存储保护的基本概念。
IA-32/Linux中的地址转换
本周介绍IA-32/Linux中的地址转换,首先 IA-32的地址转换和寻址方式,然后介绍IA-32中的段寄存器和段选择符、段描述符和段描述符表,以及Linux的全局段描述符表;在此基础上,介绍IA-32/Linux中如何将逻辑地址转换为线性地址,然后又如何将线性地址转换为物理地址的过程。最后以Intel Core i7/Linux存储系统为例,把存储器层次结构中的主要相关内容关联起来,对所学内容进行总结。