![](https://img.haomeiwen.com/i7939968/ddcfbc773e13f02c.png)
![](https://img.haomeiwen.com/i7939968/d64d7db6b197f301.png)
预处理阶段:将#后面的头文件插入到程序文本中,得到.i文件
编译阶段:将.i翻译成.s,包含汇编语言程序
汇编阶段:.s翻译成机器语言指令,打包生成.o文件
链接阶段:将printf.o等预编译好的文件和hello.o合并到一起,生成最终可执行文件。
![](https://img.haomeiwen.com/i7939968/a7598f48541048e4.png)
较大的存储设备比较小的存储设备要慢,磁盘存储器>主存(信息交换用)>寄存器
诞生高速缓存器,存放经常访问的数据,加快处理速度。
高速缓存存储器能够将程序的性能提升一个数量级
操作系统:应用程序和硬件之间沟通用的软件。两个作用:防止硬件被应用程序滥用,给应用程序提供渠道来控制复杂的硬件设备。
![](https://img.haomeiwen.com/i7939968/78cfa2a5b02726fd.png)
- 进程:给人的感觉是操作系统上只有一个程序在运行
两个进程之间的切换示例
![](https://img.haomeiwen.com/i7939968/0699da94325c88ec.png)
线程:多个线程组成进程。每个线程都运行在进程的上下文中,共享同样的代码和全局数据。多线程也能使程序更加快速的执行。
- 虚拟内存:把进程虚拟内存的内容存储到磁盘上,然后用主存作为磁盘高速缓存。
- 文件:文件就是字节序列,每个I/O设备都可看作文件。
网友评论