程序运行库

一个程序不是从main开始的,而是从程序的入口函数开始的,这就涉及到运行库,比如glibc。

基本的过程:

1 操作系统创建进程,控制权交到程序的入口,也就是运行库的入口函数。

2 入口函数进行运行库的初始化,和运行环境的初始化,包括堆,io,线程,全局变量等

3 然后就是main函数,main之后返回到入口函数进行变量的销毁工作等等

glibc的入口函数就是—start

这个函数是汇编实现的平台无关

环境变量是存于系统里的数据,任何程序都可以访问,

你可能感兴趣的:(程序运行库)