本文对“Hello”示例程序的执行全过程进行了分析和介绍,主要包括预处理、编译、汇编、链接、进程管理、存储管理和I/O管理等过程的操作和处理结果的分析,演绎了Hello从诞生到谢幕的完美生命历程。通过对此程序处理过程的状态和操作的描述以及各小节的分析,将有助于我们对计算机系统进行更加深入的理解。
关键词:编译;汇编;内存管理;进程管理;存储管理,I/O管理。
目 录
2.2在Ubuntu下预处理的命令............................................................................. - 6 -
5.3 可执行目标文件hello的格式...................................................................... - 17 -
6.2 简述壳Shell-bash的作用与处理流程........................................................ - 21 -
6.3 Hello的fork进程创建过程......................................................................... - 21 -
7.2 Intel逻辑地址到线性地址的变换-段式管理............................................... - 27 -
7.3 Hello的线性地址到物理地址的变换-页式管理.......................................... - 28 -
7.4 TLB与四级页表支持下的VA到PA的变换................................................ - 28 -
7.5 三级Cache支持下的物理内存访问............................................................. - 29 -
7.6 hello进程fork时的内存映射..................................................................... - 29 -
7.7 hello进程execve时的内存映射................................................................. - 31 -
7.8 缺页故障与缺页中断处理.............................................................................. - 31 -
8.2 简述Unix IO接口及其函数...................................................