自作インタプリタを少しずつ進化させて、複数のCPUやOSをサポートできるようになりました。クラス設計で試行錯誤した過程を残しておきます。
続きを読むi8086とPDP-11のインタプリタを統合
i8086インタプリタにPDP-11インタプリタを統合しました。1つのプログラムでMINIX 2とUNIX V6の両方のバイナリを動かせます。
UNIX V6のccを動かしてカーネルがビルドできることを確認しました。
V6移植ハッカソンで使うため、2年前に作ったPDP-11のインタプリタをi8086インタプリタの構造に合わせて移植しました。MINIX 2とUNIX V6のUNIXとしての共通部分は基底クラスで共用しています。UNIX V6をi8086に移植する際にインタプリタでシステムコールのABIを実装すれば、カーネルを移植する前にユーザーバイナリの動作確認を切り離して行えるのではないかという狙いです。
続きを読むV6移植ハッカソン
【追記】残念ながら参加者が少なかったため中止とさせていただきました。今後は池袋バイナリ勉強会の中で作業を進める予定です。
お盆休みの四日間に渡ってUNIX V6を8086に移植するハッカソンを開催します。
- 8/12(月) V6移植ハッカソン(1日目)
- 8/13(火) V6移植ハッカソン(2日目)
- 8/14(水) V6移植ハッカソン(3日目)
- 8/15(木) V6移植ハッカソン(4日目)
ご都合の良い日だけでも結構ですので、ご参加をお待ちしています。
続きを読む