カーミット (プロトコル)

カーミット (Kermit) について



カーミットは、コンピュータファイルを転送するためのプロトコルおよび通信ソフトウェアです。このシステムは、ファイルの転送を行うだけでなく、端末エミュレータとしての機能やスクリプト言語によるプログラミング、さらには異なるハードウェアオペレーティングシステム間での文字コードの変換もサポートしています。

技術的背景



カーミットプロトコルは、シリアル通信を通じて動作し、全二重および半二重のデータ通信が可能です。このプロトコルは、テキストファイルとバイナリファイルを、システムやメディアに依存せずに転送する能力を持っています。また、数百種類の異なるコンピュータオペレーティングシステムに実装されているため、幅広い環境で使用することができます。

全二重通信を利用した場合、カーミットスライディングウィンドウプロトコルを使用して、選択的な再送機能を提供し、この結果、高い性能とエラー回復を実現します。適切に実装されたカーミットは、他のプロトコルであるZMODEMYMODEMXMODEMと同等、あるいはそれ以上の性能を発揮することが可能です。特に、RS-232C経由の通信においては、XMODEMが全256種類の文字コードを転送する必要があるのに対し、カーミットは特定のASCII制御コードを無視することができ、統計多重化が行えます。

歴史的背景



カーミット1981年コロンビア大学で開発され、学生たちはこのソフトウェアを使い、様々なマイクロコンピュータIBMメインフレームやDECのDECSYSTEM-20との間でファイルを転送することができました。これにより、異なるキャラクタセット(EBCDICASCII)の間での文字コード変換が自動的に行われるように設計されていました。また、CP/M|CP_Mマシン間での異なるフロッピーディスクフォーマットへの対応も含まれており、これによってデータの柔軟な取り扱いが可能になりました。

カーミットは誕生以来、20年以上にわたってデータ通信のデファクトスタンダードとして広く利用されてきました。教育用の小さなプロジェクトから、国際宇宙ステーションにおける互換性の問題の解決まで、使われる範囲は多岐にわたります。特に、C-Kermitは数多くの環境に移植され、「Hello World|Hello_world」の次に多くのプログラムに続きました。1983年には、MS-DOS用のカーミットが開発され、その後はネットワーク通信にも対応したバージョンが登場しました。

現在使用されているカーミットの実装には「C-カーミット」(UnixおよびOpenVMS用)と「カーミット95」(Windows 95以降のWindowsおよびOS/2)があります。他にも多くのバージョンが存在し、現在でもカーミットプロトコルが起動時のブートストラップとして利用されることがあると言われています。「あなたのトースターにマイクロチップがあるなら、どこかでカーミットが移植されているかもしれない」という話が示すように、その移植性は非常に広範囲に及んでいます。

マペットと著作権



カーミットの名称は、マペットのカーミット(Kermit The Frog)から取られています。特に、Macintosh版のカーミットのアイコンには、このキャラクターが描かれていました。商標の問題を回避するために、非公式のバクロニムが作成されることもありました。

カーミットは公開されたプロトコルであり、誰でもこの技術をもとに新たなプログラムを開発できますが、一部のソースコードにはコロンビア大学の著作権が存在する点に注意が必要です。カーミットは、広く利用されるソフトウェアでありながら、その発展と普及において非常に重要な役割を果たしてきました。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。