大昔に開発したソフトウェア

他の方との共同開発のものも含まれています.

PTL (Portable Thread Library)

マルチスレッドをサポートしないUNIX上でユーザレベルスレッドを実現するライブラリです.POSIX threads (Pthreads) に準拠したAPIを提供します.

当時(1993年頃)のUNIXではマルチスレッドはほとんどサポートされていませんでした.

その頃のUNIXではSPARC, MIPS, PA-RISC, x86などのさまざまなプロセッサアーキテクチャが使われていましたが,PTLは特定のプロセッサアーキテクチャに依存しないことが特徴でした.スタックポインタの設定やコンテクストスイッチといった低レベルの処理もプロセッサに依存しない方法で行うようになっていました.

(趣味で書いていたら修論のテーマになったという・・・)

LANAシステム

認証付き情報コンセントシステムです.いまでは普通に認証スイッチがありますが,昔はありませんでした.

  • 1999年〜

OSKitのUVMサポート

ユタ大学で開発された,OSを自作するためのツールキットであるOSKitにNetBSDの仮想メモリシステムであるUVMを移植し,簡単なユーザモードプロセスを扱える機構を追加しました.

  • 1999年〜2000年
  • 記述言語: C言語, アセンブラ(x86)

bunkenhtml

bibtex形式の文献ファイルからHTML形式の業績リストを作成するプログラムです.

  • 2002年
  • 記述言語: bibtex, perl

dis.x (SHARP X68000用)

SHARP X68000用のOSであるHuman68k上の実行ファイルを解析してMC68000のアセンブリ言語ソースを出力する逆アセンブラです.実行ファイルの命令部分とデータ部分を認識し,実行ファイルを再アセンブル可能なソースコードを出力します.ソースコードがないプログラムを解析したり改造するのに便利でした.付いた名前が「悪魔のツール」.

  • 1989年〜1992年
  • 記述言語: C言語,yacc (GNU bison).
  • 雑誌 Oh!X 1996年6月号 (ソフトバンク) に掲載して頂きました.記事は https://github.com/ktabe/articles で読めます.
  • 他の方によって,MC68030のサポートや,Linux, FreeBSD, Windows上でのクロス逆アセンブルのサポートなどが追加されています.
  • Link1, Link2

trace.x (SHARP X68000用)

Human68k上でプログラムを実行する際に,発行しているDOSコールを表示するプログラムです.UNIXなどのstrace相当.

  • 記述言語: C言語,アセンブラ(MC68000).

hupairlib (SHARP X68000用)

Human68kでコマンドライン引数をHUPAIR規格で受け渡しするためのライブラリ.

  • 1992年〜1993年.
  • 記述言語: C言語,アセンブラ(MC68000).
  • Link

SHARP X1用 拡張漢字BASIC

SHARP X1標準のHu-BASICではJIS漢字をBASICプログラムに直接書くことができなかったので,これをできるように拡張するものです.半角文字はテキストVRAMに書きますが,JIS漢字はグラフィックスとして描画していました.高校生の頃の作.

  • 記述言語: アセンブラ(Z80)
  • 雑誌 Oh!MZ 1987年4月号(ソフトバンク)に掲載して頂きました.スキャンした記事は https://github.com/ktabe/articles で読めます.