Mona/スペック のバックアップソース(No.28)


** Monaのスペック [#h2101ab6]

|機能|説明|h
|ファイルシステム|FAT12/ISO9660ファイルシステムをサポート|
||ファイルの読み込み|
||ファイルの書き込み|
|並列処理|プリエンプティブなマルチタスク|
||プリエンプティブなマルチスレッド|
||排他のためのMutexを提供|
||TSS(Task State Segment)をカーネル全体で1つのみ使用して、スレッドスイッチを実現|
|ネットワーク|試験的にUDP, ICMPに対応|
|実行モード|ユーザーモード、カーネルモードの2種類をサポート|
|GUI|Mona Forms, BayGUIの二つのGUIをサポート。新規にGUIを追加することも可能。|
|入力装置|キーボードをサポート|
||PS/2マウスをサポート|
|サウンド|Beep APIを提供|
|浮動小数計算|FPUのサポート。sin/cos/tan/atan/atan2|
|実行形式|ELF(実行形式)&EXE(実行形式)をサポート。ファイルシステムから実行ファイルを読み込んでプロセス生成可能|
||EL2/EX2(ELF/EXEをBZIP2で圧縮したもの)をサポート|
||EL5/EX5(ELF/EXEをTEK5(STK5)で圧縮したもの)をサポート|
||EXEはDLLにも対応|
|表示|VESAの機能により高解像度・多色に対応(MONA.CFGで解像度を変更可能)|
||jpegの表示が可能nikqさん提供|
||mpegの表示が可能nekoさん提供|
||bmpの表示が可能|
||3DライブラリMesaの使用が可能|
|プロセス|各プロセスに独立したアドレス空間を提供|
||オンデマンドページングにより必要になったときに物理メモリを確保|
|スケジューラ|動的優先度スケジューラを搭載|
|プロセス間通信|汎用メッセージング機構send/recieve/peekによりプロセス間通信のサポート|
||プロセス間共有メモリページのサポート|
|ライブラリ|カーネル・ユーザープログラムで使用可能なコレクションクラスHash Map, HList, Binary Treeの提供|
|言語|C++言語によるカーネルのオブジェクト指向開発|
||C++言語によるアプリケーション開発をサポート(g++等を使用)|
|システムコール|カーネル資源の利用にシステムコールをサポート|
||システムコールをラッピングしたクラスライブラリもサポート|
||時刻取得|
||FD読み書き|
||スレッド作成|
||MUTEX作成|
||プロセス生成|
||共有メモリページ作成|
||仮想キーコードによりキー情報取得|
||Randomクラスによる乱数|
|マイクロカーネル化にむけて|キー入力を制御するキーボードサーバーがユーザーモードで稼動|
||マウス入力を制御するマウスサーバがユーザーモードで稼動|
||GUIアプリケーションにフォント情報を提供するGUIサーバーがユーザーモードで稼動|
|IRQ|割込み通知メッセージをサポート|
|I/O|ユーザーアプリからのI/Oをサポート|
|シェル|Schemeのシェルを提供|
||Schemeの仕様である R5RS にあるものはほとんどサポート|
||ライブラリのロード/プロセスの起動(同期・非同期)|
||シェルスクリプト|
|VIDEO|VRAM操作のScreenクラス提供|
||バッファとして仮想Screenクラスも提供|
|アプリケーションプログラミング|g++などgnuのフリーのツールで開発が可能(cygwinを使用すればWindows上で容易に開発が可能)|
||C++言語での開発が可能|
||MonaForms,BayGUIにより簡単にGUIが作成可能。モナーフォントによりAAが表示可能|
||printf, malloc/free, new/delete, File Input Stream, Dateなど続々とクラス・関数が追加されています。|
||開発支援ツールとしてMonaADK(Mona Application Development Kit)を用意|
|アプリ等|透明感のあるデモ・マウスを使った簡易オセロ、psコマンドなど|
|言語|Squirrelの実行環境 monasq|
|言語|Schemeの実行環境 |
|エミュレーター対応|bochs2.1.1(--enable-vbeビルド版)で動作|
||Vmware4.0.5(win)で動作|
||Virtual PC for win 5.1で動作|
||Virtual PC 2004で動作|
||qemu for WIN32で動作|
||qemu for GNU/Linuxで動作|
||qemu for NetBSDで動作|
||qemu for MacOSXで動作|

** コメント [#wcec61f0]
#pcomment(,1000,below,reply)

トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Modified by mona
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji
Powered by PHP 5.2.17
HTML convert time to 0.012 sec.