Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
University of Tsukuba Linux User Group
ODP, PPTX
2,644 views
カーネルモジュールプログラミング超入門 #1(仮)
筑波大学 Linux User Group (つくらぐ) http://www.tsukuba-linux.org/
Education
◦
Read more
6
Save
Share
Embed
Embed presentation
Download
Download as ODP, PPTX
1
/ 24
2
/ 24
3
/ 24
4
/ 24
5
/ 24
6
/ 24
7
/ 24
8
/ 24
9
/ 24
10
/ 24
11
/ 24
12
/ 24
13
/ 24
14
/ 24
15
/ 24
16
/ 24
17
/ 24
18
/ 24
19
/ 24
20
/ 24
21
/ 24
22
/ 24
23
/ 24
24
/ 24
More Related Content
PPTX
Node-RED
by
DavidGhedalia
PDF
Keystone fernet token
by
Yuki Nishiwaki
PDF
cloudpackサーバ仕様書(サンプル)
by
iret, Inc.
PDF
IoTデバイスセキュリティ
by
Kentaro Mitsuyasu
PDF
Yahoo!検索におけるNext.jsの利用事例 #ヤフー名古屋
by
Yahoo!デベロッパーネットワーク
PDF
OAuth 2.0のResource Serverの作り方
by
Hitachi, Ltd. OSS Solution Center.
PDF
事例から探る、Redmineの機能とよりよい運用
by
Go Maeda
PDF
Secure element for IoT device
by
Kentaro Mitsuyasu
Node-RED
by
DavidGhedalia
Keystone fernet token
by
Yuki Nishiwaki
cloudpackサーバ仕様書(サンプル)
by
iret, Inc.
IoTデバイスセキュリティ
by
Kentaro Mitsuyasu
Yahoo!検索におけるNext.jsの利用事例 #ヤフー名古屋
by
Yahoo!デベロッパーネットワーク
OAuth 2.0のResource Serverの作り方
by
Hitachi, Ltd. OSS Solution Center.
事例から探る、Redmineの機能とよりよい運用
by
Go Maeda
Secure element for IoT device
by
Kentaro Mitsuyasu
What's hot
PPTX
さくらのVPSに来る悪い人を観察する その2
by
ozuma5119
PDF
10GbE時代のネットワークI/O高速化
by
Takuya ASADA
PPTX
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
by
シスコシステムズ合同会社
PPTX
Mécanismes de sécurité(ios & android)
by
Institut supérieur des études technologiques de Radès
PPTX
Metasploitでペネトレーションテスト
by
super_a1ice
PDF
projet sur le vpn presentation
by
Manuel Cédric EBODE MBALLA
PDF
運用業務でのRedmine
by
Tomohisa Kusukawa
PDF
プロトコル/NAT/HTTP通信の中身 〜 ネットワーク勉強会資料
by
Ken SASAKI
PDF
セキュアエレメントとIotデバイスセキュリティ2
by
Kentaro Mitsuyasu
PDF
CVE-2015-8562の脆弱性について
by
Yu Iwama
PPTX
超効率的フロントエンドデバッグ術
by
Shinji Hashimoto
PPTX
YoctoをつかったDistroの作り方とハマり方
by
wata2ki
PDF
チケットの棚卸し ウチではこうしてます
by
靖宏 田中
PDF
Share point における id管理と認証・認可
by
Naohiro Fujie
PDF
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
by
Amazon Web Services Japan
PPTX
高負荷に耐えうるWebApplication Serverの作り方
by
GMO-Z.com Vietnam Lab Center
PDF
NIDD (Non-IP Data Delivery) のご紹介
by
Device WebAPI Consortium
PDF
10分でわかる Cilium と XDP / BPF
by
Shuji Yamada
PDF
FridaによるAndroidアプリの動的解析とフッキングの基礎
by
ken_kitahara
PDF
Docker ComposeでMastodonが必要なものを梱包する話
by
Masahito Zembutsu
さくらのVPSに来る悪い人を観察する その2
by
ozuma5119
10GbE時代のネットワークI/O高速化
by
Takuya ASADA
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(応用編)
by
シスコシステムズ合同会社
Mécanismes de sécurité(ios & android)
by
Institut supérieur des études technologiques de Radès
Metasploitでペネトレーションテスト
by
super_a1ice
projet sur le vpn presentation
by
Manuel Cédric EBODE MBALLA
運用業務でのRedmine
by
Tomohisa Kusukawa
プロトコル/NAT/HTTP通信の中身 〜 ネットワーク勉強会資料
by
Ken SASAKI
セキュアエレメントとIotデバイスセキュリティ2
by
Kentaro Mitsuyasu
CVE-2015-8562の脆弱性について
by
Yu Iwama
超効率的フロントエンドデバッグ術
by
Shinji Hashimoto
YoctoをつかったDistroの作り方とハマり方
by
wata2ki
チケットの棚卸し ウチではこうしてます
by
靖宏 田中
Share point における id管理と認証・認可
by
Naohiro Fujie
Amazon FreeRTOSを用いた量産向けIoTマイコンデバイス開発プロトタイピング
by
Amazon Web Services Japan
高負荷に耐えうるWebApplication Serverの作り方
by
GMO-Z.com Vietnam Lab Center
NIDD (Non-IP Data Delivery) のご紹介
by
Device WebAPI Consortium
10分でわかる Cilium と XDP / BPF
by
Shuji Yamada
FridaによるAndroidアプリの動的解析とフッキングの基礎
by
ken_kitahara
Docker ComposeでMastodonが必要なものを梱包する話
by
Masahito Zembutsu
Viewers also liked
PDF
Open vSwitchソースコードの全体像
by
Sho Shimizu
PPTX
Tremaとtrema edgeの違い
by
hiroshi oshiba
PDF
60分でわかるソケットプログラミング
by
Masahiko Kimoto
PPTX
パケットジェネレータipgenから見るnetmap
by
furandon_pig
PDF
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
by
Richie Shellshoccar
PDF
Intel DPDK Step by Step instructions
by
Hisaki Ohara
PPTX
良いコードとは
by
Nobuyuki Matsui
PDF
Linux Profiling at Netflix
by
Brendan Gregg
PDF
Linux packet-forwarding
by
Masakazu Asama
PDF
Linux Performance Analysis and Tools
by
Brendan Gregg
PDF
Docker入門: コンテナ型仮想化技術の仕組みと使い方
by
Yuichi Ito
Open vSwitchソースコードの全体像
by
Sho Shimizu
Tremaとtrema edgeの違い
by
hiroshi oshiba
60分でわかるソケットプログラミング
by
Masahiko Kimoto
パケットジェネレータipgenから見るnetmap
by
furandon_pig
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
by
Richie Shellshoccar
Intel DPDK Step by Step instructions
by
Hisaki Ohara
良いコードとは
by
Nobuyuki Matsui
Linux Profiling at Netflix
by
Brendan Gregg
Linux packet-forwarding
by
Masakazu Asama
Linux Performance Analysis and Tools
by
Brendan Gregg
Docker入門: コンテナ型仮想化技術の仕組みと使い方
by
Yuichi Ito
Similar to カーネルモジュールプログラミング超入門 #1(仮)
PDF
2011.09.18 v7から始めるunix まとめ
by
Makiko Konoshima
PPTX
Functions
by
do_aki
PPT
Altanative macro
by
Motohiro KOSAKI
ODP
カーネルをmakeしよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
initramfsについて
by
Kazuhiro Nishiyama
PDF
Unix 基礎
by
Sho A
PDF
スタート低レイヤー #0
by
Kiwamu Okabe
PDF
【学習メモ#8th】12ステップで作る組込みOS自作入門
by
sandai
PDF
2017-12-04 Linuxの基本構造とBashでの扱い方
by
浩平 渡邉
PDF
x86とコンテキストスイッチ
by
Masami Ichikawa
PDF
2011.06.11 v7から始めるunix まとめ
by
Makiko Konoshima
ODP
みんな大好き! Hello, World
by
Naohiro Aota
PDF
Subprocess no susume
by
Makoto Kishimoto
PDF
ふつうのLinuxプログラミング
by
Shuhei KONDO
PDF
○○大学の本当にあった怖い話
by
idkqh7 Nishino
PDF
最近遊んだLinuxボードたち
by
t n
PDF
Ansible 入門 #01 (初心者向け)
by
Taro Hirose
PDF
ソフトウェア工学2023 14 ビルド
by
Toru Tamaki
PDF
【学習メモ#4th】12ステップで作る組込みOS自作入門
by
sandai
PDF
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
by
Takateru Yamagishi
2011.09.18 v7から始めるunix まとめ
by
Makiko Konoshima
Functions
by
do_aki
Altanative macro
by
Motohiro KOSAKI
カーネルをmakeしよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
initramfsについて
by
Kazuhiro Nishiyama
Unix 基礎
by
Sho A
スタート低レイヤー #0
by
Kiwamu Okabe
【学習メモ#8th】12ステップで作る組込みOS自作入門
by
sandai
2017-12-04 Linuxの基本構造とBashでの扱い方
by
浩平 渡邉
x86とコンテキストスイッチ
by
Masami Ichikawa
2011.06.11 v7から始めるunix まとめ
by
Makiko Konoshima
みんな大好き! Hello, World
by
Naohiro Aota
Subprocess no susume
by
Makoto Kishimoto
ふつうのLinuxプログラミング
by
Shuhei KONDO
○○大学の本当にあった怖い話
by
idkqh7 Nishino
最近遊んだLinuxボードたち
by
t n
Ansible 入門 #01 (初心者向け)
by
Taro Hirose
ソフトウェア工学2023 14 ビルド
by
Toru Tamaki
【学習メモ#4th】12ステップで作る組込みOS自作入門
by
sandai
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
by
Takateru Yamagishi
More from University of Tsukuba Linux User Group
ODP
Gentoo Linuxの紹介
by
University of Tsukuba Linux User Group
PDF
C言語の課題を(エクストリームに)解こう #1
by
University of Tsukuba Linux User Group
PDF
monoqloの麻雀講座
by
University of Tsukuba Linux User Group
PDF
Hello,World Crazy!!
by
University of Tsukuba Linux User Group
PDF
linuxで動画キャプチャ。 - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
USBからLinuxを起動してみよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
うぶんちゅ! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
ODP
Debug Hacks - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
シンガポールのインターネット検閲事情 (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
ODP
楽しい怪しいシェルスクリプト - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PPT
ばっしゅ! (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
Gentoo Linuxの紹介
by
University of Tsukuba Linux User Group
C言語の課題を(エクストリームに)解こう #1
by
University of Tsukuba Linux User Group
monoqloの麻雀講座
by
University of Tsukuba Linux User Group
Hello,World Crazy!!
by
University of Tsukuba Linux User Group
linuxで動画キャプチャ。 - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
USBからLinuxを起動してみよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
うぶんちゅ! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
Debug Hacks - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
シンガポールのインターネット検閲事情 (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
楽しい怪しいシェルスクリプト - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
ばっしゅ! (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
カーネルモジュールプログラミング超入門 #1(仮)
1.
(The Linux)
Kernel Module Programming ...for Dummies #1 Takayuki Horimoto opentaka[at]tsukuba-linux.org http://www.tsukuba-linux.org/
2.
$whoami Takayuki Horimoto
3.
堀本 貴幸
(opentaka)
4.
Gentoo Linux geek
GMN-ja ( もう死んだ ...)
5.
CJK team
目指して bug を潰します Open Source Software != Free Software
6.
Agenda What is
a kernel module?
7.
lsmod ,
insmod and modprobe
8.
“ hello world
” with printk()
9.
Creating a
Makefile
10.
Introduction to
MODULE_*()
11.
Summary
12.
What is a
kernel module? カーネルに load/unload できるバイナリ
13.
“ プラグイン ”のようなもの
14.
機能やドライバを追加できるようになる。
15.
カーネルを config する時に
<M> としたもの。
16.
eg. ipv6, ipfilter,
usblp (USB printer), usb-storage
17.
lsmod ,
insmod and modprobe $ cat /proc/modules loadされているモジュールの一覧。
18.
$ lsmod
で人間が読めるようになる pppoe 9320 2 - Live 0xc0c4d000 0xf8969000 pppox 5226 1 pppoe, Live 0xc0c4b000 0xf896d000 ppp_generic 15328 6 pppoe,pppox, Live 0xc0c47000 0xf8962000 slhc 7802 1 ppp_generic, Live 0xc0c45000 0xf8966000 # insmod /lib/.../ppp_generic.ko モジュールをロードできる。
19.
File Locations モジュールは一体どこに潜んでいるか
? /lib{.,32,64}/modules/<kernel>/kernel/<categ1>/<categ2>/<name>.ko 例 : /lib/modules/2.6.29-gentoo-r5/kernel/drivers/net/s2io.ko # modprobe ppppppppppppoe (p..oe のモジュールをロードする ) /etc/modprobe.conf alias <hogehoge(generic identifier)> p....oe p...oe.ko という意味 /lib/modules/<kernel>/modules.dep 依存関係 p...oe の前に ppppppppp が必要等な場合、 p.. をロードする
20.
# 1 Hello
World
21.
#include < linux/module.h
> #include < linux/kernel.h > int init_module(void){ printk(KERN_INFO "Hello World\n"); return 0; } void cleanup_module(void){ printk(KERN_INFO "..dying\n"); } helloworld.c
22.
printk() printk(KERN_INFO
“ お腹空いた \n ” ); printk(KERN_ WARNING “ もうだめ ...\n ” );
23.
printk() printf() とほぼ同じ。
printf() : “ printf() は画面に文字を表示させます。” “ ただしワープロソフトで書かないでください ” – やさしいなんとかの本
24.
printk() printk( KERN_INFO
“ お腹空いた \n”); printk( KERN_WARNING “ もうだめ ...\n”); linux/kernel.h[L91]: #define KERN_EMERG "<0>" /* system is unusable */ #define KERN_ALERT "<1>" /* action must be taken immediately */ #define KERN_CRIT "<2>" /* critical conditions */ #define KERN_ERR "<3>" /* error conditions */ #define KERN_WARNING "<4>" /* warning conditions */ #define KERN_NOTICE "<5>" /* normal but significant condition */ #define KERN_INFO "<6>" /* informational */ #define KERN_DEBUG "<7>" /* debug-level messages */
Download