[CS基礎 #4] OS入門:プロセス・スレッド・メモリ管理
OSの役割、プロセスとスレッド、スケジューリング、仮想メモリの基本を初心者向けに説明します。
[CS基礎 #4] OS入門:プロセス・スレッド・メモリ管理
OSとは?
OSは、ハードウェアとアプリケーションの間に立ち、CPU、メモリ、ストレージ、入出力を管理するソフトウェアです。
Windows、macOS、Linux、iOS、AndroidなどがOSです。
OSの主な役割
- プロセス管理
- メモリ管理
- ファイル管理
- デバイス管理
- ユーザーとアプリケーションの橋渡し
プロセスとスレッド
プロセスは、実行中のプログラムです。スレッドは、プロセスの中で動く実行単位です。
| 項目 | プロセス | スレッド |
|---|---|---|
| 独立性 | 高い | 同じプロセス内で共有 |
| メモリ | 基本的に別 | 一部を共有 |
| 作成コスト | 比較的重い | 比較的軽い |
スケジューリング
CPUは同時に無限の処理を実行できません。OSは、どのプロセスにCPUを使わせるかを切り替えながら、複数の処理が同時に動いているように見せます。
仮想メモリ
仮想メモリは、プログラムに独立した大きなメモリ空間があるように見せる仕組みです。これにより、安全性と効率が高まります。
学習のポイント
OSは普段意識しませんが、プログラム実行の土台です。プロセス、スレッド、メモリ管理を理解すると、パフォーマンス問題や並行処理の理解が進みます。
この投稿は投稿者によって CC BY 4.0 の下でライセンスされています。
