Mona/スペック のバックアップ差分(No.15)



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

トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新の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.