Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
絶対殺すSIGKILLシグナルと絶対死なないプロセス
Search
Satoru Takeuchi
PRO
February 08, 2025
Technology
3
290
絶対殺すSIGKILLシグナルと絶対死なないプロセス
以下動画のテキストです。
https://youtu.be/PVf59Tsfz-0
Satoru Takeuchi
PRO
February 08, 2025
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
ソースを読むプロセスの例
sat
PRO
15
9.1k
メモリマップトファイル
sat
PRO
1
110
「Linux」という言葉が指すもの
sat
PRO
4
210
APIとABIの違い
sat
PRO
5
180
ファイルシステムへのアクセス方法
sat
PRO
0
70
ファイルシステム
sat
PRO
1
67
低レイヤソフトウェア技術者が YouTuberとして食っていこうとした話
sat
PRO
7
6.2k
ポーリングと割り込み
sat
PRO
1
120
Rook: Intro and Deep Dive With Ceph
sat
PRO
1
150
Other Decks in Technology
See All in Technology
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2k
AI Agent Dojo #2 watsonx Orchestrateフローの作成
oniak3ibm
PRO
0
130
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
8
1.1k
【Kaigi on Rails 事後勉強会LT】MeはどうしてGirlsに? 私とRubyを繋いだRail(s)
joyfrommasara
0
270
"プロポーザルってなんか怖そう"という境界を超えてみた@TSUDOI by giftee Tech #1
shilo113
0
200
PHPからはじめるコンピュータアーキテクチャ / From Scripts to Silicon: A Journey Through the Layers of Computing Hiroshima 2025 Edition
tomzoh
0
140
Findy Team+ QAチーム これからのチャレンジ!
findy_eventslides
0
420
Liquid AI Hackathon Tokyo プレゼン資料
aratako
0
110
dbtとBigQuery MLで実現する リクルートの営業支援基盤のモデル開発と保守運用
recruitengineers
PRO
3
100
「使い方教えて」「事例教えて」じゃもう遅い! Microsoft 365 Copilot を触り倒そう!
taichinakamura
0
420
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
320
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Designing Experiences People Love
moore
142
24k
The Invisible Side of Design
smashingmag
302
51k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Automating Front-end Workflow
addyosmani
1371
200k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
Making Projects Easy
brettharned
120
6.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Transcript
絶対殺すSIGKILLシグナルと 絶対死なないプロセス Feb. 8th, 2025 Satoru Takeuchi X: satoru_takeuchi 1
SIGKILLシグナル • シグナルの一つ ◦ 📝 過去動画: 「その88 シグナル」 • 特徴
◦ デフォルト動作はプロセスの終了 ◦ マスクもできない ◦ シグナルハンドラを設定できない ◦ プロセスを絶対殺すという強い意志 • 詳細は”man 7 signal”を参照 2
プロセスのD state • Linuxにおけるプロセスの状態の一つ ◦ R: 実行可能 or 実行中 ◦
S: イベント待ち状態 ▪ シグナル受信によって待ちが解除される ▪ e.g. キーボード入力待ち ◦ D: イベント待ち状態 ▪ シグナルを受信しても他の状態になるまで処理しない ▪ e.g. I/O待ち • 詳細は”man 1 ps”を参照 3
D stateになったプロセスにSIGKILLを送ると…? 4 VS 絶対殺す SIGKILL 絶対死なない プロセス
D stateになったプロセスの勝ち 5 VS 絶対殺す SIGKILL 絶対死なない プロセス くにへかえるんだな。 おまえにもかぞくがいるだろう
…
D stateのプロセスにはSIGKILLを送っても死なない • カーネルレベルの話なのでユーザ空間からはどうにもならない • よくある例 ◦ ハードウェア障害でI/O処理が進まない ◦ なんらかのカーネルバグ
• 対処方法も色々 ◦ あきらめる ◦ 再起動する ◦ 📝 PFN の Kubernetes クラスタにおける Uninterruptible Sleep との付き合い方 ▪ https://tech.preferred.jp/ja/blog/uninterruptible-sleep-in-k8s/ 6
まとめ • SIGKILLよりもD stateのほうが強い 7