深入理解计算机系统第三版 第一章

文件存储方式
	二进制
	文本方式
汇编语言为不同高级语言的不同编译器缇欧拱了通用的输出语言
  • 了解编译系统的好处
优化程序性能
理解链接时出现的错误
避免安全漏洞
  • 程序运行过程
操作者将 hello 键入shell
shell程序读取键盘外设的键值进入寄存器,并放入主存
操作者键入回车
shell程序加载hello 
	(将hello目标文件中的代码和数据从磁盘复制到内存,数据包括"hello,world\n")
		可通过DMA
		可通过CPU
CPU开始执行hello程序中的main程序中的及其语言指令.
	指令将"hello,world\n"中的每个字节复制到寄存器,然后复制到显式设备(然后显示在屏幕上)
  • 程序运行过程 的 拷贝分析
// 做了 外设 和 寄存器间的拷贝2次
	键值->寄存器
	寄存器->显示设备
// 做了 硬盘 和 主存间的拷贝1次
	硬盘->主存
// 做了 主存 和 寄存器讲的拷贝1次 // 其实代码有多少就拷贝了多少次
	主存-> 寄存器

//  拷贝很多,导致等待(cpu等待)很多, 需要高速缓存的加持
	// 具体等待时间 可以参考 https://blog.csdn.net/l471094842/article/details/105599876/
	// cpu register < 1ns
	// L1 cache 1ns
	// L2 cache 3ns
	// L3 cache 12ns
	// main memory 65ns
	// flash
	// 外设
  • 网络 ssh 程序运行过程
操作者将 hello 回车 键入shell(客户端shell)
--- 客户端shell将hello发送给服务器机器中的服务器程序
--- 服务器程序将 hello 发送给 服务器机器中的 shell程序
shell(服务器)程序将hello进入寄存器,并放入主存
shell(服务器)程序加载hello(在服务器中) 
	(将hello目标文件中的代码和数据从磁盘复制到内存,数据包括"hello,world\n")
		可通过DMA
		可通过CPU
CPU(服务器)开始执行hello程序中的main程序中的及其语言指令.
---	指令将"hello,world\n"中的每个字节复制到寄存器,然后发送给客户端
--- 客户端shell 显示 "hello,world\n"
  • 并发和并行
并发 是一个通用的概念,指一个同事具有多个活动的系统
	
并行 指的是用并发来使一个系统运行的更更快.
并行 可以在计算机系统的多个抽象层次上运用.
	线程级并发
		CMP
		SMT
		实例: GPU
	指令级并行
		流水线 : 接近一个时钟周期一条指令
		超标量 : 达到比一个周期一条指令更快
		多发乱序???
		实例 : CPU
	单指令,多数据并行
		SIMD // 处理器拥有特殊的硬件,实现方式不同
		实例: DSP ARMv6的SIMD及ARMv7v8的NEON
			
	
x86计算机系统示意图
每组总线都包括
	地址总线
	数据总线
	控制总线

arm 有什么不一样吗?
其他架构的呢???

在这里插入图片描述

  • 操作系统与抽象
抽象
	不同编程语言提供不同形式和等级的抽象
	指令集架构提供了对实际处理器硬件的抽象
	文件是对IO的抽象
	虚拟存储器是对程序存储器的抽象
	进程是对一个正在运行的程序的抽象
	虚拟机提供对整个个计算机(包括操作系统,处理器和程序的)的抽象
  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值