すべての記事
category

OS・低レイヤ

7 件の記事

FIG-059 スタックとヒープ — 値を渡すか、地図を渡すか コードを1行ずつ実行し、値型のコピーは独立、参照型は同じ実体を共有することを体感する。 FIG-058 プロセスとスレッド — 共有メモリは速いが危ない 2スレッドに共有カウンターを増やさせ、ロック無/有で「失われた更新」が起きる/防げる様子を動かす。 FIG-052 コンパイラとインタプリタ — 先に全部訳すか、その場で訳すか 繰り返し回数スライダーを動かして、起動は速いインタプリタと、回すほど速いコンパイラの逆転を見比べる。 FIG-033 環境変数 — コードを変えずに接続先を切り替える 環境スイッチを切り替えると、同じコードのまま接続先のデータベースだけが変わるのを試す。 FIG-025 CPUキャッシュ階層 — 近いほど速いが、小さい データを要求してL1→L2→L3→RAMの探索を動かし、再アクセスが一瞬になる局所性を体感する。 FIG-021 ガベージコレクション — 辿れないものはゴミ 参照の線を切って、ルートから到達できないオブジェクトがマーク&スイープで回収される様子を動かす。 FIG-014 デッドロック — お互いの一足を待ち続ける2人 2つのスレッドにロックを取らせて膠着を再現し、発生4条件と防ぎ方を体感する。