Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

最近遊んだLinuxボードたち

1,169 views

Published on

最近遊んだLinuxボードの話です。

Published in: Software
  • Be the first to comment

最近遊んだLinuxボードたち

  1. 1. 1
  2. 2. @tnishinaga 2
  3. 3. 活動 • 技術書執筆 – 「BareMetalで遊ぶ Raspberry Pi」 (達人出版会) http://tatsu-zine.com/books/raspi-bm
  4. 4. 楽園追放 アンジェラちゃん を愛でに来ました 4
  5. 5. アンジェラちゃん かわいい! 5
  6. 6.   ☝         ՞  _人人人人人人_  > (     ) <  ☞  ‾Y^Y^YY^Y^Y‾  ՞       ਊ    ∞    ∫ ,';:☜;.`,ਊ,,;';,;☞,.՞ ՞ 6
  7. 7. 最近遊んだLinuxボードたち @tnishinaga 7
  8. 8. 今回の内容 8
  9. 9. 最近遊んだLinuxボード をご紹介。 9
  10. 10. 中途半端なの多いです ご容赦を…… 10
  11. 11. おしながき 11 • Intelのあれ • 狂気のSATA • ブラックロック☆美少女
  12. 12. Section 1 Intelのあれ 12
  13. 13. 13
  14. 14. SHARP Zaurus SL • 私が初めて知ったPDA – 当時、中学生 – 財布の事情で購入できず • 憧れの機体 • 最近親切な人からSL-C3200を譲り受ける 14
  15. 15. 憧れの機体で遊びたい • しかし、いろいろ古すぎ。 – CPU: Intel Xscale PXA270 416MHz – Arch: ARM v5 – OS: Linux Kernel v2.4 15
  16. 16. とりあえず カーネルを 最新にしたい 17
  17. 17. カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 18
  18. 18. カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 19
  19. 19. Zaurus SL-C3200 の I/Oポート • SL-CシリーズはI/Oポートからシリアル を引っ張り出せる – I/Oポートの仕様は以下 • http://support.ezaurus.com/developer/doc/ hardware.asp • コネクタは既存製品から調達すると良い – ヤフオクで300円で調達 20
  20. 20. これを 21
  21. 21. こうして 22
  22. 22. こうじゃ 23
  23. 23. やったぜ 24
  24. 24. 疲れたので中断。 次。 25
  25. 25. Section 2 狂気のSATA 26
  26. 26. 覚えてますか 27
  27. 27. Plug Computer 28
  28. 28. Plug Computer • 電源プラグとLinuxボードが合体した製品 – 製品例 • SheevaPlug • GuruPlug • PogoPlug • 当時、高校生 – 二次元美少女ゲームを買うのに必死で買えず。 – 最近はPogoPlugがヤフオクで1000円ぐらい。 29
  29. 29. 購入。 30
  30. 30. PogoPlug V3 Pro spec • CPU: PLX 7820 700MHz Dual-core • Arch: ARMv6l ARM11 mpcore • RAM: 128MB • NAND: 128MB • Ethernet: Gigabit • Option: SATA • OS: Linux Kernel v2.6 31
  31. 31. PogoPlug V3 Pro spec • CPU: PLX 7820 700MHz Dual-core • Arch: ARMv6l ARM11 mpcore • RAM: 128MB • NAND: 128MB • Ethernet: Gigabit • Option: SATA • OS: Linux Kernel v2.6 32
  32. 32. 目的 • GigabitとSATAを活かしてNASとして 復活させたい – どうせならBtrFSとか使えるようにしたい • そのためにはちょっとカーネルが古いので 新しくしたい 33
  33. 33. 最初にやること • mini PCIの無線LAN カードを抜く。 – 技適怖い。 34
  34. 34. Re: カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 35
  35. 35. Re: カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 36
  36. 36. PogoPlugのシリアル • 3.3vですでに出ている。 • やるだけ。 37
  37. 37. Re: カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 38
  38. 38. PogoPlug内部構造 • カーネルはNAND上に – U-Boot – Kernel – Rootfs の順で格納されている • このKernelを新しいKernelで書き換えれば良 いはず。 39
  39. 39. Re: カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 40
  40. 40. Kernelコンパイル • Pogoのソースは公開されている – http://pogoplug.com/opensource • 適当にコンパイル。 uBootイメージを作る 41
  41. 41. Re: カーネル書き換え計画 1. シリアルコンソールにアクセスする 2. 内部構造を調べる 3. カーネルをコンパイルする 4. カーネルを焼く 42
  42. 42. レッツNAND焼き • Kernelのいる0x500000, 0xB00000に Linuxシステム上から書き込む • れっつ再起動 43
  43. 43. • Stating Kernel 44
  44. 44. 45
  45. 45. おめでとうございます 46
  46. 46. 47
  47. 47. 48
  48. 48. 立派な文鎮の完成です 49
  49. 49. 敗因? • エントリーポイントを間違えた? – 0x60008000だった可能性大 • 2.6 → 3.xでDTBとかが増えて方法が 変わったのを失念 50
  50. 50. PogoPlug V3 Pro spec • CPU: PLX 7820 700MHz Dual-core • Arch: ARMv6l ARM11 mpcore • RAM: 128MB • NAND: 128MB • Ethernet: Gigabit • Option: SATA • OS: Linux Kernel v2.6 51
  51. 51. 敗因? • エントリーポイントを間違えた? – 0x60008000だった可能性大 • 2.6 → 3.xでDTBとかが増えて方法が 変わったのを失念 52
  52. 52. 今後の方針 • SATAにHDDつながってると、 SATAから起動するっぽい? • ここから復旧できるかも • すでに3.17入れる方法公開されてた • http://forum.doozan.com/read.php?2,16044 – 復旧できたら、ここをみてやり直す 53
  53. 53. 卒研が忙しくて中断。 次。 54
  54. 54. Section 3 ブラックロック☆美少女 55
  55. 55. モノクロ液晶で 二次元美少女を 愛でてたい 56
  56. 56. f (x) = 57
  57. 57. (x)・ 58 Raspberry Pi Nokia 5110 Mono Display
  58. 58. f(二次元美少女動画) 59
  59. 59. = こころぴょんぴょん 60
  60. 60. 実装内容 1. RasPiで動画を縮小+モノクロにする 2. RasPiから画面に出力する 61
  61. 61. 実装内容 1. RasPiで動画を縮小+モノクロにする 2. RasPiから画面に出力する 62
  62. 62. 動画の縮小+モノクロ化 • OpenCV + Python • モノクロ化手順 – 動画読み込み – グレイスケール化 – 縮小 – ガウス分布を用いた二値 化 63
  63. 63. 実装内容 1. RasPiで動画を縮小+モノクロにする 2. RasPiから画面に出力する 64
  64. 64. Nokia 5110液晶への出力 • ライブラリを使用 – https://github.com/rm-hull/pcd8544 • PIL→Imageに変換して送り込めばOK 65
  65. 65. 完成 TODO: デモ動画 66
  66. 66. 完成 ※著作権OKな動画が無いためデモ不可※ 67
  67. 67. TODO • 問題: 動画の読み込みが糞遅い • 動画の読み込みに ハードウェアデコード機能を使う 68
  68. 68.   ☝         ՞  _人人人人人人_  > (     ) <  ☞  ‾Y^Y^YY^Y^Y‾  ՞       ਊ    ∞    ∫ ,';:☜;.`,ਊ,,;';,;☞,.՞ ՞ 69 おわり

×