用語集
CS 基礎で頻出する用語を一行定義で整理します。広く引ける補助辞書として使ってください。
A
- ACID:Atomicity、Consistency、Isolation、Durability。トランザクションの 4 性質
- ADR (Architecture Decision Record):設計判断の理由と文脈を残す記録
- AI:機械による知的処理の総称
- Adapter:インターフェース変換のデザインパターン
- Aggregate:DDD で整合性境界を持つオブジェクト群
- AIO (Asynchronous I/O):処理を発行してすぐ戻り、完了を後で通知される I/O
- Anti-Corruption Layer (ACL):外部システムから内部モデルを守る層
- ABI (Application Binary Interface):コンパイル済みコードが OS や他ライブラリと接続するための規約
- API (Application Programming Interface):ソース レベルで関数・型を公開するインターフェース
- API Gateway:クライアントとバックエンド群の間の唯一の入口
- ASCII:7bit の古典的文字コード。英数字中心の 128 文字を扱う
- ASLR:アドレス空間配置ランダム化
- AST (Abstract Syntax Tree):構文解析結果を表す木構造
- attack surface:攻撃可能な入口や接点の総体
- authentication:主体の同一性を確かめること
- authorization:何を許可するか決めること
B
- BASE:Basically Available、Soft state、Eventual consistency
- BBR:Google 製 TCP 輻輳制御アルゴリズム
- BFF:Backend For Frontend
- Binder:Android の IPC
- バイナリ:2 進数表現、またはコンパイル済み実行ファイル
- BPF / eBPF:カーネル内で動く仮想マシン基盤
- Branch Prediction:分岐先を先読みする仕組み
- Bounded Context:DDD で独立したモデルを持つ境界
- バイトオーダー:マルチバイト値の並び順。ビッグエンディアンとリトルエンディアンがある
- BFS / DFS:幅優先探索 / 深さ優先探索
- BPS / bps:Bits Per Second、通信速度の単位
C
- cache line:キャッシュがまとめて扱うデータの最小単位
- CAP 定理:分散で C/A/P を同時に満たせない
- Capability:root 特権を分割した個別権限
- catastrophic cancellation:近い値の差による桁落ち
- CDN:地理的に分散した配信拠点からコンテンツを届ける仕組み
- cgroup:Linux のリソース制限グループ
- CFG (Context-Free Grammar):文脈自由文法
- CFS / EEVDF:Linux の通常スケジューラ
- CI/CD:継続的インテグレーション / 継続的デリバリ・デプロイ
- checksum:破損検出のための要約値
- Circuit Breaker:下流障害時に即座に失敗させるパターン
- code point:文字体系の中での文字の番号
- CoW (Copy-on-Write):読み取り時は共有し、書き込み時にコピーする方式
- consensus:複数ノードで採用順序や内容をそろえること
- CPU Affinity:プロセスやスレッドを特定 CPU に固定すること
- CPU (Central Processing Unit):命令を実行する中央処理装置
- CQRS:Command Query Responsibility Segregation
- CRDT:Conflict-free Replicated Data Type
- CUDA:NVIDIA GPU 向けの代表的な並列計算基盤
D
- Daemon:常駐サービスプロセス
- DFA:決定性有限オートマトン
- データ構造:データを効率的に扱うための整理方法
- デッドロック:相互待機で進まない状態
- Demand paging:アクセス時に初めてページを物理メモリへ読み込む方式
- DI (Dependency Injection):依存関係を外から注入する設計
- DMA:CPU を介さないメモリ直接アクセス
- DNS:ドメイン名を IP に解決
- DRAM:動的 RAM、主記憶
E
- encoding:コードポイントや構造を実際のバイト列へ写す方法
- endian / エンディアン:マルチバイト値のメモリ配置順序
- entanglement:量子のもつれ状態
- epoll:Linux の I/O 多重化 API
- Event Sourcing:状態ではなくイベントの履歴を保存する方式
- Eventual Consistency:結果整合性
- EXPLAIN:SQL の実行計画を表示
F
- false sharing:別データなのに同じキャッシュラインを共有して互いに干渉する現象
- FaaS:Function as a Service
- Feature Flag:コードデプロイと機能公開を分離する仕組み
- FIFO / LIFO:First-In-First-Out / Last-In-First-Out
- FlashAttention:attention 計算のメモリアクセスを最適化する手法
- FPGA:回路構成を後から書き換えられる半導体
- fork / exec:プロセス複製とプログラム置換
- forward secrecy:長期鍵が漏れても過去セッションを解読されにくい性質
- futex:Linux の同期基盤となる軽量プリミティブ
G
- GPGPU:GPU を描画以外の一般計算へ使う考え方
- グラフ:ノードと辺の集合
- GraphQL:クエリ言語ベースの API 仕様
- GRUB:Linux の代表的ブートローダ
H
- HAL:Hardware Abstraction Layer
- ハッシュテーブル:キーから値を 平均で引く
- HBM:高帯域メモリ。GPU や HPC 向けに使われる広帯域メモリ
- Hexagonal Architecture:Ports and Adapters と同義の構造
- HIP:AMD 系 GPU を含む環境向けの移植性ある GPU プログラミング層
- ヒープ:優先度付きキュー/ヒープ領域(メモリ)
- Hypervisor:仮想マシンモニタ
- HTTP:Web の通信プロトコル
I
- idempotency / 冪等性:同じ操作を何度実行しても論理結果が変わらない性質
- Immutable:不変
- Inode:UNIX 系ファイルシステムの管理構造体
- インデックス:検索を高速化する辞書的構造
- IP アドレス:ネットワーク上の住所
- IR (Intermediate Representation):コンパイラ内部で使う中間表現
- io_uring:Linux の新しい非同期 I/O API
- IOCP:Windows の非同期 I/O 完了ポート
- IPC:Inter-Process Communication
- IPI:Inter-Processor Interrupt
- ISA:CPU が外部へ見せる命令の約束
J
- JIT:実行時にコード生成や最適化を行う方式
- JSON:軽量なデータ交換形式
- JOIN:複数テーブルを結合する SQL 操作
K
- キャッシュ:高速小容量の記憶
- カーネル:OS の中核
- KV cache:LLM 推論で過去トークンのキー・バリューを保持するキャッシュ
- KVM:Linux カーネルベースの仮想化機構
L
- Lambda Architecture:Batch と Speed を組み合わせたデータ処理構成
- LLM:大規模言語モデル
- ligature:複数文字が 1 つの字形で表現される合字
- locality:最近使ったものや近いものを再び使いやすい性質
- ロック:共有資源への排他制御
- Loose Coupling:疎結合
- LLVM:代表的なコンパイラ基盤とその中間表現群
- LSM:Linux Security Module
M
- Mach:CMU 由来のマイクロカーネル
- MIR:Rust コンパイラで使われる中間表現
- Microservice:小さく独立したサービス
- mmap:ファイルをメモリ空間に写像
- MMU:Memory Management Unit
- Monolith:単一デプロイ単位の構成
- MVCC:多版並行制御。読み手と書き手が衝突しにくい仕組み
N
- Namespace:Linux などで資源を分離する仕組み
- NFA:非決定性有限オートマトン
- normalization:見た目や意味が近い表現を比較しやすくそろえる操作
- 名前空間 (Namespace):同名を区別する範囲
- NAT:ネットワークアドレス変換
- NP:多項式時間で検証できる問題クラス
- NoSQL:非リレーショナル DB の総称
- NPU:ニューラルネットワーク処理向けの専用演算器
- Null:値がないことを示す特別な値
O
- O 記法 (Big-O):計算量の増え方を表す漸近評価
- Observability:観測性。ログ・メトリクス・トレースなどで状態を把握できる性質
- OCI:Open Container Initiative
- Onion Architecture:内側にドメイン、外側にインフラを置く構造
- OOM:メモリ不足により割り当てに失敗した状態
- OS (Operating System):ハードウェア資源を管理し、プログラムへ共通サービスを提供する基盤ソフトウェア
- OSI 参照モデル:通信を 7 層に分けるモデル
- Out-of-Order (OoO) Execution:依存のない命令を順不同で前倒し実行する仕組み
- outbox / Transactional Outbox:DB 更新とイベント送信のずれを吸収する設計
P
- P:多項式時間で解ける問題クラス
- page fault:必要なページが即座に使えず処理介入が必要になること
- PDA:プッシュダウンオートマトン
- ページ:仮想メモリの管理単位。典型的には 4KB
- ページフォルト:未ロードページへのアクセス例外
- パイプ:プロセス間の一方向通信
- PCB / task_struct:プロセス制御ブロック
- PID:Process ID
- Pipeline:命令実行を段階に分けて重ねる仕組み
- ポート:トランスポート層の識別番号
- Polyglot Persistence:複数のデータストアを使い分ける設計
- POSIX:移植性ある OS インターフェース標準
- プロセス:実行中のプログラム
- Pub-Sub:Publish-Subscribe
Q
- qubit:量子ビット
- QUIC:UDP 上の近代的トランスポートプロトコル
R
- RAM:主記憶。電源を切ると内容が消える揮発性メモリ
- race condition:順序次第で結果が変わる不具合
- RDB:リレーショナルデータベース
- RCU:Read-Copy-Update、ロックフリー系の同期手法
- Reactive Systems:Responsive、Resilient、Elastic、Message Driven を重視する設計思想
- REST:Representational State Transfer
- ROB (Reorder Buffer):Out-of-Order 実行の結果を正しい順序に戻すバッファ
- ROCm:AMD GPU 向けの代表的なソフトウェアスタック
- RPC:リモートプロシージャコール
- RTOS:Real-Time OS
S
- SAT:充足可能性問題
- Saga:長時間分散トランザクションの実装パターン
- seccomp:システムコールを制限する Linux 機構
- secret management:鍵やトークンの保管、配布、更新を管理すること
- SELinux / AppArmor:強制アクセス制御の仕組み
- serialization:メモリ上の構造を保存や転送向けの形へ変えること
- Serverless:サーバ管理を抽象化した実行形態
- Service Mesh:サービス間通信を支える基盤レイヤ
- session:認証後の継続的な利用状態
- Side Car:補助的に同居するコンテナ
- SIMD:1 命令で複数データへ同じ演算を適用する仕組み
- SIMT:1 命令列を多数スレッドへ適用する GPU 的な実行モデル
- SLA / SLO / SLI:サービスレベルの目標や指標
- Slab allocator:同サイズオブジェクトを効率よく管理する仕組み
- SMT (Simultaneous MultiThreading):1 コア内で複数スレッドを並行実行する仕組み
- スケジューラ:CPU 割当を決める OS コンポーネント
- ソケット:ネットワーク通信の入口
- SOLID:オブジェクト指向の代表的設計原則
- SPA:Single Page Application
- SQL:宣言的クエリ言語
- SSD:半導体ストレージ
- SSA:各変数が一度だけ代入される形にした中間表現
- スレッド:プロセス内の実行単位
- SSR / CSR / SSG:描画や生成の方式
- Strangler Fig:レガシーを段階的に置き換える移行パターン
- subnormal:IEEE 754 の非正規数
- syscall:システムコール
- systemd:Linux の init / サービス管理基盤
T
- TensorRT:NVIDIA による推論最適化ライブラリ群
- threat model:システムに対する想定脅威
- TLS:暗号化通信プロトコル
- TCP:信頼性ある転送プロトコル
- TLB:仮想アドレス変換結果を高速化するキャッシュ
- TPU:テンソル演算に特化したアクセラレータ
- Transactional Outbox:DB 更新とメッセージ送信の原子性を確保する設計
- Transparent Huge Pages:4KB ページを大きなページへ自動昇格させる機構
- トランザクション:一貫した更新の単位
- Trie:プレフィックス木
- Triton Inference Server:推論モデルをサービングするための配信基盤
U
- udev:Linux のデバイスマネージャ
- UDP:軽量な転送プロトコル
- UEFI:統合拡張ファームウェアインターフェース
- Unicode:世界中の文字を統一的に扱う体系
- UTF-8:Unicode の可変長バイト符号化
V
- vLLM:LLM 推論向けの高効率サービングランタイム
- vDSO:カーネル情報を高速に参照するための仮想共有オブジェクト
- 仮想メモリ:各プロセスに独立した広いアドレス空間を見せる仕組み
- VFS:Virtual File System
- VM (Virtual Machine):仮想マシン
- VRAM:GPU が主に使うビデオメモリ
- virtio:準仮想化 I/O の標準インターフェース
W
- WAL:先行書き込みログ
- WASM:WebAssembly、OS 非依存のバイナリ形式
- warp:NVIDIA GPU で同時に実行されるスレッドの束
- wavefront:AMD GPU で同時に実行されるスレッドの束
- WSL:Windows Subsystem for Linux
X
- XNU:macOS / iOS のカーネル
- XOR:排他的論理和
Y
- Yak Shaving:本題に入る前の周辺作業が連鎖すること
Z
- Zero Trust:すべてを信頼しないセキュリティモデル
- Zombie:終了後に親が回収していないプロセス
- ZWJ:Zero Width Joiner。絵文字結合などで使う不可視文字
まとめ
この用語集は、章をまたいで現れる概念を短く引ける補助辞書です。本文で分からない語に出会ったとき、最小限の定義へすぐ戻れるように使ってください。