深入理解计算机系统笔记:第一章 计算机系统漫游

本文详细介绍了编译系统的四个关键部分:预处理器、编译器、汇编器和链接器的工作流程,以及存储设备的层次结构。此外,还探讨了并发与并行的区别,操作系统如何提供文件、虚拟存储器和进程的抽象。

1.编译系统

编译系统:
预处理器—编译器—汇编器—链接器
1.预编译器(cpp):根据#改写程序,插入头文件或处理宏定义,得到.i
2.编译器(ccl):转汇编语言,将不同的高级语言(C/C++/Java等)转成可以确切描述低级机器语言指令的汇编语言,为不同编译器提供了通用的输出语言,得到.s
3.汇编器(as):转机器语言指令,生成一种可重定位目标程序的二进制文件,得到.o
4.链接器(ld):合并标准库的文件,比如printf存在的printf.o要合并到C程序文件中,得到可执行目标文件

2.分层次的存储设备

存储器的层次结构主要思想是一层上的存储器作为低一层存储器的高速缓存

 

3.并发,并行

并发:处理多个任务,不一定是同时,比如正在做饭,来了电话,先接电话,挂了电话再继续做饭。
并行:同时处理多个任务。比如正在做饭,来了电话,一边打电话一边做饭
计算机的并发:
1.线程级并发(12章)

  1. 概念:在一个进程中执行多个控制流
  2. 传统并发:并发执行只是模拟出来的,通过一台计算机在执行的进程间快速切换的方式实现。此为单处理器系统
  3. 现代的并发:

      多核处理器:将多个CPU也可称为多核集成到一个集成电路芯片上,每个核都有自己的高速缓存,它们共享更高层次的高速缓存以及主存的接口
      超线程:每个核的处理器都可以在单个时钟周期内切换线程,允许一个CPU执行多个控制流的技术,CPU的某些硬件如PC和寄存器有多个备份以适应多核多线程。
2.指令并行(第四章五章)
概念:现代处理器可以同时执行多条指令的属性 
通过流水线处理器可以同时处理多达100条指令
3.单指令、多数据并行
概念:许多现代处理器拥有特殊的硬件,允许一条指令产生多个可以并行执行的操作,也称SIMD并行,比如Intel和AMD处理器都具有并行的对4对单精度浮点数做加法的指令。

 

4.操作系统提供的抽象:

1.文件是对I/O设备的抽象
2.虚拟存储器是对主存和磁盘的抽象
3.进程是对处理器、主存和I/O设备的抽象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值