SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
  アルファ・ワールド
       -PCIの双バスえとみ なるあき
@nullnilaki
自己紹介
• 名古屋港の港湾運送会社に勤務
• 現在は情報システム部に所属
(数年前は倉庫で荷物を数えてました)
• 仕事ではCOBOLしか触った事が有りません
(C言語?知らない子ですね…)
• サーバの設定もベンダーさん任せなので
UNIXを触るのはコンパイラのコマンドを叩くだけ
(カーネル?知らない子ですね…)
ぞうを運んだりします。すごくくさい…

冬の名古屋港はキレイ!
DEC Alphaとは?
• DECが設計したCPU
(僕が物心付いたときにはDECは既に…
(´;ω;`) ウッ…)
• 64bit RISCプロセッサ
• ちょうはやい
• NetBSDでは仮想アドレス43bit(仮想アドレス空間8TB)

ちなみに
Tru64UNIXは
ライセンスを入力
しないと使えません
AlphaStation DS15(TITAN chipset)

黒くて…
カコイイ
(;゚∀゚)=3ハァハァ
NetBSDで動かなかったので
OpenBSDから移植(send-pr-48148)

Notice!:
Do not use radeonfb because
Display blackout and panic.
TITAN chipsetの特徴
• 独立したPCIバスが二つある!?
BUSごとのBase addressさえ
設定すれば大丈夫!(tsp_config構造体が一本のバスを管理)

P-01
はまったところ(radeonfb編その1)

文字が出力されず
radeonfb_putchar_wrapper
で誤摩化してたら…

radeonfb.c,v 1.66
で修正済み!
P-01
はまったところ(radeonfb編その2)

radeonfb_set_backlightを実行すると画面が暗転
Alphaはキーボードがささってないと、フレームバッファに出力されない…

シリアルコンソールに無理矢理出力
させるという技を覚える!
radeonfb_set_backlightが
うまく動かないのは
Alphaだから?
はまったところ(radeonfb編その3)
はまったところ(cn_tab編1)

cn_tabはコンソールの出力定義
この切り替え処理に失敗すると沈黙…

ファームウェアの文字出力から
radeonfb_putcharに切り替え
はまったところ(cn_tab編2)

ファームウェアが文字を出力しているところ

P-01
はまったところ(cn_tab編3)
• どうしても構造体のアドレスの代入に失敗…

これだと、OK!

NAZEDA!!
すったもんだの末に、
radeonfbが使えるようになったものの…
はまったところ(bus_space_mmap編1)
偉大なるソフトウェア
mlterm-fbが使えない!!
はまったところ(bus_space_mmap編2)

arakikenさんとあおやまさんが
アドバイスくださった!!(´;ω;`)ウウウ
はまったところ(bus_space_mmap編3)

ユーザーランドからだと、
画面に全く反応がない

radeonfbの中でフレームバッファのアドレスに
直接書き込みすると反応はあった。
はまったところ(bus_space_mmap編4)

解決!!
はまったところ(bus_space_mmap編5)

AlphaでXを動かす人は
いない?

P-01
そしてmlterm-fbが動き…

P-01
Xのことで混乱するも…

oshimayaさんの超わかりやすい
解説!!
mikutter動いた。 完!
謝辞
• 本当に尊敬してます
つついさん
• アドバイスいただけて、僕はメチャメチャ嬉しいです
  arakikenさん、あおやまさん、oshimayaさん
• 進捗あった日の翌朝にふぁぼって元気づけてくださる
ebijunさん(僕の密かな楽しみ)
• Compaq Professional workstaion XP1000を譲って下さった
impreza_gf8さん
• pkgsrcを教えて下さる
ふじわらさん、おばたさん、おのでらさん
• ほか、twitterでおもしろツィートをして、笑わせて下さる
  フォロー、フォロワーの方々
参考文献
つついさんのサイト
BSDマガジン

Más contenido relacionado

La actualidad más candente

フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-たけおか しょうぞう
 
HaskellではじめるCortex-M3組込みプログラミング
HaskellではじめるCortex-M3組込みプログラミングHaskellではじめるCortex-M3組込みプログラミング
HaskellではじめるCortex-M3組込みプログラミングKiwamu Okabe
 
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGOSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGHideki Aoshima
 
NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出Mitsunori Satomi
 
RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状Device WebAPI Consortium
 
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)洋史 東平
 
止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさ止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさTomotake Koike
 
pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話Akio OBATA
 
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話Genta Iha
 
Inkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvmInkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvmMasami Hiramatsu
 
Waylandでも動くキーリマッパーを作りたかった話
Waylandでも動くキーリマッパーを作りたかった話Waylandでも動くキーリマッパーを作りたかった話
Waylandでも動くキーリマッパーを作りたかった話Yuki Ito
 
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなし
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなしpkgsrcに関する何か 2008 - 何かは何かであって、何かでなし
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなしAkio OBATA
 
NetBSD移植の昔話
NetBSD移植の昔話NetBSD移植の昔話
NetBSD移植の昔話Masaru Oki
 
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2Atsushi Tadokoro
 
デザイナーがTkinterで遊んでみました。
デザイナーがTkinterで遊んでみました。デザイナーがTkinterで遊んでみました。
デザイナーがTkinterで遊んでみました。Chachamaru
 

La actualidad más candente (17)

フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
 
Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介
 
HaskellではじめるCortex-M3組込みプログラミング
HaskellではじめるCortex-M3組込みプログラミングHaskellではじめるCortex-M3組込みプログラミング
HaskellではじめるCortex-M3組込みプログラミング
 
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGOSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUG
 
Introduction to raspberry pi_エンジニア勉強会20130618
Introduction to raspberry pi_エンジニア勉強会20130618Introduction to raspberry pi_エンジニア勉強会20130618
Introduction to raspberry pi_エンジニア勉強会20130618
 
NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出
 
RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状
 
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
 
止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさ止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさ
 
pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話
 
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話
Debianのstart-stop-daemonがLXC対応じゃないのでいじってたら何故かkFreeBSDも触ることになった話
 
Inkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvmInkernel disasm-from-intelsdm-kernelvm
Inkernel disasm-from-intelsdm-kernelvm
 
Waylandでも動くキーリマッパーを作りたかった話
Waylandでも動くキーリマッパーを作りたかった話Waylandでも動くキーリマッパーを作りたかった話
Waylandでも動くキーリマッパーを作りたかった話
 
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなし
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなしpkgsrcに関する何か 2008 - 何かは何かであって、何かでなし
pkgsrcに関する何か 2008 - 何かは何かであって、何かでなし
 
NetBSD移植の昔話
NetBSD移植の昔話NetBSD移植の昔話
NetBSD移植の昔話
 
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2
Interactive Music II SuperCollider応用 JITLib - ライブコーディング 2
 
デザイナーがTkinterで遊んでみました。
デザイナーがTkinterで遊んでみました。デザイナーがTkinterで遊んでみました。
デザイナーがTkinterで遊んでみました。
 

Destacado

Special Report_Remodel for Digital Transition
Special Report_Remodel for Digital TransitionSpecial Report_Remodel for Digital Transition
Special Report_Remodel for Digital TransitionLeiLani Cauthen
 
The Cullen Family Tree
The Cullen Family TreeThe Cullen Family Tree
The Cullen Family TreeJessica Nicole
 
SpecialReportModelArchitecture
SpecialReportModelArchitectureSpecialReportModelArchitecture
SpecialReportModelArchitectureLeiLani Cauthen
 
ME595-Selection of Material for Piping and Structural as per Codes- Evaluati...
ME595-Selection of Material for Piping and Structural as per Codes-  Evaluati...ME595-Selection of Material for Piping and Structural as per Codes-  Evaluati...
ME595-Selection of Material for Piping and Structural as per Codes- Evaluati...Shantaram Mayadeo
 
あるmmapの話
あるmmapの話あるmmapの話
あるmmapの話nullnilaki
 
Anand Shah_Presentation_IE Business School application
Anand Shah_Presentation_IE Business School applicationAnand Shah_Presentation_IE Business School application
Anand Shah_Presentation_IE Business School applicationAnand Shah
 
Special Report on 71 Characteristics of Digital Curriculum
Special Report on 71 Characteristics of Digital CurriculumSpecial Report on 71 Characteristics of Digital Curriculum
Special Report on 71 Characteristics of Digital CurriculumLeiLani Cauthen
 
Social responsibility in business
Social responsibility in business Social responsibility in business
Social responsibility in business anthonyvimalan
 
あるクリスマスの話
あるクリスマスの話あるクリスマスの話
あるクリスマスの話nullnilaki
 
あるコンテキストスイッチの話
あるコンテキストスイッチの話あるコンテキストスイッチの話
あるコンテキストスイッチの話nullnilaki
 

Destacado (19)

Special Report_Remodel for Digital Transition
Special Report_Remodel for Digital TransitionSpecial Report_Remodel for Digital Transition
Special Report_Remodel for Digital Transition
 
A New Light - Part 5
A New Light - Part 5A New Light - Part 5
A New Light - Part 5
 
A New Light - Part 8
A New Light - Part 8A New Light - Part 8
A New Light - Part 8
 
A New Light - Part 7
A New Light - Part 7A New Light - Part 7
A New Light - Part 7
 
A New Light - Part 3
A New Light - Part 3A New Light - Part 3
A New Light - Part 3
 
A New Light - Part 4
A New Light - Part 4A New Light - Part 4
A New Light - Part 4
 
A New Light - Part 2
A New Light - Part 2A New Light - Part 2
A New Light - Part 2
 
The Cullen Family Tree
The Cullen Family TreeThe Cullen Family Tree
The Cullen Family Tree
 
Perbintangan
PerbintanganPerbintangan
Perbintangan
 
A New Light - Part 6
A New Light - Part 6A New Light - Part 6
A New Light - Part 6
 
A New Light - Part 1
A New Light - Part 1A New Light - Part 1
A New Light - Part 1
 
SpecialReportModelArchitecture
SpecialReportModelArchitectureSpecialReportModelArchitecture
SpecialReportModelArchitecture
 
ME595-Selection of Material for Piping and Structural as per Codes- Evaluati...
ME595-Selection of Material for Piping and Structural as per Codes-  Evaluati...ME595-Selection of Material for Piping and Structural as per Codes-  Evaluati...
ME595-Selection of Material for Piping and Structural as per Codes- Evaluati...
 
あるmmapの話
あるmmapの話あるmmapの話
あるmmapの話
 
Anand Shah_Presentation_IE Business School application
Anand Shah_Presentation_IE Business School applicationAnand Shah_Presentation_IE Business School application
Anand Shah_Presentation_IE Business School application
 
Special Report on 71 Characteristics of Digital Curriculum
Special Report on 71 Characteristics of Digital CurriculumSpecial Report on 71 Characteristics of Digital Curriculum
Special Report on 71 Characteristics of Digital Curriculum
 
Social responsibility in business
Social responsibility in business Social responsibility in business
Social responsibility in business
 
あるクリスマスの話
あるクリスマスの話あるクリスマスの話
あるクリスマスの話
 
あるコンテキストスイッチの話
あるコンテキストスイッチの話あるコンテキストスイッチの話
あるコンテキストスイッチの話
 

DEC_6600,DEC_TITAN Implementation of NetBSD(仮)