(OS) OS調

実現方法

編集

メモリ保護を実現する方法はいくつかある。特定の実装における保護レベルは、最小権限の原則をどれだけ守っているかで判断できる[1]

セグメント方式

編集



x86

x86使[2]x86 CPU使x86x864CSSSDSES2FSGS[2]

ページング方式

編集

使使

x86

使

 (MMU) MMU



使OSOS使

W^X使

IA-32使使使使

保護キー

編集

4K (protection key) System/360使 System z OS使

PCWindowsLinuxUNIXCPU使CPUPCOS使x8603使

System/360ItaniumPA-RISC使

ItaniumPARISCTLB (Itanium) ID (PA-RISC) Itanium16[3]PA-RISC4[4]TLB

PA-RISC1518Itanium18 (protection domain) 

ケイパビリティベースドアドレッシング

編集

使使使KeyKOSSmalltalkJava

各種OSにおけるメモリ保護

編集

OS1987OS/2使OSWindows 9x[5]

OS

Windows NT

OS/2

OS-9 - 

UNIXUnix - SolarisLinuxBSDmacOSGNU Hurd

Plan 9 from Bell Labs  Inferno - UnixOS

Unix mprotect() [6]

脚注

編集


(一)^ Cook, D.J. Measuring memory protection, accepted for 3rd International Conference on Software Engineering, Atlanta, Georgia, May 1978.

(二)^ abIntel (2008-07) (PDF). Intel 64 and IA-32 Architectures Software Developer's Manuals: Volume 3A: System Programming Guide, Part 1. Intel. http://www.intel.com/design/processor/manuals/253668.pdf 2008821 

(三)^ Keys in Itanium Archived 20071128, at the Wayback Machine.

(四)^ Memory protection in HP PA-RISC

(五)^ Windows 9x does not have true memory protection. Everything2 (2000624). 2009429

(六)^ mprotect. The Open Group Base Specifications Issue 6. The Open Group. 2012108

外部リンク

編集
  • Intel Developer Manuals - インテルのCPUアーキテクチャにおけるメモリ保護が詳細に解説されている。