サムネイル|Human68k v2.0のディスク とは、1986年にシャープが自社のパソコンであるX68000用として、ハドソンと共同開発したディスクオペレーティングシステムである。

概要 MC68000を搭載した主に欧米圏のコンピュータは、主にビジネスユースに特化した当時の86系コンピュータと比較して一般的にグラフィック機能などの表現力に優れるものが多く、これらの68系CPUを搭載したコンピュータに搭載されるオペレーティングシステム(OS)環境もまたそれらの性質を反映したグラフィカルなものやマルチタスクに対応した製品が登場したが、当時の水準ではきわめて強力な表現力を持つX68000の標準オペレーティングシステム環境であるHuman68kは、それらの先進的な環境とは対照的に、単にインタフェースのルック・アンド・フィールのみならず、その構造までもがマイクロソフトのMS-DOSに酷似していた。

原始的なシングルタスクのOSであるが、後にバックグラウンドプロセスとしてマルチスレッドがサポートされた。ただしバックグラウンドとされている通り、コンソールまでマルチスレッドではない。

標準のシェル環境として「コマンドシェル」が存在した。マウスを標準搭載していることもあり、グラフィカルなシェル環境として当初はビジュアルシェル、のちにSX-Windowが開発され付属したが、10 - 16MHz程度のMC68000には荷が重く、対応する市販アプリケーションもシャープ製品以外はほとんど現れず、普及することは無かった。また、UNIX風のシェルとして、Human68kを製作したハドソン社員の板垣史彦が、tcshをベースに「fish.x」(Fumihiko Itagaki Shellの略、Human68k ver2.0以降対応)をフリーソフトとして公開している。

X680x0シリーズ全機種に標準付属しており、独立パッケージも発売されていたが、市販アプリケーションの起動ディスクや雑誌の付録フロッピーディスクにもプリインストールされるなどの扱いがなされており、X680x0シリーズ発売終了後の2000年(平成12年)に正式に無償公開された。

Ver.3.02が最終である。

の特徴 は、ストレージのファイルシステムにはの12/16を応用し(但し完全な互換性は無い)、システムコールのファンクションナンバーも概ねに倣うなど、バイナリ・ソースとも互換性は無いものの、その構造は明らかにを模倣した構造であった。

また、システムの構成も、と酷似していた。のシステムファイルは入出力サブシステムIO.SYSとカーネルMSDOS.SYSで構成されるが、単一アーキテクチャをターゲットとしたでは異なるアーキテクチャへの移植を全く考慮する必要が無かったため、また入出力サブシステムはそのほとんどがで搭載されたIOCSによってまかなわれていた事もあり、IO.SYSに相当するモジュールは存在しない(IOCSのバグをパッチしたり、アクセスの遅い上のIOCSをメモリ上にコピーして高速化したり、アルゴリズムを改善して処理を高速化するパッチなどが、デバイスドライバの形としては存在した)。

のコマンドインタプリタはCOMMAND.Xであり、のCOMMAND.COMに相当する。コマンドはよりも改善されていた。

環境では、このCOMMAND.COMを含め、実行バイナリのロード時にバイナリをリロケートする必要がない(これはセグメント+相対アドレスによって実メモリ空間にアクセスする系のアドレッシングアーキテクチャに起因し、その64空間の壁が大きいデメリットだった16ビット(64)幅のセグメント内相対アドレス空間の制約とトレードオフの関係にあるメリットであった)が、COMMAND.Xを始めとするアプリケーションやコマンド等の非リロケータブルバイナリでは実行前にリロケート処理を行う必要があるため、特にチャイルドプロセスなどでこのCOMMAND.Xが頻繁にロードされる際のオーバーヘッドは無視できないものであった。このため、後にリロケータブルバイナリ化されたCOMMAND.Rがフリーソフトとして開発された他、実行ファイルのバインド機能が対応された際にはCOMMAND.Xが常駐部とインタフェース部に別れバインドされた物に替わり、チャイルドプロセスでの起動の場合は不要部をメモリ上にロードする必要がなくなる等といった対策が取られた。

デバイスドライバの組み込みにも、と同様にCONFIG.SYSファイルへの記述が必要であり、その書式もに倣う繁雑で難解なものであるが、後のバージョンではに実装された選択起動などの機能を独自に拡張して実装するなど、の進歩に合わせた拡張も行われた。

バックグラウンドタスク 2.0から、擬似マルチタスクではTSRに相当する。やシェアロックの機能を備えており、擬似マルチタスクを応用したコマンドの製作も可能であった。

実際のところの擬似マルチタスク機能を用いて、コマンドシェルからマルチプロセスを起動させる応用はあまり報告されなかった。上でマルチタスクが広く使われるようになったのは、においてイベントドリブン式マルチタスクが採用されてからである。また 3.0 からコンソールウィンドウによるマルチコンソールに対応し、コンソールアプリケーションならば同時にコンソールウィンドウ毎に実行が可能になった。

メモリ管理 MC68000 CPU の16リニアアドレッシングを活かし、X68000のメインメモリ空間である12までのメモリを一括して管理する事ができた。(X68000では12以上の領域はメモリマップドI/Oや等のシステム領域として確保されていたため、当然ユーザーエリアとして使用することはできない) 8086の64セグメントに由来する、640のメインメモリを可能な限り残すようにバンクメモリを駆使して、ドライバなどを部分退避させるといったメモリの遣り繰りを強いられた系パソコンと違い、増設した全てのメモリがプログラム実行もデータ保存も自由用途のエリアであった。

ディスクなどを確保した際にはユーザーエリアの使用領域がそのまま奪われるといったデメリットも存在したが、後に自由に使用メモリを確保開放させられるディスクドライバが登場したり、一時作業用に512のグラフィックをディスクにできる物も登場した。

X68000では先頭から8単位で2までの領域は自由にスーパーバイザーエリアとして保護が可能なので、デバイスドライバ含むOS領域をアプリケーションの暴走によるアクセスから保護する事ができた。

拡張子 の標準拡張子と比較し、以下の点が異なる。

ファイル形式での拡張子での拡張子再配置情報付き実行可能ファイル.EXE.X相対アドレス実行可能ファイルなし.Rアドレス固定実行可能ファイル.COM.Z

ファイルシステムの論理構造 の 12/16ファイルシステムを元に独自拡張したもので、ファイル名に小文字も使用可能(のと互換性はない)。では未使用の部分のちにWindowsで作成日時やアクセス日の記録に用いられたを使ってファイル名の長さを18文字+拡張子3文字の計21文字までユーザーによって拡張TwentyOne.xを利用した場合。している。と違ってを二重に記録していない(第2FATの領域自体は確保されている)。

脚注