================== CPU関連について ================== ringプロテクション ==================== システムのリソースを保護するための,階層構造特権レベルアーキテクチャのこと .. figure:: Priv_rings.svg :scale: 40% :align: left リングプロテクション(https://upload.wikimedia.org/wikipedia/commons/2/2f/Priv_rings.svg) 図のように(概念上は?)4つのレベルが存在するが, 使用するかはOSによるし,今日の一般的なOSは2つのレベルしか使用していない.Linux・Windowsもそう. また,そのプロセッサが幾つのレベルまで使えるかはおそらくハードウェア依存なんだと思う. ほとんどの場合はそれを使い切っていない. OSがソフトウェアレベルで用意する場合ももちろんあるようだ. Linuxではring0をカーネル空間,ring3をユーザ空間として使っているようだ. また,CPUのモードでスーパーバイザモードというものあって, これを使ってLinuxはカーネルとユーザを分けているといった記述もある. 2つは同じものなのか,違うものなのか,違うとしたら並列に存在するものなのか. はたまたringプロテクションはモードなのかどうか. これらの話は違うアーキテクチャの話なのか. いまいちよくわからないところである. cacheについて ================= instruction cache(i-cache) ------------------------------ キャッシュメモリの中で,プログラムを対象とするもの. d-cache(後述)と違ってデータの更新がないので構造が単純らしい. data cache(d-cache) ---------------------- キャッシュメモリの中で,プログラムを対象とするメモリ. データは更新されることがあり,メモリへの反映などがあるため構造が複雑らしい. memo ```````` **プログラマーが知っておくべき「PC内部の通信速度」** http://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html