Linux面試相關 c程序的運行流程

在Linux中,運行一個程序時,首先由shell調用fork,然後在子進程中真正執行這個命令,首先是調用execve來加載可執行文件,然後將所需要的庫文件映射到進程的虛擬內存空間中,此時,進程執行上下文加載完成,開始執行代碼段。

Linux中程序是以可執行文件的形式存放在磁盤上,可執行文件既包括被執行函數的目標代碼,又包括被執行函數使用到的數據,它描述瞭如何初始化一個新的執行上下文。exec系列函數用來將可執行文件所描述的新上下文替代父進程的上下文。

參考資料:

1. 《Linux環境編程 從應用到內核》高峯。

2. 《深入理解Linux內核》

=============================================================================================

Linux應用程序、內核、驅動、後臺開發交流討論羣(745510310),感興趣的同學可以加羣討論、交流、資料查找等,前進的道路上,你不是一個人奧^_^。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章