深入理解计算机系统学习- 计算机系统漫游
1. 信息就是位 + 上下文
位又称为比特,1字节=8比特,ASC2码,用一个唯一的单字节大小的整数表示每个字符。因为表示信息表示信息的数据,最终被编译为用比特表示的位,所以信息就是位在特定上下文的表示。
2. 程序被编译器翻译
1.
GCC编译器编译c源文件4个阶段:
hello.c->预处理器->hello.i->编译器->hello.s->汇编器->hello.o->连接器->可执行目标程序2.
预处理阶段:预处理器读取头文件的内容,并插入程序文本中,得到以.i结尾的程序3.
编译阶段:编译器将hello.i程序翻译成汇编语言程序,以.s结尾4.
汇编阶段:汇编器将hello.s翻译成机器语言指令,打包成hello.o格式二进制程序文件5.
连接阶段:连接器合并库函数,库函数文件已经编译好,直接合并到我们的程序中,打包成可执行目标文件
3.系统硬件组成
1.
总线:携带信息在各个部件中传递。总线常被设计成传送定长的字节块,要么是4个字节(32位),要么是8个字节(64位)2.
I/O设备:系统与外界连接的通道3.
主存:临时储存设备,存放程序和要处理的数据。从物理上看,主存由一组动态随机存取存储器(DRAM)芯片组成;从逻辑上看,主存是一个线性字节数组。4.
处理器:执行储存在主存中的指令的引擎,执行程序的引擎。
4.操作系统管理硬件
1.
进程:操作系统对正在运行的程序的抽象。CPU并发执行多个进程是通过进程间切换实现的。2.
线程:一个进程由多个称为线程的执行单元组成,每个线程运行在进程的上下文中,共享同样的代码和数据。多线程是一种可以让程序运行更快的方法。3.
虚拟内存:对主存地址空间的抽象4.
文件:字节序列,对I/O设备的抽象
计算机操作系统通过对硬件的抽象,分配和管理硬件资源,提供统一的接口,使应用程序可以在计算机中运行。
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: