1.1 信息就是位+上下文
原文
计算机系统中的所有信息——包括 _磁盘文件、内存中的程序、内存中存放的用户数据以及网络上上传的数据 都是由一串比特表示的。区分不同数据的方法是我们读到这些数据对象时的上下文。
简单来说
计算机里边的信息无论是什么内容,都是以二进制的方式表示的,单纯的一段二进制编码采用不同的解码方式会表示不同的意思,但是每段二进制二进制编码都会有对应的上下文来确定这段二进制编码的解码方式。
所以上下文和二进制编码缺一不可,即 信息=位+上下文
1.2 hello.c的编译
预处理阶段
命令#include<stdio.h>将对应的系统头文件stdio.h插入程序文本中得到另一个C程序hello.i
编译阶段
程序被翻译成包含函数main的定义的汇编程序
汇编阶段
程序进一步被翻译成 可重定位目标程序 ,是一个二进制文件
链接阶段
将调用的函数合并到程序中,得到一个 可执行文件 可以被加载到内存中,由系统执行。
1.4 程序的运行
就这一个图,能了解各部分到的功能就成
1.n 一些重要概念
后面的内容没有认真看了,总结下有这些重点
1.操作系统可以看成是应用程序和硬件之间插入的一层软件,用于(1)防止硬件被失控的应用程序滥用(2)向应用程序提供简单一致的机制来控制硬件
2.Amdahl定律:要想显著加速整个系统,必须提升全系统中相当大的部分的速度
3.文件是对I/O设备的抽象,虚拟内存是对程序存储器的抽象,进程是对正在运行的程序的抽象,虚拟机是对整个计算机的抽象。
总结
第一章的内容主要是给我们梳理了计算机系统的大致结构。从信息的表示到程序的翻译再到程序在计算机中的运行再到网络,中间牵扯了大量的概念,读完第一章之后就能对计算机系统有一个大致的了解,后续再通过其他章节深入了解计算机系统。