CPU関連について
ringプロテクション
システムのリソースを保護するための,階層構造特権レベルアーキテクチャのこと
図のように(概念上は?)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