最近 ELKS0.6プロジェクトのリリースが発表されました (埋め込み可能なLinuxカーネルサブセット)、 Linuxのようなオペレーティングシステムを開発します Intel 8086、8088、80188、80186、80286、およびNEC V20 /V30ビットプロセッサ用。
オペレーティングシステム 古いIBM-PCXT/ATクラスのコンピューターとSBC/SoC/FPGAの両方で使用できます IA16アーキテクチャを再現します。 このプロジェクトは1995年から開発されており、メモリ管理ユニット(MMU)のないデバイス用のLinuxカーネルのフォークとして開始されました。
ネットワークスタックには、通常のLinuxカーネルTCP/IPスタックとユーザースペースで実行されるktcpスタックのXNUMXつのオプションがあります。
ネットワークカードの NE2KおよびSMC準拠のイーサネットアダプタがサポートされています。 SLIPおよびCSLIPを使用して、シリアルポートを介して通信チャネルを作成することもできます。 サポートされているファイルシステムには、Minix v1、FAT12、FAT16、およびFAT32が含まれます。 起動プロセスは、/ etc / rc.d/rc.sysスクリプトを使用して構成されます。
16ビットシステムに適合したLinuxカーネルに加えて、プロジェクトは一連の標準ユーティリティ(ps、bc、tar、du、diff、netstat、mount、sed、xargs、grep、find、telnet、meminfoなど)を開発します。 )、bash互換シェル、ディスプレイコンソールウィンドウマネージャー、Kiloおよびviテキストエディター、Nano-X Xサーバーベースのグラフィカル環境を含みます。実行可能なファイル形式を含む多くのユーザースペースコンポーネントは、Minixから借用されています。
ELKS0.6の主な新機能
この新しいバージョンでは BASIC言語通訳が追加されました、ワークステーションおよびROMフラッシュシステムに適しています。 これには、ファイル(LOAD / SAVE / DIR)およびグラフィックス(MODE、PLOT、CIRCLE、およびDRAW)を操作するためのコマンドが含まれます。
目立つもう一つの変化はそれです 数学ライブラリが標準Cライブラリに追加されました また、浮動小数点数を操作する機能は、printf / sprintf、strtod、fcvt、ecvt関数で提供されています。 strcmp関数コードが書き直され、大幅に高速化されました。 printf関数のよりコンパクトな実装が提案されています。 in_connectおよびin_resolv関数が追加されました。
また、 カーネルはFATファイルシステムのサポートを改善しました、マウントポイントの最大数を6に増やし、タイムゾーンの設定のサポートを追加し、uname、usatfs、およびアラームシステムコールを追加し、タイマーで動作するようにコードを書き直しました。
それに加えて tarアーカイブを操作するためのプログラムが追加されました。 マニュアルを表示するためのmanおよびemanコマンドを追加し、圧縮されたmanページを表示するためのサポートを提供し、「networkreset」コマンドを追加しました。 nslookupコマンドを書き直し、マウントされたパーティションに関する情報を表示する機能をマウントコマンドに追加しました。
一方で、それも際立っています FATパーティションでのlsコマンドのパフォーマンスの向上、およびNE8Kネットワークドライバの2ビットシステムのパフォーマンスとサポートが大幅に向上しました。
その他の変更点 目立つ:
- ftpd FTPサーバーは、SITEコマンドとタイムアウトを設定する機能をサポートするように書き直されました。
in_gethostbyname呼び出しを介したDNS名の解決のサポートは、すべてのネットワークアプリケーションに実装されています。 - テストコマンド( "[")はbash実装に組み込まれています。
- ディスク全体をsysコマンドにコピーするためのサポートが追加されました。
- ホスト名とIPアドレスをすばやく構成するための新しい構成コマンドが追加されました。
- LOCALIP =、HOSTNAME =、QEMU =、TZ =、sync =、およびbufs=オプションを/bootoptsに追加しました。
- PC-98コンピュータのポートにSCSIおよびIDEハードドライブのサポートが追加され、新しいBOOTCSローダーが追加され、外部ファイルからのロードのサポートが実装され、ディスクパーティションのサポートが拡張されました。
8018Xプロセッサのポートにより、ROMからの実行のサポートが追加され、割り込み処理が改善されました。
最後に あなたがそれについてもっと知りたいのなら、 ソースコードはGPLv2ライセンスの下で配布されていることを知っておく必要があります。 システムは、フロッピーディスクに書き込んだり、QEMUエミュレーターで実行したりするためのイメージの形式で提供されます。詳細を参照できます。 次のリンクで。