第一章-计算机系统

1.计算机执行

计算机使用8位二进制位组成的字节表示的唯一的整数来表示字符。
系统中所有的信息,都是由一串比特序列组成的。区分不同数据对象的唯一方法是读取数据对象的上下文 。
C语句-低级机器语言指令-可执行目标程序(以二进制磁盘文件存储,也称可执行目标文件)。
从程序文件翻译成目标文件。翻译过程分为四个阶段,预处理器,编译期,汇编器,链接器,构成了编译系统。

hello.o目标文件中调用了库函数printf,而库函数存于与已经编译好的另一个目标文件printf.o中,链接器用于将其合并。

2.系统的硬件组成

总线被设计成传送定长的字节块,称之为字。字中的字节数(即字长)是一个基本的系统参数,各个系统中不尽相同。字长是4个字节(32位),8个字节(64位)。
控制器与适配器:控制器集成在IO设备上或者主板芯片上,适配器作为外设,插在主板插槽上。

寄存器,程序计数器,大小为一个字。处理器核心。
寄存器文件:小的存储设备,由一些单个字长的寄存器组成。
加载:从主存复制一个字节或者一个字到寄存器,以覆盖寄存器原来的内容。内存->寄存器
存储:从寄存器复制一个字节或者一个字到内存的某个位置,以覆盖这个位置上原来的内容。寄存器->内存
操作:把连个寄存器的内容赋值到ALU,ALU对这连个字做算术运算,并将结果存放到一个寄存器中,以覆盖该寄存器中原来的内容。
跳转:从指令本身抽取一个字,并将这个字复制到程序计数器汇(P;C)中,以覆盖PC中原来的值。

利用直接存储器存取(DMA),数据不通过寄存器从磁盘直接到内存。

3.操作系统

进程是操作系统对一个正在运行的程序的一种抽象。
并发执行:一个进程的指令和另一个进程的指令是交错执行的。
处理器在进程间切换,实现一个CPU并发执行多个进程。
操作系统实现交错执行的机制称为上下文切换。

操作系统保持跟踪进程运行所需的所有状态信息。这种状态,就是上下文。(包括PC和寄存器文件的当前值及主存的内容)。
从一个进程到另一个进程的转换是由操作系统内行人管理的。内核是操作系统代码常驻主存的部分。
应用程序运行(用户态)-执行某些操作(文件读写)-进行系统调用-控制权转到操作系统(内核态)-内核执行请求操作-返回应用程序(用户态)

内核不是一个进程,是系统管理所有进程代码和数据结构的集合。

4.并发与并行

并发:指一个同时具有多个活动的系统。
并行:用并发来使一个系统运行的更快。
线程级并发


超线程:同时多线程,一个CPU执行多个控制流的技术。

指令级并行:处理器同时执行多条指令。
单指令、多数据并行

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×