@kai_infra | IT Infrastructure Engineer retweeted
Linuxはメモリ不足になると、いきなりOOM Killerが動くわけではありません。
実際には、
・kswapdによるバックグラウンド回収
・Direct Reclaim
・(高次ページが必要なら)Memory Compaction
・OOM Killer または メモリ割り当て失敗
という順番で、段階的にメモリ確保を試みます。
詳しくは以下で説明してみました👇
eeengineer.com/linux-memory-…
#Linux #LinuxKernel #インフラエンジニア #SRE #サーバー #メモリ管理
@kai_infra | IT Infrastructure Engineer retweeted
Linuxの「Compaction」って何をしているか知っていますか?
実は、空きメモリが十分にあっても、大きなメモリを確保できないことがあります。
原因は、空きページがバラバラに散らばる「メモリの断片化」です。
Compactionは、移動可能なページをまとめて移動し、空きページを連続した領域へ集約する仕組みです。
これにより、
✅ Huge Pages
✅ DMAバッファ
✅ 高次(High-Order)のメモリ確保
など、連続した物理メモリが必要な割り当てに対応できるようになります。
Linuxのメモリ管理については、Watermark・Page Reclaim・Compaction・OOM Killerまで図解付きでブログにまとめています。
eeengineer.com/linux-memory-…
#Linux #LinuxKernel #メモリ管理 #インフラエンジニア #OSS
@kai_infra | IT Infrastructure Engineer retweeted
Linuxがkswapdでどのページを回収するか知っていますか?
kswapdは、空いているページを無差別に解放しているわけではありません。
ページの種類や状態を考慮しながら、
・Inactive Page Cache
・Anonymous Page
・Dirty Page(Writeback後)
などを回収対象として空きページを確保します。
一般的に、再取得しやすいページキャッシュは回収しやすく、一方でAnonymous PageはSwapへの退避が必要になるため、性能への影響が大きくなります。
詳しい仕組みは以下で説明しています。
eeengineer.com/linux-memory-…
#Linux #LinuxKernel #メモリ管理 #OSS #インフラエンジニア
@kai_infra | IT Infrastructure Engineer retweeted
ソフトリンクは、人が使うためのショートカット。
ハードリンクは、システムが容量を節約しながら同じデータを複数の名前で管理するための仕組み。
という感じですかね。ハードリンクを意識して使うことは、実務ではあまり多くないですが。
ハードリンクとソフトリンク、違いを説明できますか?
✅ ハードリンク
・同じinodeを共有
・元ファイルを削除しても利用可能
・別ファイルシステムやディレクトリには作成不可
✅ ソフトリンク
・元ファイルへのパスを保持
・別ファイルシステムやディレクトリにも作成可能
・元ファイルを削除するとリンク切れになる
#Linux #インフラエンジニア #Linux初心者 #OSS
@kai_infra | IT Infrastructure Engineer retweeted
ハードリンクとソフトリンク、違いを説明できますか?
✅ ハードリンク
・同じinodeを共有
・元ファイルを削除しても利用可能
・別ファイルシステムやディレクトリには作成不可
✅ ソフトリンク
・元ファイルへのパスを保持
・別ファイルシステムやディレクトリにも作成可能
・元ファイルを削除するとリンク切れになる
#Linux #インフラエンジニア #Linux初心者 #OSS
🤖 Made with AI
@kai_infra | IT Infrastructure Engineer retweeted
Linuxは、何を基準に「メモリ不足」と判断しているのか?
実は、単純に「空きメモリが○MB以下になったら」という仕組みではありません。
Linuxでは、Watermark と呼ばれる基準値を使ってメモリの状態を監視しています。
詳しくはブログで、Watermark・kswapd・Page Reclaim の仕組みを図解付きで解説しています。
eeengineer.com/linux-memory-…
#Linux #LinuxKernel #メモリ管理 #インフラエンジニア #OSS
@kai_infra | IT Infrastructure Engineer retweeted
「習慣は続けたいけど、なかなか続かない…」
そんな方向けに、習慣管理Webアプリを提供しています!
📌 毎日の習慣を記録
📈 達成率を自動で集計
📅 継続状況を可視化
登録・利用ともに無料です。
「こんな機能が欲しい!」など、ご意見もいただけると嬉しいです😊
2026/08/02 CSVインポート機能を追加しました!
🌐 habicheck.eeengineer.com/
#習慣化 #Webアプリ #プログラミング #個人開発
@kai_infra | IT Infrastructure Engineer retweeted
メモリが断片化してpage allocation failureのエラーが出ることがたまにあるので、要注意の監視項目になっています。
断片化の状況を自動監視しているシステムありますかね?うまいやり方があったら教えてください!
LinuxのBuddy Allocatorは、メモリを「2のべき乗サイズ(Order)」で管理しています。
✅ メモリ確保時:必要なサイズまで分割
✅ メモリ解放時:Buddy同士を結合
この仕組みによって、大きな連続メモリを再利用しやすくし、断片化(フラグメンテーション)を抑えています。
詳しくは以下にまとめてみました。👇
eeengineer.com/linux-kernel-…
#Linux #LinuxKernel #Kernel #インフラエンジニア #プログラミング #OSS
@kai_infra | IT Infrastructure Engineer retweeted
Do you know how to read packets in Wireshark?
Wireshark displays captured packets in three main panes:
🔹 Packet List
→ Overview of captured packets
🔹 Packet Details
→ Protocol headers and field information
🔹 Packet Bytes
→ Raw packet data in hexadecimal
Understanding the role of these three panes makes packet analysis much easier.
I summarized the basics with diagrams and practical examples in my blog👇
eeengineer.com/en/wireshark-…
#Wireshark #Linux #Networking #TCPIP #CyberSecurity #Infrastructure #PacketAnalysis
@kai_infra | IT Infrastructure Engineer retweeted
GoogleのSRE本が無料で全文公開されているのを知っていましたか?
など、運用・インフラ・SREの考え方が体系的に学べます。
英語ですが、ブラウザで無料で読めるので、英語学習も兼ねて少しずつ読み進めようと思います!
sre.google/sre-book/table-of…
#SRE #インフラエンジニア #DevOps #SiteReliabilityEngineering #技術書 #英語学習 #エンジニア
@kai_infra | IT Infrastructure Engineer retweeted
Linuxはメモリ不足になると、すぐにSwapするわけではありません。
実際には以下の流れとなります。
✅ Page Reclaimが実行される
✅ File-backed Page(ページキャッシュ)を優先的に解放
✅ 足りなければAnonymous PageをSwap Out
✅ 必要になったらページフォルト → Swap Inで復元
この流れを知っていると、**「なぜSwapが発生したのか」「なぜページフォルトが増えたのか」**を理解しやすくなります。
Page Cache・Page Reclaim・Swapの仕組みや、それぞれの役割については以下で詳しく解説しています。
eeengineer.com/linux-swap/
#Linux #LinuxKernel #メモリ管理 #インフラエンジニア #OSS
@kai_infra | IT Infrastructure Engineer retweeted
TLS1.3になって大きくTLS通信の仕組みが変わってますよね。
TLS1.2とTLS1.3の大きな違いの一つは、ハンドシェイク回数です。
🔹 TLS1.2:2 RTT(2往復)
🔹 TLS1.3:1 RTT(1往復)
TLS1.3ではメッセージが簡素化され、接続確立までの時間が短縮されています。
Wiresharkのキャプチャを交えながら、TLS1.3の仕組みを図解でまとめました👇
eeengineer.com/https-tls13-w…
#Linux #TLS #HTTPS #Wireshark #インフラエンジニア
@kai_infra | IT Infrastructure Engineer retweeted
Swapされるのは、すべてのページではありません。
Linuxはメモリ不足になると、元データがない「Anonymous Page」をSwap領域へ退避させ、物理メモリを確保します。
一方、File-backed Pageは元ファイルを再読み込みできるため、ページキャッシュを解放するだけで対応できます。
「どのページを解放するか」を使い分けることで、限られた物理メモリを効率よく活用しているのがLinuxの特徴です。
eeengineer.com/linux-swap/
#Linux #LinuxKernel #インフラエンジニア #OSS #メモリ管理
@kai_infra | IT Infrastructure Engineer retweeted
Dirty Pageって何?
ファイルへ書き込んでも、すぐにディスクへ保存されるわけではありません。
Linuxはまず変更内容をページキャッシュへ書き込み、そのページはDirty Pageになります。
その後、Writebackによってまとめてディスクへ書き戻すことで、ディスクI/Oを削減し、性能を向上させています。
詳しい仕組みやPage Cache・Writebackについてはブログで解説しています。
eeengineer.com/linux-page-ca…
みなさんは「Dirty Page」や「Writeback」を意識して障害調査をしたことはありますか?
#Linux #LinuxKernel #インフラエンジニア #OSS #メモリ管理
@kai_infra | IT Infrastructure Engineer retweeted
「Linuxはなぜファイルアクセスが速いのか?」
理由の一つがページキャッシュです。
✅ 初回はディスクから読み込み
✅ 読み込んだデータをメモリにキャッシュ
✅ 2回目以降はキャッシュから高速に提供
この仕組みを理解すると、free コマンドでメモリ使用率が高く見える理由も納得できます。
詳しくは以下でまとめました👇
eeengineer.com/linux-page-ca…
#Linux #インフラエンジニア #メモリ管理 #性能チューニング
@kai_infra | IT Infrastructure Engineer retweeted
障害報告書でたまに見る再発防止策。
❌「関係者へ周知します」
❌「確認を徹底します」
これだけだと、何をどう実施するのか分かりません。
・チェックリストの追加
・レビュー手順の見直し
・勉強会の実施
・ツールによる自動化
のように、具体的な行動まで落とし込むことが重要だと思うのですが、皆さんの現場では、再発防止策はどのように書いていますかね?
#インフラエンジニア #SRE #システム運用 #品質改善
@kai_infra | IT Infrastructure Engineer retweeted
LinuxのBuddy Allocatorは、メモリを「2のべき乗サイズ(Order)」で管理しています。
✅ メモリ確保時:必要なサイズまで分割
✅ メモリ解放時:Buddy同士を結合
この仕組みによって、大きな連続メモリを再利用しやすくし、断片化(フラグメンテーション)を抑えています。
詳しくは以下にまとめてみました。👇
eeengineer.com/linux-kernel-…
#Linux #LinuxKernel #Kernel #インフラエンジニア #プログラミング #OSS
@kai_infra | IT Infrastructure Engineer retweeted
Linuxのメモリ管理は、Buddy AllocatorとSlab Allocatorが役割分担しています。
🔹 Buddy Allocator:4KB単位のページを管理・提供
🔹 Slab Allocator:そのページを使って task_struct などの小さなオブジェクトを効率よく管理・再利用
この2つが連携することで、高速かつ効率的なメモリ管理を実現しています。
詳しくは以下にまとめてみました👇
eeengineer.com/linux-kernel-…
#Linux #LinuxKernel #BuddyAllocator #SLUB #インフラエンジニア
@kai_infra | IT Infrastructure Engineer retweeted
Slab Allocatorの大きな特徴は、一度確保したオブジェクトを再利用することです。
プロセス終了などで不要になったオブジェクトは破棄せず、Slab Cache内の空きスロットとして保持します。
次に同じ種類のオブジェクトが必要になったときは、その空きスロットをそのまま再利用するため、毎回Buddy Allocatorから新しいページを取得する必要がありません。
この仕組みにより、Linuxカーネルは小さなオブジェクトを高速かつ効率的に確保できます。
詳しくは以下で解説しています👇
eeengineer.com/linux-kernel-…
#Linux #LinuxKernel #SLUB #BuddyAllocator #インフラエンジニア


















