读书笔记(1)深入理解计算机系统
来源:互联网 发布:知乎dota2 编辑:程序博客网 时间:2024/05/21 22:54
一、计算机体系结构
1、冯·诺依曼体系结构(储存程序型电脑)
(1)采用存储程序方式,指令和数据不加区别混合存储在同一个存储器中。
不可编程的计算机器(计算器,学习机,非智能手机),不提供API,仅内含固定用途的程序,只能读数据
(2)存储器是按地址访问的线性编址的一维结构,每个单元的位数是固定的。
(3)指令由操作码和地址组成。操作码指明本指令的操作类型,地址码指明操作数和地址。操作数本身无数据类型的标志,它的数据类型由操作码确定。
(4)通过执行指令直接发出控制信号控制计算机的操作。指令在存储器中按其执行顺序存放,由指令计数器指明要执行的指令所在的单元地址。指令计数器只有一个,一般按顺序递增,但执行顺序可按运算结果或当时的外界条件而改变。
(5)以运算器为中心,I/O设备与存储器间的数据传送都要经过运算器。
(6)数据以二进制表示。
(2)顺序执行程序.
2、哈佛结构: 将程序资料与普通数据分开储存,两个硬盘,两个内存...
3、CPU(Central Processing Unit)
ALU(Arithmetic and Logic Unit):
算术逻辑单元(ALU)、
累加器
状态寄存器
通用寄存器组
CU(Control Unit):
IR(Instruction Register):存放指令
PC(Program Counter):存放下一条指令所在单元的地址
ID(Instruction Decoder)指令译码器
OC(Operation Controller)
寄存器,高速缓存,数据状态控制总线
二、操作系统
1、操作系统内核,提供三个抽象:
文件对I/O设备的抽象,虚拟存储器对主存和硬盘的抽象,进程对处理器主存I/O设备的抽象
文件:字节序列。文件是个抽象,使得程序统一对待各种I/O设备,包括网络
2、操作系统在CPU寄存器,主存,I/O设备间拷贝数据,形成了存储层次结构:
CPU寄存器,芯片的高速缓存SRAM-->芯片外的高速缓存SRAM-->主存DRAM-->本地硬盘/网络分布式文件系统。
拷贝次数越少,越好,netty,零拷贝
三、信息的表示与处理(信息=bit+上下文)
1、大多数用byte作为最小的可寻址存储器单位,比如最小的类型为byte类型。
2、virtual memory: 程序把存储器视为一个非常大的字节数组,每个字节都有一个唯一的数字来标识,成为地址(address)
所有可能地址的集合称为virtual address sapce
3、字长(word size): 指明整数和指针数据的标称大小(nominal size),虚拟地址以这样的字来编码
4、DMA直接存储
DMA:Direct Memory Access(存取)
使得外围设备可以通过DMA控制器直接访问内存,而不需要依于 CPU 的大量中断负载。
DMA控制器
DMA传输前,CPU要把总线控制权交给DMA控制器,结束后再交回给CPU。
DMA控制器与CPU分时使用内存的三种方式:
(1)停止CPU访内存: DMA传输时,CPU闲置,外围I/O存取慢,内存快,得不到充分利用
(2)周期挪用;
(3)DMA与CPU交替访内存。
根本原因:四者权衡:I/O设备读写周期,CPU工作周期,内存存取周期,DMA控制权转移。
进程:操作系统对运行程序的一种抽象,一个系统上,多个进程都好像独占硬件,称之为并发执行
context switching: 一个进程的指令和另一个进程的指令交替进行。
需要保存进程运行的所有状态信息:PC,寄存器,主存内容
虚拟存储器(虚拟存储空间)
为每个进程抽象出一个存储器,好像每个进程都独占存储器,
- 《深入理解计算机系统》读书笔记1---计算机系统漫游
- 《深入理解计算机系统》读书笔记1
- 读书笔记(1)深入理解计算机系统
- 《深入理解计算机系统》读书笔记
- 《深入理解计算机系统》读书笔记
- 《深入理解计算机系统》读书笔记
- 《深入理解计算机系统》读书笔记
- 深入理解计算机系统--读书笔记
- 《深入理解计算机系统》读书笔记
- 读书笔记----深入理解计算机系统
- 《深入理解计算机系统》读书笔记
- 深入理解计算机系统读书笔记
- 《深入理解计算机系统》读书笔记(1)
- 深入理解计算机系统-读书笔记(1)
- 读书笔记--《深入理解计算机系统》第一章 计算机系统漫游
- 《深入理解计算机系统》读书笔记一
- 《深入理解计算机系统》读书笔记二
- 《深入理解计算机系统》读书笔记三
- easyUi 扩展 验证 textbox
- SQL事务锁
- 百度地图 添加事件
- NOIP模拟 01祖玛【区间dp】
- mongodb 分组 得到第一条数据
- 读书笔记(1)深入理解计算机系统
- mongodb 导入导出 csv
- 简述 运行时异常RunTimeException和检查性异常Checked Exception
- Driect-nonDricect 读取文件速度
- centos yum 安装 高版本 mysql(5.5)
- [最小基环生成树] Codeforces875F .Royal Questions
- linux centos 安装 源码安装 mysql 5.6
- 实验--线程安全(1)ArrayList
- mongoVUE 用_id查找