读书笔记----第一章:计算机系统漫游

《第一章:计算机系统漫游》

一.信息就是位+上下文

1.基本思想
     系统中所有的信息--包括磁盘文件、存储器中的程序、存储器中存放的用户数据以及网络上传送的数据,都是由一串位表示的。区分这些数据对象的唯一方法是读到这些数据对象的上下文。

2.几个基本名词
(1)位bit(b):表示一个二进制数,最小的可寻址单位
(2)字节byte(B):计算机中处理数据的基本单位,由8个二进制位组成
(3)字:总线传送的字节块
(4)字长: CPU一次处理数据的位数。  字中的字节数/整数或指针的标准值,决定了虚拟存储空间的大小

3.文本文件和二进制文件区别
     计算机的存储在物理上都是二进制的,因此文本文件和二进制文件的区别不在于物理上,而在于逻辑上,两者间仅在编码层次上有差异。简单的说, 文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等, 文本文件基本上是定长编码(也有非定长编码,比如UTF-8); 二进制文件是基于值编码的文件,可以看成是变长编码,多少个比特代表一个值,完全由你决定。

二.程序被其他程序翻译成不同的格式
1.gcc翻译过程
(1) 预处理阶段:预处理器根据以字符#开头的命令,修改原始的C程序,将文本文件hello.c修改成文本文件hello.i (.i文件)
(2) 编译阶段:编译器将文本文件hello.i翻译成文本文件hello.s (.s文件)
(3) 汇编阶段:汇编器将文本文件hello.s翻译成机器语言指令,将这些指令打包成可重定位目标程序的格式,hello.o (.o文件,可重定位)
(4) 链接阶段:链接器链接其他库,构成可执行目标文件,可以被加载到内存中,由系统执行。(a.out 可执行文件)

三.处理器读并解释存储在存储器中的指令
1.系统的硬件组成
(1)总线
     其携带信息字节并负责在各个部件间传递。总线一般被设计成传送定长的字节块,也就是字,字中的字节数即字长。
(2)I/O(输入输出)
     I/O设备通过适配器或者控制器与I/O总线相连,其中控制器:在设备本身或者主板上的芯片组,适配器:插在主板插槽上的卡
(3)主存
     主存由一组动态随机存储存取器DRAM芯片组成,从逻辑上说,存储器是一个线性的字节数组,每个字节都有其唯一的地址(即数组索引),这些地址是从零开始的。
(4)处理器
     包括控制器、运算器。

四.存储设备形成的层次结构
1.基本思想
     存储器层次结构的主要思想是一层上的存储器作为低一层存储器的高速缓存。
2.层次结构
     从高到低:寄存器、L1高速缓存(SRAM)、L2高速缓存(SRAM)、L3高速缓存(SRAM)、主存(DRAM)、本地二级存储(本地磁盘)、远程二级存储(分布式文件系统、Web服务器)

五.操作系统管理硬件
1.基本功能
     第一:防止硬件被失控的应用程序滥用;第二:向应用程序提供简单的一致的机制来控制低级硬件设备。操作系统通过进程、虚拟存储器以及文件等基本抽象概念来实现上述功能,其中进程是对处理器、主存、磁盘I/O设备的抽象;虚拟存储器是对主存和磁盘I/O设备的抽象;文件是对磁盘I/O设备的抽象。
2.进程
(1)进程是操作系统对一个正在运行的程序的一种抽象。操作系统通过" 上下文切换"实现单核多任务并发处理。进程"上下文"保存了进行运行所需要的所有信息。
(2)一个进程实际上由多个线程的执行单元组成,每个线程运行于进程的上下文中,并共享同样的代码和全局数据。
3.虚拟存储器
     虚拟存储器是对主存和磁盘I/O设备的抽象,使得每个进程都在独占的使用主存,其向进程提供一致的内存空间,称为 虚拟地址空间。虚拟地址空间包括如下几个区域(由低地址向高地址):
(1)程序代码和数据
(2)堆
(3)共享库
(4)栈
(5)内核虚拟存储器:内核是操作系统一部分,总是驻留在内存,不允许应用程序读写该区域内容或直接调用内核代码定义的函数。
4.文件
      文件本质就是字节序列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值