2017/09/26
Linux Kernel Study
2017/09/23
Sakura Internet, Umeda, Osaka
上記に参加してきた。公聴しながら記述したので、誤字が多い。
_____________________________________________________
0. Linux kernel 勉強会の経緯
主催者が leyer が低いところに興味があった。
他の勉強会、に出たところ 3 人集まった。
がちの linux kernel 開発者はいない
1. Linux Kernel 最初の一歩
@satomicchy
** kernle.org と linux.org
kernel.og: Linux kernel organisation
- 本家
Linux online inc が管理
- user forum
- distribution
- linux man
コマンド一覧があるこれは便利そう
** what is linux の翻訳比較
- 英語と日本語の対比がある
- kernel はパスタらしい
- Linux kerne document project は, 止まっている ?
2.6 系で止まっている
2. Liux Kernel source code を読む
xoxyuxu (中居さん)
- RTOS Linux 外は機能ごとに追加料金が課される。
- ipv4, ipv6 など
- 仮想ファイル: デバイスファイルを介して通信
- LTS
- LTSI kernel 工業用の linux kernel 5 年? のメンテ期間
- kernel source code
valnila kernel (unstable)
・linux のつりーを取ってくれば基本的には OK
・ほかカーネルメンテなーのソースを取ってくる
・MAINTAINERS いかのディレクトリに管理者のリスト
- ビルド環境
・とりあえずビルドしないと読むのが辛い
・debian 系がおすすめ
・kernel configuration で必要でないcpu arch は落とす。ソースを読むのが楽になる
・obj が生成されていない kernel は読まない
・corss compiler を使う x86_64 で arm の obj
- カナディアンクロス というクロスコンパイルの方法がある
- Eclipse でコンパリる
・ 今タイル時に -I を指定しないとだめ
・ make V=1 で参照を確認すこと
- Elixr
・ web base で解析してあるのを公開してくれている
・ freeElectrons さん
-source
・doumenration, arch, block(block derice), certs, crypto(暗号処理), drivers(深い), firmware(空), fs
・sinclude, int, ipc (sysv, shared mem, semaf) , kernel, lib, mm, sample
・scripts (make file, python, shell), securiy, sounrd, tools(group, cpupower, perf, gpio), usr, virt(kvm)
・mmake help に static analyser や gtags のオプションが記述されている
・firmware は dist がぶち込む商用のデバイスドライバなどが入いる
- stract
- fallocate(2)
SYSCALL_DEFINE で grep するとみつかる
- maro の嵐を読むと マクロ名を変換して syscall 名を作る
- strace で追っかけるアセンブラのコードがある
- Linux 関連メモ 宇治電子や
- libc
- vDSO virtual dynamic shared object
- gettimeofday() が呼べなくて苦労した
- kprob のほうがよい ?
- Linux カーネル 2.6 network stack に関してはかみ
2. 資料なし
吉田さん
- mac 上の docker の中で linux kernel をビルドしてみた
- apline linux
- gist に docker ファイルあり
- qemu でブートできなっかった
- make menuconfig の general setup の initramfs/initrd を有効にした。
- block device の loop back device オプションを有効した
- static link した c プログラムを動かした
- mac のカーネルは moby とう distro
3. Linux kernel の勉強ってなんだ
矢吹さん
- Linux Kernel の TCP アルゴリズムを触った
- TCP アルゴリズムを入れ替えられる mod を変える
- 組み込みは Debian 由来のツールが多い
・ Linux マシンを持とう
・非力な環境で限界になった時、の挙動を学ぶ
- 極限の状態は、低レイヤーがコントロールする
- 極限状態から、どうやってとめるか
- 小さい環境ならば、予測と実績が立てやすい
一台のマシンならばどうにかない。
・ 死んだ情報と生きた情報
- boot 方式が変わる
UEFI と systemd
- dbus Linux の共通通信方式になる傾向
freedesktop org を読まないとだめ
- 理論と実践の療法をやらないとだめ
・ 書籍紹介
- code reading 毎日コミュニケーションず
- Linux のブートプロセスをみる ASCII
・下準備
- GNU global
- milkcode, gonzui
- ctag
- git grep
・ ソースコードを読む
- export gpl
- ひら method
- 興味があるところをひたすら読む
- 学んだことは、試してみたほうがよい
・ソースコードを動かす
- printk()
- gdb
・debian kernl package
- blob: firmware 商用の driver など
・読むためのツール
- cscope
・kernel
- condif : kernel の設定
- systemmap : address
- initrd : boot 時に私用
・debootstrap
- snapshot.org で保管している
- license の精査
・debug
- qemu-kvm に gdb と連携する機能がある
- 昔は、KGDB で別マシンとシリアル通信をした
・ Qemu + gdb
- man qemu-system で -s オプションと -gdb オプションを確認
・ TCP/IP
- reno
- congestion algorithm
3. 簡単な Linux Kernel 開発
村瀬さん
会議が定義で以降
・仮想環境で linux の開発
- elkdat
- cross cmopile: Op-TEE
・ubuntu 16.4
- userkan ubuntu
- kernel test
- multi core
・cons
- vagrant/qemu/kvm/libvirt
- ubuntu と debian でちょっと違う
OP-TEE
proc
- ARMv7, ARMv8 use trust zone
- eazy gdb
- P-TEE
- 非常に低いレイヤーの認証系のレイヤー を扱う trust zone
cons
- useland busy boox
- ARM only
- ccache を入れるともっと早い
- ran-only
- gdb symbol 読み. 設定ファイルを $HOME したに億
・Kernel ソースの構造紹介
- usr 以下に 起動用のツールが入っている
- sample 以下はテストケース
5. LT NAND flash
- usb メモリは放置しておくとデータがきえる
- bit flip
read write で 0-1 1-0 が変化 ECCで治す
- ware leveling
特定の箇所に書き込みが集中すると劣化が早くなるので、まんべんなく使うようにする。
エラー率が多くなってきたら、他の場所に書くなど
- SLC, MLC/TLC device
MLC はデータ書き込んだ隣のデータが消される
実際、linux の MLC ドライバは何か問題があると ML に流れていれた
SLC は高い, MLC を MLC っぽく使う機能がある。ただし、容量を多く使用できない
宿題
- 環境構築 ビルド
2017/09/15
2017/09/14
学会に参加中
某私立大学にお邪魔しています。すごい。今、スタバが学内にあるんだ。
私のいた学校は、まずい飯が出てくる食堂しかなかった。そして、その食堂すら途中で、なくなった。
講演が再開されるまで、プライベートな作業をする。
私のいた学校は、まずい飯が出てくる食堂しかなかった。そして、その食堂すら途中で、なくなった。
講演が再開されるまで、プライベートな作業をする。
2017/09/10
今日知ったジョーク
第二次世界大戦を経験したイギリス空軍の元パイロットが、ある講演会に呼ばれました。
講演会は、学校で開かれ戦争を知らない若い世代の人たちのものでした。
パイロット「そのとき、私のしろに2機 F**ker が着いてきた。」
学校で、F** word は教育上よくないので、すかさず教師がフォローします。
教師「みなさん、Fokker というのは、ドイツの飛行機メーカーです。」
しかし、パイロットは、
パイロット「いや、マサチューセッツから来た F**ker だ。 」
講演会は、学校で開かれ戦争を知らない若い世代の人たちのものでした。
パイロット「そのとき、私のしろに2機 F**ker が着いてきた。」
学校で、F** word は教育上よくないので、すかさず教師がフォローします。
教師「みなさん、Fokker というのは、ドイツの飛行機メーカーです。」
しかし、パイロットは、
パイロット「いや、マサチューセッツから来た F**ker だ。 」
2017/09/09
uq mobile data 通信プラン 500 K に変えてみた。
今までお世話になっていた wireless gate さんの wimax から、UQ mobile の data 通信に乗り換えました。最大通信速度 max 220 MiB から 500 KiB は辛いです。金額的には 3980 円から 1980 円 になりました。
速度計測用のページではほぼカタログスペック通り 500 KiB 出るのですが、apt-get とかアプリだと 60 KiB ぐらいしか出ません。Axel でダウンロードしてもかわらず。
速度は、ちょっとつらいかな。
ちなみに you tube の 144p ならばカクつかなく見ることができます。240p 以上は、止まりながらです。
でも、wimax が繋がらなかった場所でも使えるので、まあいいかと思っています。
梅田のグランドフロントなどでは、外でも入らない場所が結構ありました。
しばらくはこのプランで行きます。
速度計測用のページではほぼカタログスペック通り 500 KiB 出るのですが、apt-get とかアプリだと 60 KiB ぐらいしか出ません。Axel でダウンロードしてもかわらず。
速度は、ちょっとつらいかな。
ちなみに you tube の 144p ならばカクつかなく見ることができます。240p 以上は、止まりながらです。
でも、wimax が繋がらなかった場所でも使えるので、まあいいかと思っています。
梅田のグランドフロントなどでは、外でも入らない場所が結構ありました。
しばらくはこのプランで行きます。
2017/01/02
Trump さんが大統領になって。
政治的には、どうなのでしょうか?
個人的には、円安になってくれたおかげで、給料 1 ヶ月分以上ボーナス以下ほど稼げ、ありがたやです。
確かにこんな状況が続けば、「秒速で稼ぐ」や「働いたら負け」になるよね。
個人的には、円安になってくれたおかげで、給料 1 ヶ月分以上ボーナス以下ほど稼げ、ありがたやです。
確かにこんな状況が続けば、「秒速で稼ぐ」や「働いたら負け」になるよね。
登録:
投稿 (Atom)