C 什麼是實模式和保護模式

2021-10-07 22:49:51 字數 681 閱讀 9166

早期的作業系統的對程序的處理模式屬於實模式,即程式的執行需要記憶體,而實模式就是將程式直接載入到記憶體當中。

假如此時同時有個程序b也被載入到記憶體中,即

但如果這個程序b為惡意程式或者病毒。如果程序b使用指標加偏移的方式來隨意的跳轉,例如跳轉到程序a的記憶體空間,那麼此時程序b就可以隨意的修改程序a的指令和資料。這是一種極大的安全漏洞。

為了解決實模式存在的安全漏洞,人們在80386(80386以後的作業系統又被稱為x86體系)以後的作業系統使用保護模式。 即,執行程序a時,程序a不會直接的被載入到記憶體當中,而是先被載入到虛擬記憶體當中,再由虛擬記憶體來對映到真實的記憶體空間。因而,虛擬記憶體上的位址被稱為虛擬位址,真實的記憶體空間的位址被稱為實體地址。倘若為32位作業系統,那麼虛擬記憶體的空間和真實的記憶體空間一樣都是4gb。

假如此時程序b依然是惡意程序,當他採用指標加偏移的方式進行跳轉時,也無所謂,因為此時是在虛擬記憶體當中進行跳轉,他無論如何都跳不出這個4gb大小的虛擬記憶體空間,而並不是在真正的記憶體空間中進行跳轉,而最終虛擬記憶體對映到真實的記憶體空間依舊是它所佔的記憶體空間的大小,從而起到了程序保護的作用。

實模式和保護模式

實模式 即實位址訪問模式 它是intel公司80286及以後的x86 80386,80486和80586等 相容處理器 cpu 的一種操作模式。實模式被特殊定義為20位位址記憶體可訪問空間上,這就意味著它的容量是2的20次冪 1m 的可訪問記憶體空間 物理記憶體和bios rom 軟體可通過這些位址...

實模式和保護模式

無法支援多工 程式設計師多個程式可能指定執行的實體地址一樣 程式的安全性無法得到保證 使用者程式可以改寫系統空間或者其他使用者的程式內容 實模式將整個物理記憶體看成分段的區域,程式 和使用者程式沒有區別對待,而且每乙個指標都是指向 實在 的實體地址。這樣一來,使用者程式的乙個指標如果指向了系統程式區...

實模式和保護模式

從80386開始,cpu有三種工作模式 實模式 保護模式和虛擬8086模式。80286開始的cpu引入保護模式,實際上,實模式概念是在保護模式推出之後為了區別保護模式之前的8086cpu工作模式才有的,在8086時代cpu工作模式只有一種,自然沒有實模式之說。實模式有著先天的缺陷 下文詳述 但出於向...