orange s學習 第十章 exec函式

2021-10-02 14:02:22 字數 505 閱讀 5117

exec的語義很簡單,它將當前的程序映像替換成另乙個。也就是說,我們可以從硬碟上讀取另乙個可執行的檔案,用它替換掉剛剛被fork出來的子程序,於是被替換的子程序搖身一邊,就成了徹頭徹尾的新鮮程序了。

execv( )所做的其實只是一件事,那就是向mm提供最終供呼叫exec的程序使用的堆疊。我們知道,main(  )函式接受兩個引數:argc和ar**,其中的ar**看上去像個細繩,實際上另一端拴著一頭牛呢。通過乙個ar**,我們可以得到使用者輸入的所有引數。

mm程序的do_exec()函式主要操作就是開啟檔案,把檔案讀入到記憶體中,並且安裝elf檔案格式移動檔案,準備好堆疊內容,並且設定好eip等於elf檔案入口位址,這樣程序排程程式排程到該程序時,就會從入口位址開始執行。

第十章 函式

使用def關鍵字 定義個數可變的位置形參 定義個數可變的關鍵字形參 定義預設值引數 定義個數可變的位置形參 deffun1 args 結果為乙個元組 print args fun1 10,20,30 10,20,30 定義個數可變的關鍵字形參 deffun2 args 結果為乙個字典 print a...

第十章 屬性

z屬性 本章也比較簡單稍作介紹 無參屬性就是我們常見的屬性 可以封裝屬性 以執行緒安全方式訪問 有參屬性就是c 中的所引器 匿名型別 如圖遇到如下 具體點就是 上面的注釋也已經講清楚了,定義的型別之後,構造例項,然後初始化屬性。現在詳細說下 編譯器接收到 上圖 先用var 定義乙個型別,但是不具體指...

第十章 屬性

目錄 10.1 無參屬性 10.2 有參屬性 10.3 呼叫屬性訪問器方法時的效能 10.4 屬性訪問器的可訪問性 10.5 泛型屬性訪問器方法 物件導向設計和程式設計的重要原則之一就是資料封裝,意味著型別的字段不應該公開,否則很容易因為不恰單使用欄位而破壞物件的狀態。可將屬性想象成智慧型字段,即背...