7.2 main函数

7.2 main函数

C程序总是从main函数开始执行。main函数的原型是:

int main(int argc, char *argv[]) ;

其中,argc是命令行参数的数目,a rg v是指向参数的各个指针所构成的数组。7 . 4节将对命令行参数进行说明。

当内核起动C程序时(使用一个exec函数,8.9节将说明exec函数),在调用main前先调用一个特殊的起动例程。可执行程序文件将此起动例程指定为程序的起始地址——这是由连接编辑程序设置的,而连接编辑程序则由C编译程序(通常是cc)调用。起动例程从内核取得命令行参数和环境变量值,然后为调用main函数作好安排。

7.1 进程环境 引言

7.1 引言

下一章将介绍进程控制原语,在此之前需先了解进程的环境。本章中将学习:当执行程序时,其main函数是如何被调用的,命令行参数是如何传送给执行程序的;典型的存储器布局是什么样式;如何分配另外的存储空间;进程如何使用环境变量;进程终止的不同方式等。另外,还将说明l o n g j m p和s e t j m p函数以及它们与栈的交互作用。本章结束之前,还将查看进程的资源限制。