Upgrade to Pro — share decks privately, control downloads, hide ads and more …

37年前の Sun 3/60 のために最新のNetBSDと最新のX.orgをメンテする話 / KOF2022

37年前の Sun 3/60 のために最新のNetBSDと最新のX.orgをメンテする話 / KOF2022

関西オープンフォーラム KOF2022 の「BSDなひととき」のセミナーで発表した『37年前の Sun 3/60 のために最新のNetBSDと最新のX.orgをメンテする話』のスライドです

Izumi Tsutsui

November 12, 2022
Tweet

More Decks by Izumi Tsutsui

Other Decks in Programming

Transcript

  1. 37年前の Sun 3/60 のために
    最新の NetBSD と 最新の X.org を
    メンテする話
    関西オープンフォーラム 2022
    2年10か月ぶり 謎マシン実機展示記念
    Izumi Tsutsui
    [email protected]
    Twitter: @tsutsuii
    Mastodon: @[email protected]

    View Slide

  2. 3年ぶりのKOF
     前回展示は 2019年 Zaurus + X68030
    https://twitter.com/tsutsuii/status/1192677243702497280

    View Slide

  3. 実機展示も2年10か月ぶり
     最後の実機展示は 2020年 1月 OSC大阪
    https://twitter.com/ebijun/status/1220906094391779333

    View Slide

  4. というわけで
    大阪つながりで今回も
    Sun 3/60 更新展示です
    前回OSC大阪では
    液晶VGA化工作で時間切れで
    展示デモ用アプリ準備が
    テキトーだったので

    View Slide

  5. その前に

    View Slide

  6. KOF タイムテーブル
     「BSDなひととき」
    https://www.k-of.jp/2022/session/bsd_session/

    View Slide

  7. KOF タイムテーブル
     「BSDなひととき」
    https://www.k-of.jp/2022/session/bsd_session/
    4.4BSDの流れをくむ
    FreeBSD/NetBSD/OpenBSDなど、
    BSD系UNIXのユーザグループ合同で、
    BSD系UNIX全般を対象とした
    幅広いテーマで議論します。

    View Slide

  8. 幅広いテーマで Sun3
    🤔️ 🤔️ 🤔️
    とは ……
    あんまり考えてなくてすいません

    View Slide

  9. Sun3とは
    KOFに来られるような濃い方には
    蛇足かもしれませんが

    View Slide

  10. Sun 3/60
    Robert Harker - http://en.wikipedia.org/wiki/File:Sun3_60_Disk_Tape.jpg, CC 表示-継承 2.5,
    https://commons.wikimedia.org/w/index.php?curid=7216642による

    View Slide

  11. Sun 3/60
     1985年発表
    PC-8801mkIISR が出た年。まだ 8bit が全盛の時代
    CPU: Motorola MC68020 20MHz
    RAM: 4MB 〜 最大 24MB (!)
    Video: 1152x900 白黒 or 256色
    Device:SCSI, 10BASE-2/5 Ethernet
    OS: SunOS 4.1.1 までサポート
    ちなみに SONY NEWS が出たのは 1987年

    View Slide

  12. 1980年後半の Sun
     今は亡き Sun の最盛期
    ● バークレーBSD開発者 Bill Joy氏の参画
    ● NFS, NIS といったネットワーク機構
    ● 日本でも大学や企業に多数採用
    アスキー出版局「サン・マイクロシステムズ」前書きより
    サン・マイクロシステムズの物語は、80年代でもっとも
    印象的な成功物語のひとつとして登場した。そしていまや
    90年代。サンの強運は長期にわたり、その勢いは少しの
    衰えも見せていない。(後略)

    View Slide

  13. わたしと Sun3/60
     NetBSDの発展とともに
    ● 1992年頃に大学サークルで購入
    ● 本体, CRT, HDD, QICテープ 一式 20万円
    ● 「386BSDでは力不足だから」と導入
    →NetBSD に ypserv もなかった時代
    ● 1995年頃、Pentiumが出て NetBSDも
    安定してくると完全に時代遅れに

    View Slide

  14. わたしと Sun3/60
     初めての 非x86 NetBSD
    誰も使わないのでいろいろ遊ぶ
    ● X端末解説でネットワークブートを知る
    ● SunOSで NetBSD/sun3 カーネルビルド
    →なんかカーネルメッセージ出たよ!
    ● ある時 SunOS の HDDが死亡
    → NetBSD/sun3 1.1 をトライ。動く!
    ● XFree86サーバーのパッチ投げたり
    Sun3/80 の NetBSD/sun3x を試したり

    View Slide

  15. その後の Sun3
     またいつか、と思いながら20年
    ● その後 Sun3/80 をもらう
    ● Sun3x の pmap を直したり
    2011年のOSC京都で展示したり
    ● Sun3/60は「いつかまた欲しいな〜」
    →そのつぶやきが命取り

    View Slide

  16. テロ予告
    https://twitter.com/nullnilaki/status/1190105621091082240

    View Slide

  17. 着弾
    https://twitter.com/tsutsuii/status/1190458722033651712

    View Slide

  18. 犯行声明
    https://twitter.com/nullnilaki/status/1190460217684742145

    View Slide

  19. お歳暮として
    Sun3/60 を
    いただきました
    🤔️

    View Slide

  20. OSC2022大阪展示
    https://twitter.com/tsutsuii/status/1220347650068738049
    https://twitter.com/tsutsuii/status/1220880108015108097
     お礼を兼ねて VGA化+X11R6サーバー

    View Slide

  21. 展示における課題
    https://twitter.com/tsutsuii/status/1220881174119079936
    https://twitter.com/tsutsuii/status/1247539472721260553
     微妙に挙動不審

    View Slide

  22. NetBSDのXサポート
     XFree86 3.x という時代
    ● NetBSD 1.2 (1996年)までは
    XFree86 を自前ビルド
    ➔当時はまだクロスビルド環境がなくて
    Sun3でも自力でビルドしてました
    ● NetBSD 1.3 (1998年)で XFree 3.2 のソース
    を NetBSD本体に取り込み
    ➔ソース一式が取り込まれただけで、
    ビルドはまだ個別にやっていたような……

    View Slide

  23. Xのビルド方式
     “make World”
    ● 展開するとトップディレクトリが “xc”
    ● そこで “make World” すると一式ビルド
    ● xc/config/cf 以下に OS別設定ファイル
    ● NetBSD.cf に NetBSDの各機種別の設定
    ● Imakefile : Makefile 生成用ファイル
    ● imake(1) : 機種別 Makefile 生成コマンド

    View Slide

  24. Xのクロスビルド対応
     NetBSDといえばクロスビルド環境
    ● カーネルその他のリリースビルドの
    クロスビルド対応は NetBSD 1.6(2002年)
    から
    ➔詳細はOSC2012北海道セミナー資料参照
    http://www.ceres.dti.ne.jp/tsutsui/osc12do/NetBSD-cross-liveimage.html
    ● Xサーバー含むX環境のクロスビルドは
    2003年頃 NetBSD 2.0から対応?
    いまいち覚えていない

    View Slide

  25. NetBSDのXクロスビルド
     NetBSDだけなら決め打ちが可能
    ● xc/config/cf や imake は使わない
    ● src/x11 または src/external 以下に
    NetBSD 専用 Makefile を用意して
    自力で設定を書く
    ● Makefile が xsrc 以下のソースを参照
    ● ドキュメントがほとんどない(?)ので、
    自力で各 Makefile を読み解く必要がある
    ● xsrc/xc は XFree 3.2 で X11R6.1ベース
    ● xsrc/xfree/xc は XFree 4.x で X11R6.4 ベース
    ● xsrc/external/mit がおおむね X.org で X11R7 ベース

    View Slide

  26. Xserverの形式
     モノリシックサーバー
    ● XFree86 では Xサーバーの全機能が
    単一バイナリとしてリンクされている
    モノリシックバイナリ形式
    /usr/X11R6/bin/XFree86
    /usr/X11R6/bin/Xsun
    /usr/X11R6/bin/Xdreamcast
    とか

    View Slide

  27. Xserverの構造
    「Solaris Xサーバーの概要」より
    https://docs.oracle.com/cd/E19455-01/806-2735/6jbubqoec/index.html
    ● デバイス独立層 (DIX) - クライアント要求のディスパッチ、イベント待ち行列の管理、クライ
    アントへのイベント分配、表示用データ構造の管理を行います。この層には、グラフィックス
    ハードウェア、入力デバイス、またはホストオペレーティングシステムに依存しない機能が含
    まれます。
    ● デバイス依存層 (DDX) - ピックスマップ、クリッピング処理用領域、カラーマップ、画面、
    フォント、グラフィックスコンテキストを生成し、操作します。また、DDX 層は入力デバイス
    からイベントを収集し、DIX 層に渡します。この層には、サーバーで使用するグラフィックス
    ハードウェアと入力デバイスに依存するルーチンが入っています。
    ● オペレーティングシステム層 (OS) - クライアント接続と接続認証機構を管理し、メモリの割り
    当て、解放用ルーチンを提供します。OS 層には、ホストのオペレーティングシステムに依存す
    る機能が入っています。

    View Slide

  28. Xserverの構造
    「Solaris Xサーバーの概要」より
    https://docs.oracle.com/cd/E19455-01/806-2735/6jbubqoec/index.html
    ● デバイス独立層 (DIX) - クライアント要求のディスパッチ、イベント待ち行列の管理、クライ
    アントへのイベント分配、表示用データ構造の管理を行います。この層には、グラフィックス
    ハードウェア、入力デバイス、またはホストオペレーティングシステムに依存しない機能が含
    まれます。
    ● デバイス依存層 (DDX) - ピックスマップ、クリッピング処理用領域、カラーマップ、画面、
    フォント、グラフィックスコンテキストを生成し、操作します。また、DDX 層は入力デバイス
    からイベントを収集し、DIX 層に渡します。この層には、サーバーで使用するグラフィックス
    ハードウェアと入力デバイスに依存するルーチンが入っています。
    ● オペレーティングシステム層 (OS) - クライアント接続と接続認証機構を管理し、メモリの割り
    当て、解放用ルーチンを提供します。OS 層には、ホストのオペレーティングシステムに依存す
    る機能が入っています。

    View Slide

  29. Xserverの構造
     どこかで見たような構造
    ● DIX層: デバイス独立層 Device Independent X
    ● Xクライアントとの通信
    ● イベント処理
    ● 表示用データ構造管理
    ● DDX層: デバイス依存層 Device Dependent X
    ● VRAM構造に応じたデータ処理・カラー処理
    ● 表示アクセラレータ処理
    ● キーボード入力、マウス入力 等

    View Slide

  30. 参考: NetBSD MI/MD構造
    OS共通部分
    メモリ管理
    タスク管理
    ファイルシステム
    ネットワークプロトコル
    ……
    機種共通(MI)
    デバイス
    ドライバ
    SCSI
    ATA
    Ethernet
    ……
    CPU
    固有部
    割り込み
    アドレス変換
    ……
    機種依存(MD)部 ←OSの全体の5%くらい?

    View Slide

  31. OSとXserverの関係
    デバイス独立(DIX)層
    Xクライアントとの通信
    イベント処理
    表示用データ構造管理
    キーボード
    デバイス依存(DDX)層
    DDXキーボード
    入力ドライバ
    キーイベント処理
    DDXマウス
    入力ドライバ
    マウスイベント処理
    DDXビデオ
    ドライバ
    描画・パレット制御
    デバイスドライバ
    マウス ビデオカード
    Xserver
    /dev/cgsix
    /dev/mouse
    /dev/kbd
    物理
    デバイス
    OS
    カーネル

    View Slide

  32. OSとXserverの関係
     入力デバイス階層
    ● キーボード固有入力データ
    →OSのキーボードデバイス定義に変換
    →DDX層 XKeySym等のイベントに変換
    →DIX層へのイベント通知
    ● マウス固有 X移動, Y移動, ボタンデータ
    →OSのマウスプロトコル定義に変換
    →DDX層 Xマウスイベントに変換
    →DIX層へのイベント通知

    View Slide

  33. OSとXserverの関係
     出力デバイス階層
    ● ビデオカード出力
    ←OSの mmap(2) や ioctl(2) による操作
    ←DDX層 ピクセルVRAM表現
    カラーパレット操作
    アクセラレータ処理
    ←DIX層 アプリ描画操作
    スクリーンセーバー 等

    View Slide

  34. OSとXserverの関係
     NetBSD共通コンソール wscons(4) の場合
    ● キーボード入力
    ● /dev/wskbd でキーコード読み出しI/Fを提供
    ● マウス入力
    ● /dev/wsmouse で wsmouse プロトコルI/Fを提供
    ● ディスプレイ出力
    ● /dev/ttyE0 で VRAMに対する mmap(2) I/F や
    パレット操作 ioctl(2) I/Fを提供

    View Slide

  35. OSとXserverの関係
     SunOS仕様 Xsunサーバーの場合
    ● キーボード入力
    ● /dev/kbd で Sun固有キーコード読み出しI/Fを提供
    ● マウス入力
    ● /dev/mouse で sun固有プロトコルI/Fを提供
    ● ディスプレイ出力
    ● /dev/bwtwo や /dev/cgsix 等で
    VRAMに対する mmap(2) I/F や
    パレット操作 ioctl(2) I/Fを提供

    View Slide

  36. OSとXserverの関係(再掲)
    デバイス独立(DIX)層
    Xクライアントとの通信
    イベント処理
    表示用データ構造管理
    キーボード
    デバイス依存(DDX)層
    DDXキーボード
    入力ドライバ
    キーイベント処理
    DDXマウス
    入力ドライバ
    マウスイベント処理
    DDXビデオ
    ドライバ
    描画・パレット制御
    デバイスドライバ
    マウス ビデオカード
    /dev/cgsix
    /dev/mouse
    /dev/kbd
    物理
    デバイス
    ②カーネル側ドライバを
     既存DDXモジュール
     対応の標準wscons仕様
     に書き換える
    ①Xserver側 DDXを
     対応する DIX および
     旧来カーネルドライバ
     仕様で動くようにする
    以下のいずれでも
    動作は可能

    View Slide

  37. XFree86での Xsunサーバー
     NetBSDカーネルがSunOSデバイスを提供
    ● /usr/X11R7/bin/Xsun が
    DIX, DDX すべてが入ったサーバー
    ● NetBSDカーネルが SunOS互換の
    各デバイスI/Fを提供
    ➔OS差異の部分だけ修正すればそのまま動作

    View Slide

  38. X.orgでのサーバー構成変更
     モノリシックサーバー廃止・モジュール化
    ● DIX部分が /usr/X11R7/bin/Xorg に
    ● DDX部分は個別モジュールに分割
    ● xf86-video-wsfb
    ● xf86-input-keyboard
    ● xf86-input-mouse 等
    ● これらは /usr/X11R7/lib/modules/drivers 以下の
    ダイナミックリンクライブラリとなり動的構成に

    View Slide

  39. X.orgとXsunサーバー
     謎マシン存亡問題
    ● モノリシック Xsunサーバーは消滅
    ● NetBSD wscons: xf86-input-keyboard
    や xf86-input-mouse でサポート
    ● Solaris用に kbd, mouse, cgsix は
    モジュールとして書き換えた人がいる?
    ● でも sun3の bwtwo や cgfour は消滅?
    ➔NetBSD 8.0 でも Xsunサーバーは削除に

    View Slide

  40. NetBSD/x68k用 Xサーバー
     実は8年前にも似たようなことをやっていました
    ● SHARP X680x0 の NetBSD/x68k 用にも
    X11R6 Xsun サーバーベースで書かれた
    X68k サーバーが存在
    ● この X68kサーバーも Xsun 同様に
    NetBSD 8.0 以降で消滅の危機に
    ● OSC広島とかでの X68030 実機展示で
    Xサーバーが動かないとさびしいので、
    2014年に X68kサーバーを見ていました

    View Slide

  41. Xnest サーバー
     謎サーバー?
    ● モノリシックサーバー削除といいつつ、
    当該のソースディレクトリを見ると
    残っているサーバーがある?
    ● XFree86:xsrc/xfree/xc/programs/Xserver/hw/xnest
    ● X.org: xsrc/external/mit/xorg-server/dist/hw/xnest
    ● これはなんなのか

    View Slide

  42. Xnest とは
     Xserver client on Xserver?
    ● man は「a nested X server」という説明
    ● Xサーバー上でクライアントとして動く
    Xサーバーの実装?
    ● 誰が何の用途で使っているか不明だが、
    継続メンテされているということは
    DIX開発者用?

    View Slide

  43. X68kサーバー移植作戦
     Xなにもわかりません
    ● Xnestのソースと X68kサーバーのソース
    を見比べてみる
    ➔初期化とか DDX⇔DIX I/Fはなんとなく同じ?
    ● NetBSD/x68kカーネル側は変更なし
    ➔Xnestサーバーの XFree86→X.org差分を
    X68kサーバーにも当てれば動くのかも??

    View Slide

  44. X68kサーバー移植作戦
     ドキュメント? なんですかそれ?
    ● ひたすら xnest と X68k のソースを読む
    ● I/Fをエスパーするのは NetBSDカーネル
    のドライバを読むのと同様(?)
    ● サーバーバイナリビルドはクロスビルド
    ● テストはエミュレータで、バイナリは
    NFSで転送、実行時は「高速モード」
    ➔キーボードまわりの XKBの差異で難儀したが
    3日ほどでなんとなくXサーバー動作!

    View Slide

  45. とりあえず公式MLに報告
    Subject: X11R7 Xserver for x68k
    Date: Thu, 27 Feb 2014 22:05:23 +0900
    Hi,
    Last weekend I've managed to port old xfree X68k Xserver to X11R7.
    x68k port has not been wscons'fied (yet), so I just copied
    old style xsrc/xfree/xc/program/Xserver/hw/netbsd/x68k server
    sources to xsrc/external/mit/xorg-server/dist/hw/netbsd/x68k
    and put minimum changes (for Xorg API changes) to build
    a 'monolithic' Xserver binary like Xnest and Xvfb.
    Patch is here (can be applied both HEAD and netbsd-6):
    https://gist.github.com/tsutsui/9167958
    https://mail-index.netbsd.org/port-x68k/2014/02/27/msg000043.html

    View Slide

  46. 即返信
     謎マシンに寛容?
    Date: Fri, 28 Feb 2014 08:06:10 +1100
    this sounds pretty good!
    ● こうして NetBSD/x68k では 8.0 以降も
    Xサーバー提供が継続
    https://mail-index.netbsd.org/port-x68k/2014/02/27/msg000044.html

    View Slide

  47. Xsunサーバー問題
     モチベーション問題
    ● X68kサーバーは存続したものの
    NetBSD 8.0 から Xsunサーバーは消滅
    ● Sun 3/80 実機は持っていたものの、
    cgfour フレームバッファが認識されない
    問題で手がつかず
    ● Sun3エミュレータ (TME) もあるが、
    実機がないと作業モチベが出ない問題

    View Slide

  48. ここでようやく冒頭の
    Sun3/60 お歳暮展示
    につながります
    作業記録ということで
    前ふりが長くてすいません

    View Slide

  49. Xsunサーバー再始動
     太古ソースの憂鬱
    ● 適当に github に push しつつ作業
    https://github.com/tsutsui/xorg-server-Xsun
    ● 最新は Xorg 1.20 になっていたけれど
    差分の少なそうな Xorg 1.10 で作業
    ● X68kサーバー移植時作業メモを見ながら
    機械的置き換え作業部分から開始
    (記録の重要性を再認識)

    View Slide

  50. 地味コミットログ

    View Slide

  51. Xsunサーバー
     いつもの NetBSDクロスビルド開発
    ● 2022/7/6に作業開始
    ● プロトタイプ宣言不足やSun固有のcgsix
    などでややハマる
    ● 2022/7/12にクロスビルドのリンク到達
    ● Sun 3/60実機がすぐテストできる状態で
    置いてあったのでNFSでバイナリ転送して
    雑に動作テスト

    View Slide

  52. Of course it runs Xorg on NetBSD?
    https://twitter.com/tsutsuii/status/1282285715267543042

    View Slide

  53. 例によってキーボード入力が変?
    https://twitter.com/tsutsuii/status/1282288323956887553

    View Slide

  54. クロスビルド+エミュレータ開発再び
    https://twitter.com/tsutsuii/status/1282717859081154560

    View Slide

  55. クロスビルド+エミュレータ開発再び
    https://twitter.com/tsutsuii/status/1282763674889777153

    View Slide

  56. Sun3/60 実機でも画面表示動作!
    https://twitter.com/tsutsuii/status/1283025130692636673

    View Slide

  57. Twitterクライアント sayakaさんも!
    https://twitter.com/tsutsuii/status/1283063395248254976

    View Slide

  58. エミュレータでカラー表示もOK
    https://twitter.com/tsutsuii/status/1283367442580819968

    View Slide

  59. キーボードがまだおかしいものの
    今回も公式MLに報告
    Subject: X11R7'fied Xsun servers
    Date: Sat, 18 Jul 2020 04:12:31 +0900
    Hi,
    Somehow I've managed to port ancient X11R6 based Xsun servers
    (was in src/xfree/xc/programs/Xserver/hw/sun) to recent X11R7,
    by mechanically adapting all MD sources to Xorg API changes
    as I did for X68k server back in 2014:
    https://mail-index.netbsd.org/port-x68k/2014/02/27/msg000043.
    html
    Sources and patches
    -------------------
    https://mail-index.netbsd.org/port-sun3/2020/07/17/msg000157.html

    View Slide

  60. 今回も即返信
     いつもの安心感
    Date: Sat, 18 Jul 2020 10:18:42 +1000
    this is great news!
    ● 反対もなさそうなので作業を継続
    https://mail-index.netbsd.org/port-sun3/2020/07/18/msg000158.html

    View Slide

  61. X.org 1.20対応もOK!
    https://twitter.com/tsutsuii/status/1284605639587553280

    View Slide

  62. キーボードの問題は残課題にして
    いったんコミット
    Module Name: xsrc
    Committed By: tsutsui
    Date: Wed Jul 22 20:38:29 UTC 2020
    Added Files:
    xsrc/external/mit/xorg-server/dist/hw/sun: README Xsun.man circleset.h
    constype.c constype.man kbd_mode.c kbd_mode.man sun.h sunCfb.c
    sunCfb24.c sunCursor.c sunFbs.c sunGX.c sunGX.h sunInit.c sunIo.c
    sunKbd.c sunKeyMap.c sunMfb.c sunMouse.c sunMultiDepth.c
    Log Message:
    Import WIP Xorg-Server-1.20'fied monolithic Xsun servers.
    This is based on 1.10 version imported into xorg-server.old and
    all upstream API changes between xorg-server 1.10 and 1.20 are
    applied almost mechanically.
    https://github.com/tsutsui/xorg-server-Xsun/commits/xorg-server-1.20
    Xsun and XsunMono servers are also confirmed working with bwtwo on
    3/60 and tme, and cgtwo on tme. XKB stuff is still to be resolved.
    https://mail-index.netbsd.org/source-changes/2020/07/22/msg119657.html

    View Slide

  63. 使えるものは何でも使う
    https://twitter.com/tsutsuii/status/1287168421189173250

    View Slide

  64. XKB の調査
     謎マシン保存問題
    ● Xorg ではキーボード設定に XKB 設定を定義する
    xkeyboard-config のファイルが必要なのですが……
    https://twitter.com/tsutsuii/status/1287754235824574465

    View Slide

  65. XKB の理想と現実
     費用対効果問題
    ● XKB定義には物理位置情報も必要でめんどい
    ● ただ、現状ほとんど使われていない?
    https://twitter.com/tsutsuii/status/1289180649484517376

    View Slide

  66. 調査と試行錯誤でキーボードも解決
    https://twitter.com/tsutsuii/status/1289213831172898816

    View Slide

  67. Sun3/60実機でもキーボードOK!
    https://twitter.com/tsutsuii/status/1289257776951123968

    View Slide

  68. モノクロサーバーサポート問題
    https://twitter.com/tsutsuii/status/1289437204654075907

    View Slide

  69. モノクロサーバーサポート問題
    https://twitter.com/tsutsuii/status/1289451828036300800

    View Slide

  70. モノクロサーバーサポート問題
    https://twitter.com/tsutsuii/status/1291061688762957826

    View Slide

  71. モノクロサーバーサポート問題
    https://twitter.com/tsutsuii/status/1291392757043302400
    https://twitter.com/tsutsuii/status/1291394230707818504
    ➔8bpp以下やモノクロサーバーの存在が考慮されていない?

    View Slide

  72.  秘伝のソース状態
    ● コードはあって動くんだけど実機がない問題?
    Xorgの中の人にもモノクロXサーバーは
    ないことにされているっぽい?
    https://twitter.com/tsutsuii/status/1292292338778116096

    View Slide

  73. とりあえず
    「まだモノクロサーバーは
    動いてるので戻して」
    という
    バグレポは出しました
    いいね はついたけれど
    それ以降音沙汰ないっぽい

    View Slide

  74. 手段のためには目的を選ばないので
    https://twitter.com/tsutsuii/status/1292907889732907009

    View Slide

  75. まあ、これは
    いつものこと(?)なので
    気を取り直して
    残件を順番に処置

    View Slide

  76.  NetBSD/sun3 1.6 (2002年)からpmapバグってました……
    Sun3/80の cgfour も修正して動作!
    https://twitter.com/tsutsuii/status/1296063439954038789

    View Slide

  77. NetBSD/sun3 9.1 にも入りました!
    https://twitter.com/tsutsuii/status/1318933853906456576

    View Slide

  78. 余談
    https://twitter.com/tsutsuii/status/1345287354521509889
     2021年お正月に sun3/80の整備してテスト結果を投稿

    View Slide

  79. おまけ

    View Slide

  80. おまけ

    View Slide

  81. NetBSD/sun3 10.0 に向けて
    https://twitter.com/tsutsuii/status/1548203397450321921
     Xorg 1.20.x の次は 21.1.x 表記に変更されたっぽい

    View Slide

  82. そして時は来た
    https://twitter.com/tsutsuii/status/1582732561553317888
     ついに成果(?)を見せびらかす(??)機会が!!

    View Slide

  83. 展示デモ用 SSD化
    https://twitter.com/tsutsuii/status/1583842906267299840
     過去に輸送によるHDD不調が2回くらいあったので

    View Slide

  84. 展示デモ 自演ツイート
    https://twitter.com/teokurebsd/status/1588975470275502080
     展示デモ用Twitterアカウントを久々に稼働

    View Slide

  85. 展示デモ 予告動画
    https://www.youtube.com/watch?v=_GTVAJPb28k
     Sun 3/60 (MC68020 20MHz)からのツイートには 1分強必要

    View Slide

  86. 展示デモ用 モノクロ壁紙
    https://twitter.com/tsutsuii/status/1590031305642717184
     書いておかないと 後で写真を見てもわからなくなる罠

    View Slide

  87. 展示デモ用 sayakaさん更新
    https://twitter.com/tsutsuii/status/1590313181532282881
     CUI Twitterクライアント + mlterm で時空を超えたデモ

    View Slide

  88. 展示デモ用 twemoji 表示確認
     モノクロで unicode 絵文字も出る mlterm さん。
    こちらもいつもお世話になってます

    View Slide

  89. というわけで、
    ようやく実機展示デモができました!
     11/12ブース風景
    https://twitter.com/tsutsuii/status/1591283573239164930

    View Slide

  90.  NetBSD と Xserver と謎マシン
     機種依存部⇔機種独立部I/Fがキモ
     とりあえずI/F追従なら何とかなる
     クロスビルド環境最強!
     エミュレータもあればさらに快適
     作業記録を残すことが大事!
    まとめ (1)

    View Slide

  91.  むりやりBSDについても考える
     Xも BSDも 30年もののコードがある
    ➔現状を見てる限りまだなんとかなる? つらい?
     modular化のようなモダン化改修と
    旧機種サポートのトレードオフ
    ➔Linuxのrust化のようなことがあったらもう無理かも
     BSDは良くも悪くもコンサバ?
    ➔正直、マンパワーではLinuxに到底勝てない
     昔のマシンで動かすことの意味
    ➔非GPL組み込み用途のローエンド性能要件次第かも
    まとめ (2)

    View Slide