hello程序的運行過程-從計算機系統角度
1、gcc編譯器驅動程序讀取源程序文件hello.c,并將它翻譯成一個可執行目標文件hello。翻譯過程分為四個階段:預處理階段,編譯階段,匯編階段,鏈接階段。
2、初始時,shell程序執行它的指令,等待我們輸入一個命令。當我們在鍵盤上輸入字符串“./hello”后,shell程序將字符讀入CPU的寄存器中,再把它存放到主存中。
3、當我們敲回車鍵時,結束命令的輸入,然后shell程序執行一系列指令來加載可執行的hello文件,這些指令將hello目標文件中的代碼和數據從磁盤復制到主存。(數據通過DMA直接存儲器存取計算,直接從磁盤到達內存)。
?
?4、一旦目標文件hello中的代碼和數據都加載到主存中,處理器就開始執行main程序中的機器語言指令,將輸出結果從主存復制到寄存器中,然后再從寄存器中復制到顯示設備,最終顯示到屏幕上。
?