2017-08-30 71 views

回答

0

對於具有正確實現的完整性的操作系統,除了一些高級功能(如加載附加模塊)之外,不應允許代碼操作其自己的內存空間,否則將無法調試正在更改自身的程序在運行時到別的地方。程序的數據空間;但是,可以按照程序的要求進行操作。操作系統實現可能最好的做法是清楚地分離代碼空間和數據空間,以避免意外操作代碼空間的問題。

+0

我知道這一點,這就是爲什麼我們有.text和.data分離。我想知道的是爲什麼他們使用不同的尋址模式? – JiangFeng

+0

我不知道更多細節。有幾種不同的存儲空間,硬件中有不同的尋址模式。不同的空間,模式的數量以及操作系統如何使用這些數據將由硬件和操作系統設計師任意決定。編程語言的實現必須跟隨這些設計者做出的決定。 –

相關問題