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
NetBSD/zaurus 8.1 をテストしたら動かなかったので動くまで直した話 / KOF...
Search
Izumi Tsutsui
November 08, 2019
Programming
1.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
NetBSD/zaurus 8.1 をテストしたら動かなかったので動くまで直した話 / KOF2019-NetBSD
関西オープンフォーラム2019 1日目 BSDなひととき で発表した「NetBSD/zaurus 8.1 をテストしたら動かなかったので動くまで直した話」のスライドです
Izumi Tsutsui
November 08, 2019
More Decks by Izumi Tsutsui
See All by Izumi Tsutsui
OSC東京でいただいた UIAPduinoマイコンボードで PSG演奏と液晶ドッド絵デモ / osc2026Kagawa
tsutsui
0
140
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを ブラッシュアップしました / osc2026Tokyo-spring
tsutsui
1
89
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを OSC駆動の7日間で作った話 / OSC2026Osaka
tsutsui
1
190
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
350
今年もNetBSD環境を使って PC-6001のPSG演奏デモを作った話 / KOF2025
tsutsui
0
350
NetBSD/luna68kの歴史解説と、LUNAでアニメGIF再生デモと ついでにPC-6001デモも作った話 / OSC2025Kyoto
tsutsui
0
170
NetBSDの解説と NetBSD/luna68kの歴史と ついでにPC-6001展示 / OSC2025Tokyo-spring
tsutsui
0
250
GitHub Actionsを使ってNetBSDマイナー機種用のビルドテストCIを書いてみた話 / OSC2025Osaka
tsutsui
0
200
PC-6001のPSG演奏デモを機会にNetBSDを真面目に説明してみる / OSC2024Ehime
tsutsui
0
590
Other Decks in Programming
See All in Programming
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
140
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
140
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.6k
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.6k
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
210
The NotImplementedError Problem in Ruby
koic
1
1.1k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
130
はてなアカウント基盤 State of the Union
cockscomb
1
1.2k
A2UI という光を覗いてみる
satohjohn
1
170
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
7.2k
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
8.4k
Featured
See All Featured
Visualization
eitanlees
152
17k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
320
Leo the Paperboy
mayatellez
7
1.9k
ラッコキーワード サービス紹介資料
rakko
1
3.8M
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Building Applications with DynamoDB
mza
96
7.1k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
630
Ruling the World: When Life Gets Gamed
codingconduct
0
270
Mind Mapping
helmedeiros
PRO
1
270
The World Runs on Bad Software
bkeepers
PRO
72
12k
Transcript
NetBSD/zaurus 8.1 を テストしたら動かなかったので 動くまで直した話 関西オープンソース 2019 NetBSD SHARP 祭り@Kansai
Izumi Tsutsui
[email protected]
Twitter: @tsutsuii Mastodon: @
[email protected]
NetBSDと SHARP マシン
これだけ動きます 目のつけどころが? • X68030 (X68000+030アクセラレータも可) • SL Zaurus (いわゆる
リナザウ) • W-ZERO3 • NetWalker • あとTelios (WindowsCE MIPS機)とか
今でも 動くの?
二十年ふた昔 各マシンの発売年 • X68030 1993年 • SL Zaurus 2002年
• W-ZERO3 2005年 • NetWalker 2009年 • Telios 2000年?
NetBSD 最新リリース 9.0_BETA も進行中 • NetBSD 8.0: 2018/ 7/
4 • NetBSD 8.1: 2019/ 5/31 • netbsd-9 : 2019/ 7/30 ブランチ作成 NetBSD 9.0 は来年春までには出る??
NetBSD/x68k エミュレータで動きます →実機も展示中
NetBSD/zaurus もともと Linuxなので • OpenBSD/zaurus (2004年) がベース OpenBSD/zaurus は
6.0 で終了 • NetBSD/zaurus: 2006/12/17 コミット • 2011年? に SL-C1000サポート (このころに実機をジャンクで入手) • 2012年に SL-C7x0/860サポート
起動動画もあります https://www.youtube.com/watch?v=Jq5ZHwum5vM
Zaurus と OSC Twitterで拉致事件 https://twitter.com/tristelo/status/133912360040677376
https://togetter.com/li/242873
OSC東京 2011 秋 http://movapic.com/pic/201111191552144ec7521e3419f
NetBSD/zaurus Live Image C7x0サポートの 2012年作成 https://togetter.com/li/243703
Kapperさんによる紹介 いつもありがとうございます https://www.slideshare.net/kapper1224/beginner-for-install-archlinux-and-netbsd-in-linuxzaurus-i n-2019-archlinuxnetbsd-in-linux-zaurus-162939626
https://www.amazon.co.jp/gp/customer-reviews/R2TR7CA91F7AXJ
そういえば ここ数年 Zaurus を さわってない
Live Imageを作った NetBSD 6.1.3?くらいから 放置してたのですが、 せっかく紹介して いただいたので 今はどうかなとテスト
NetBSD/zaurus 7.2 は起動 8.1 はカーネルロード後ハング port-zaurus ML
にもハング報告が とりあえずの検証結果 https://mail-index.netbsd.org/port-zaurus/2017/04/02/msg000066.html
NetBSD/zaurus 起動方法 ちょっと面倒 • Zaurus純正 Linux を起動 • BSDカーネルロード用のLinuxカーネル
モジュール (zbsdmod.o) を組み込み • /proc/zboot に NetBSDカーネルを 書き込むとカーネルが起動する • zboot という NetBSD FFSからロード するツールもあり ⇒これらの組み合わせ検証が面倒だったり
7.2→8.1 変化点検証 地味作業① • リンカスクリプトの変更を 戻すと起動する? • 変更考慮漏れでカーネルエント リアドレスが変わってしまって
いた →修正
7.2→8.1 変化点検証 地味作業② • zbsdmod.o の違いは gcc更新に よるアドレスずれ? •
各種比較検証の結果、 カーネルジャンプ命令周辺を キャッシュラインに整列させた ら起動 →修正
7.2→8.1 変化点検証 地味作業③ • zbsdmod.o を直しても読めない カーネルがある? • コードをながめてみて、なんと
なくダメっぽく見えたので bssクリア処理を追加 →ダメなカーネルもロードOK
7.2→8.1 変化点検証 地味作業④ • GENERICカーネルを起動すると ”Alignment Fault 3” と言われて落ちる
• 野生の勘でフレームバッファの rasops が怪しい? と調べて 実装ミスを確認 →修正
さらに動作検証 地味作業⑤ • disklabel(8) や fdisk(8) が 動かない •
MAKEDEV(8) スクリプトの Rawパーティション判定が 間違っている →send-pr して修正されました
さらに動作検証 地味作業⑥ • Xサーバーで画面回転設定時の 表示がおかしくなる • 検証未です(すいません) • 7.2の
Xorgサーバーバイナリを 持ってくるととりあえず 動きます
さらに動作検証 地味作業⑦ • 9.0_BETA だとXサーバーで キーボード入力できない • 必要なカーネルオプションが 無効化されてしまっていたので
戻す(ついでにコンパイルエ ラーも発覚したので修正)
さらに動作検証 地味作業⑧ • 9.0_BETA の audio 修正後も C760/C860だと認識されない •
カーネル設定によっては動く? • 散々調べて delay(9) 実装のバグ と発覚 →修正
ついでに改善 地味作業⑨ • zbsdmod.o でのデバッガ用 シンボルテーブル読み込みを 動くようにしてカーネルサイズ 削減 •
KOFにコミットします
というわけで展示準備
放置するとバグがたまっていくので 定期的に起動するようにしましょう 基本は差分探索でしんどいですが 狙い通り直るとヨッシャ感あります 音が鳴って動画が動くとたのしい! 使ってもらえるとさらにうれしい!
Kapperさん、ありがとうございました! まとめ