讀書筆記——深入理解計算機系統01
1、Cygwin環境安裝:該書中有示例程序需要編譯,我選擇gcc,所以在Windows上安裝了Cygwin。安裝非常簡單,一路Next后通過快捷方式——Cygwin Bash Shell 可進入Linux Shell。
2、gcc編譯:寫一個簡單的c程序,并(在Linux Shell中)調用gcc進行編譯,便后的文件可以在Shell運行。要脫離Shell在Windows中運行 則需要把cygwin1.dll復制到適當位置(一般是當前路徑或Windows的系統路徑,如system32等)。
3、再復習編譯的過程:編譯的過程經過預處理器、編譯器、匯編器、鏈接器四個階段完成。預處理器處理源代碼中的指令如 include等;編譯器將源代碼翻譯成匯編語言源代碼;匯編器將匯編源碼編譯二進制目標代碼,鏈接器處理對其它庫函數(如:printf)的引用,其它函數一般存在于其它的目標文件中(如printf.o),連接器負責將引用的函數導入,并生成最終的可執行文件;
4、如何判斷是否可執行文件:Windows中由特殊的文件后綴名標示可執行文件,但在其它OS中卻有不同在Unix/Linux中就沒有文件后綴,判斷的標準在乎文件的實際內容。