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
18行のLinuxカーネルモジュールを 作ってみる
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Satoru Takeuchi
PRO
November 28, 2023
Technology
1
410
18行のLinuxカーネルモジュールを 作ってみる
以下動画のテキストです
https://youtu.be/U6cCXndBDVU
Satoru Takeuchi
PRO
November 28, 2023
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
書籍執筆での生成AIの活用
sat
PRO
1
300
ChatGPTに従って体調管理2026
sat
PRO
0
150
eBPF
sat
PRO
1
110
waruiBPF
sat
PRO
0
110
eBPFとwaruiBPF
sat
PRO
5
3.9k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
1
100
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
200
様々なファイルシステム
sat
PRO
0
340
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
430
Other Decks in Technology
See All in Technology
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
220
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
150
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
110
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
130
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
4
450
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
70
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
950
Git: the NoSQL Database
bkeepers
PRO
432
66k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
Six Lessons from altMBA
skipperchong
29
4.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
The SEO identity crisis: Don't let AI make you average
varn
0
330
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Transcript
18行のLinuxカーネルモジュールを 作ってみる Nov. 28th, 2023 Satoru Takeuchi X: satoru_takeuchi 1
今回話すこと • Linuxのカーネルモジュールを作ってカーネル開発の入口の入口に立つ • Ubuntu 22.04.3で実験 2
そもそもカーネルモジュールとは • Linuxカーネルの機能の一つ • システムの動作中にカーネルに機能を組み込む • 組み込まれた機能はlsmodコマンドでリストできる • カーネル本体を拡張するのは大変 •
単純なカーネルモジュールを作るくらいなら簡単 3
カーネル開発にはお作法がある • Kbuildという独自のビルドフレームワークに沿ったMakefileを書く ◦ 頑張ってKbuildを理解する必要はなくてコピペでいい ◦ Building External Modules ▪
https://github.com/torvalds/linux/blob/master/Documentation/kbuild/modules.rst • モジュールの作者、ライセンス、簡単な説明などを書く • カーネルモジュールのコードを書く ◦ 所定のシグネチャを持つ初期化関数と終了関数を書く ◦ あとは自由 ◦ C言語なのでちょっと大変かも ▪ 最近はRustで書ける(そのうち紹介するかもしれない ) 4
この動画で作るもの: helloモジュール 1. ロード時に”Hello world!\n”という文字列をカーネルログに出力 2. たった18行 5
まとめ • Linuxのカーネルモジュールは凄く簡単なものならすぐ作れる • ソース ◦ https://github.com/satoru-takeuchi/youtube-sample/0061-linux-kernel-module 6