Linux與VxWorks主要區別(二):執行模式
阿新 • • 發佈:2019-02-15
Linux與VxWorks的主要區別
2、執行模式
Linux VxWorks
保護模式 真實模式
VxWorks上應用程式執行在“真實模式”下,無使用者模式和核心模式之分;
Linux則是採用“保護模式”,使用者程序、執行緒執行在使用者模式下,核心執行緒運行於核心模式。
真實模式、保護模式,從定址方式來說,CPU中的IP(EIP)中存放虛地址,把虛地址轉換到實體地址,各個模式有各自的轉換方式。
真實模式,是指定址採用和8086相同的16位段和偏移量,最大定址空間1MB,最大分段64KB。可以使用32位指令。32位的x86 CPU用做高速的8086。
保護模式:定址採用32位段和偏移量,最大定址空間4GB,最大分段4GB (Pentium Pre及以後為64GB)。在保護模式下CPU可以進入虛擬8086方式,這是在保護模式下的真實模式程式執行環境。
核心模式操作的一種高特權模式,其中的程式程式碼能直接訪問所有記憶體(包括所有的使用者模式程序和應用程式的地址空間)和硬體。也稱為“管理員模式”、“保護模式”或“Ring 0”。
核心模式又稱系統模式,在這種模式下,監控程式可以執行特權指令,而且受保護的記憶體區域也是可以訪問的。
如果再細緻地對此進行分類:它又可以被分為單核心模式和微核心模式兩種。
單核心模式程式碼結構緊湊、執行速度快,但是缺乏層次;微核心正好相反。
單核心模式的代表如Linux;微核心模式的代表如Windows。