IRMX

iRMX とは米国インテル社が1970年代後半から開発販売したintel製の8080, 8086, 80286, 80386用のリアルタイムオペレーティングシステム（以下RTOS）である。iRMXはIntel Real-time Multitasking eXecutiveを意味する頭字語である。

iRMXは当初はMULTIBUS規格の産業用規格のコンピュータで使われるリアルタイムマルチタスクOSとして開発、発展していたが、intelのx86CPUを使ったPC(パーソナルコンピュータ）が産業用用途でも使われるようになって、MS-DOSやWindowsと協調動作するDOSRMX, iRMXとWindowsが同時に動作するiRMX for Windows. 仮想化技術を使った、現在のINtimeに引き継がれてきた。

INtimeのカーネルはiRMXのRTOSとしてのアーキテクチャを引き継いでおり、基本的にiRMXの上位互換として作られている。

また、INtimeを使ったアプリケーション開発ではマイクロソフトのVisual StudioのC言語とC++言語が使える。

iRMXの特徴

１）iRMXはintelがintelアーキテクチャのCPU用に開発したソフトウェアなので、intel及びintel互換のCPUでのみ動作する。

２）iRMXは独自のファイルシステム(iRMXフォーマット）のスタンドアローンOSだった。

iRMX OSはMS-DOSやUnixに先行するOSだったので、iRMXフォーマットのファイルシステムはその後出現したMS-DOSのFATシステムやUnixのファイルシステムと互換性がなかった。この課題はその後のDOSRMXやiRMX for Windows、INtimeなどのiRMX互換OSでMS-DOS及びWindowsのファイルシステムを利用できるようになって改善された。

３）キーボードと画面ディスプレイを使ったコンソール機能はキャラクターベースで、かな漢字変換機能と日本語表示機能が実現できなかった。

この課題は、その後のDOSRMXやiRMX for Windows、INtimeで日本語機能入出力機能をもったMS-DOS、Windowsと協調動作っするようになって解決した。

４）32ビット版のiRMXIIIのメモリー空間は最大4GBである。

５）ハードウェア割込み機能が利用できる。

６）アプリケーションプログラムはマルチジョブ（マルチプロセス）、マルチタスク（マルチスレッド）方式で、プリエンプティブなタスクの優先度管理を実行。

７）登録できる最大タスク数は約700で、256レベルのプライオリティ方式のスケジューリング。

８）アプリケーション開発言語はintel製のiC-386, PLM-386, FORTRANM-386, ASM-386。これらは販売とサポートを終了している。iRMXカーネルを発展させたINtimeの開発言語はVisual StudioのC/C++言語を使用。

iRMXの歴史

１）1970年代にはコンピュータハードウェアの種類も少なく、IBMのメインフレームコンピュータやDECのPDP11などが使われていて、Unixや、CP/M、MS-DOSなどのシングルタスクOSすら存在していなかった。intelが最初にリリースした4ビットマイコン、8ビットマイコンではアセンブラー言語でアプリケーションソフトウェアを開発することが多かったが、intelは1970年代後半に、最初の8ビットマイクロプロセッサー8080用のリアルタイムマルチタスクOSを製品としてリリースしたのがiRMXの始めである。

２）その後、8086CPU、80286CPU、32ビットの80386CPUの出現に沿って、iRMX86、iRMX286, iRMX386とバージョンアップしてきた。iRMX386はその後製品名をiRMXIIIと名称を変えた。

３）iRMXが動作するハードウェアは主に制御用マイクロコンピュータシステムの規格であるMULTIBUSシステムで使われていて、リアルタイム性と信頼性を必要とする製鉄プラントや発電設備の制御用コンピュータのRTOSとして使われるようになった。

４）1990年初頭には、8086用のiRMX86が株式会社精工舎の業務用コンピュータSEIKO 9500のマルチタスクOSとして採用されていた。

５）その後、intelのx86CPUがIBM PCに使われるようになって、PC(パーソナルコンピュータ）がコンピュータの主流になり、産業界でもコストが安くて調達が容易なPCを多用するようになり、いわゆる産業用PC(IPC)という製品ジャンルが生まれた。

６）1990年、intelはPCで動作するiRMXとして、intelCPUのハードウェアマルチタスク機能を使った、マルチOSシステム「DOSRMX」という製品を1990年頃にリリースした。PCハードウェアで32ビットのiRMXIIIを動作させてリアルタイム機能を実現しながらMS-DOSも同時に利用できた。DOSRMXはさらにMS-DOSの環境下でWindows3.1を動作させることもできた。

７）1992年、マイクロネットはNEC製のPC-9801で動作するdosRMX-98、winRMX-98を米国intel社と共同開発をした。その後PC/AT互換機用のnetRXMも共同開発をした。

８）1997年、intel社はiRMXのビジネスとライセンスを米国RadiSys社に移管した。

９）1999年、WindowsNTとiRMXIIIカーネルが同時に動作するINtimeを開発し、V1.0をリリースした。

10）2000年、RadiSys社はiRMXエンジニアと、iRMXのビジネスをTenAsys社（オレゴン州）に移管した。

株式会社マイクロネットが日本を含むアジア地区の総代理店になった。

11）2001年、INtime2.1をリリース

12）2004年、オリジナルのiRMXの機能やインタフェースを維持した、Windows NTと協調動作するiRMX for Winodws(iRFW)をリリース。

iRMX for WindowsはINtimeと比較して、C-386、PLM-386、FORTRAN-386、ASM-386など従来世代の開発言語に対応すること、独自のファイルドライバ（ディスクI/O）を持っていること、メモリアクセス方法が、近年の32ビットのフラットアドレッシングのほか旧世代CPUで多用された16ビットのセグメントアドレッシング機能も有すること、などである。iRFWは現在販売していない。

13）2015年頃、PCハードウェアでiRMXIIIカーネルが単独動作する「Distributed RTOS (dRTOS)」をリリースした。

14）2000～2022年、intelの最新のCPUへの対応と最新のVisual Studioへのバージョンアップ、フィールドバス対応などを行った。

15）2023年、最新のintelCPUに対応したINtime V7をリリースした。

脚注

参考文献

外部リンク 
TenAsys
株式会社マイクロネット
株式会社マイクロネット－INtime/iRFWの歴史

リアルタイムオペレーティングシステム