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

OSC2015Kyoto NetBSD and old machines

OSC2015Kyoto NetBSD and old machines

OSC2015 関西@京都 8/7(金) 15時〜の NetBSDセミナー枠で発表した
「20年前のマシンを NetBSDでメンテするということ」
のスライドです。

Izumi Tsutsui

August 07, 2015
Tweet

More Decks by Izumi Tsutsui

Other Decks in Programming

Transcript

  1. 60種類以上?  2015年8月現在 acorn32 algor alpha amd64 amiga amigappc arc

    atari bebox cats cesfic cobalt dreamcast emips epoc32 evbarm evbmips evbppc evbsh3 ews4800mips hp300 hpcarm hpcmips hpcsh i386 ibmnws hppa iyonix landisk luna68k mac68k macppc mipsco mmeye mvme68k mvmeppc netwinder news68k newsmips next68k ofppc pmax prep rs6000 sandpoint sbmips sgimips shark sparc sparc64 sun2 sun3 vax x68k zaurus http://www.NetBSD.org/ports/
  2. 謎マシン移植とは OS共通部分 メモリ管理 タスク管理 ファイルシステム ネットワークプロトコル …… 共通 デバイス ドライバ

    SCSI ATA Ethernet …… CPU 固有部 割り込み アドレス変換 …… 機種固有部 ←OSの全体の5%くらい?
  3. 謎マシン移植とは OS共通部分 メモリ管理 タスク管理 ファイルシステム ネットワークプロトコル …… 共通 デバイス ドライバ

    SCSI ATA Ethernet …… CPU 固有部 割り込み アドレス変換 …… 機種固有部 ←OSの全体の5%くらい? この部分を書くのが 「移植」という作業
  4. OS構成 OS共通部分 メモリ管理 タスク管理 ファイルシステム ネットワークプロトコル …… 共通 デバイス ドライバ

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

    SCSI ATA Ethernet …… CPU 固有部 割り込み アドレス変換 …… 機種固有部 ←OSの全体の5%くらい? OS全体共通部分が変わった場合、 機種別の接続I/Fも書き直す必要がある
  6. OS構成 OS共通部分 メモリ管理 タスク管理 ファイルシステム ネットワークプロトコル …… 共通 デバイス ドライバ

    SCSI ATA Ethernet …… CPU 固有部 割り込み アドレス変換 …… 機種固有部 ←OSの全体の5%くらい? 共通のドライバが書き換わっただけで、 ある日突然動かなくなった事例も
  7. memset(lp, 0, sizeof(struct disklabel)); memset(lp, 0, sizeof(struct cpu_disklabel)); memset(lp, 0,

    sizeof(struct disklabel)); memset(clp, 0, sizeof(struct cpu_disklabel)); これで直ったんだけど…