Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Linuxのメモリ管理入門
Search
Satoru Takeuchi
PRO
September 17, 2022
Technology
1
390
Linuxのメモリ管理入門
以下動画のテキストです。
https://youtu.be/ncHq6xgLkZs
Satoru Takeuchi
PRO
September 17, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
eBPF
sat
PRO
1
88
waruiBPF
sat
PRO
0
80
eBPFとwaruiBPF
sat
PRO
4
2.5k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
0
86
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
170
様々なファイルシステム
sat
PRO
0
310
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
400
ソースを読むプロセスの例
sat
PRO
22
17k
メモリマップトファイル
sat
PRO
1
160
Other Decks in Technology
See All in Technology
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
600
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.2k
学習データって増やせばいいんですか?
ftakahashi
2
280
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
6
650
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
1
240
直接メモリアクセス
koba789
0
290
re:Invent 2025 ふりかえり 生成AI版
takaakikakei
1
190
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
180
安いGPUレンタルサービスについて
aratako
2
2.7k
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
210
世界最速級 memcached 互換サーバー作った
yasukata
0
330
LLM-Readyなデータ基盤を高速に構築するためのアジャイルデータモデリングの実例
kashira
0
220
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Practical Orchestrator
shlominoach
190
11k
Why Our Code Smells
bkeepers
PRO
340
57k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Scaling GitHub
holman
464
140k
BBQ
matthewcrist
89
9.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Transcript
Linuxのメモリ管理入門 Sep. 17th, 2022 Satoru Takeuchi twitter: satoru_takeuchi
マシンの物理メモリはカーネル&全プロセス共有 マシンの全メモリ 空きメモリ プロセス0 のメモリ プロセス1 のメモリ カーネルのメモリ プロセスn のメモリ
… 物理メモリを管理して各プロセスにメモリを割り当てる
freeコマンドでうちわけがわかる total プロセスが使用中 free カーネルが使用中 解放可能 解放不可能 buff/cache (バッファキャッシュ& ページキャッシュ)
used = total - free - buff/cache available
大事なところだけ抜粋 total プロセスが使用中 free カーネルが使用中 解放可能 解放不可能 available
空きメモリが減ってくると… total プロセスが使用中 free カーネルが使用中 解放可能 解放不可能 available せまくてつらい
カーネルの解放可能メモリを解放 total プロセスが使用中 free カーネルが使用中 解放不可能 available つらくなくなった 解放可能
📝 メモリ使用量についてもっと細かく知りたければ • /proc/meminfoにメモリ使用量のさらに詳しいうちわけがわかる • カーネルの知識がないと理解が大変 • 興味があればman procfsの説明を見てね
まとめ 物理メモリはカーネルが管理し、カーネルとプロセスが共用 freeコマンドを使えば物理メモリ使用量のだいたいの内訳がわかる メモリが減ってきたら解放可能メモリを解放する freeフィールドに騙されずにavailableフィールドを見よう もっと知りたければ/proc/meminfoを見よう