2014-05-05 61 views
0

我碰到下面的文字相對地址

程序員開始在一些高層次編寫的源代碼凸輪語言,在這種情況下,C.Next,編譯器變換的foo.c和bar.c源代碼文件轉換爲機器語言,創建對象模塊foo.o和bar.o.在代碼中,程序員在bar.c中定義了foo.c中的變量X和變量Y;兩者都位於相對地址100的各自對象模塊中。對象模塊被放置在輔助存儲器中,直到用戶或另一個進程請求,此時模塊必須被鏈接。

什麼是在文中提到的這些相對地址?

回答

1

「經濟與真理」的版本:

那麼,你必須將它們連接,使可執行映像。鏈接器爲每個目標模塊提供一個基地址,以確保每個模塊中的偏移量100指向一個不同的虛擬地址。它還加載可執行文件的頭部分,指示OS加載器如何運行它,例如。代碼大小,數據,堆棧等部分,重定位數據和入口點。