やったこと
- GOならわかるシステムプログラミングの読書会最終日を終えた。参加者の皆さんアザした。
- 関数プログラミングの宿題を進めた。人間は自然数を理解していますか?
- パイオニア17時の部、青赤デルバーで2-1
学び
- 人は30超えるともうやんがキツくなるらしい。
- やよい軒ハイボール90円はバグ
- リンカーの存在。
- Dockerはlinuxカーネルのコントロールグループと名前空間という機能を利用してカーネルを共有しつつ独立した環境を作っている。
- 完全な仮想化という概念と準仮想化という概念がある。
- 完全な仮想化はホストOSの上に仮想化ソフトウェアが稼働し、ゲストOSを稼働させる。センシティブなシステムコールはハイパーバイザがわりこんで処理をする。
- 準仮想化はホストOSの更に下のレイヤのハイパーバイザ上でゲストOSを稼働させる。ゲストOSのセンシティブなシステムコールは事前に書き換えられており、命令の代わりにハイパーバイザを呼び出す形になっている。
- 準仮想化は処理速度がはやいものの、ゲストOS側がハードウェアについて詳しくないといけなかったりゲストOSの開発元の協力が必要。
- WSL2はハイパーバイザ上に軽量VMを用いて完全なLinuxカーネルを動作させている。
- このlinuxカーネルはハイパーバイザの上にホストOSなしで直接のっているがセンシティブ命令を書き換えられているわけではない。
- センシティブなシステムコールはいったいどうやって処理してるんだ…???