紹介
- Snowdrop OSはIBM PCアーキテクチャ向けの16ビットリアルモードOS。
- x86アセンブリ言語でゼロから設計・開発された。
- ファイルマネージャー、テキストエディタ、グラフィックアプリケーション、BASICインタプリタ、x86アセンブラ、デバッガなど、さまざまなユーティリティを含む。
- DOSゲームを移植し、ゲームも提供している。
- フロッピーディスクイメージとCD-ROMイメージで配布され、ハードディスクへのインストールも可能。
ソースコード
- ブートローダーは512バイトに収められており、カーネルをロードする。
- カーネルはアプリケーションに基本的なサービスと抽象化を提供する。
- グラフィックスおよびGUIフレームワークは、マウスベースのグラフィックアプリケーションを作るために必要。
- x86アセンブラはSnowdrop OS内で低レベルアプリケーションを作成するために使用される。
- BASICインタプリタは高レベルアプリケーションを素早く作るのに役立つ。
- x86デバッガはアセンブラと併用できる。
- 動的データ構造ライブラリは、連結リスト、ツリー、BSTなどを扱うために使用される。
バージョン
- v1: 初期バージョン、シングルタスク、シェル、aSMtris
- v2: PS/2マウスドライバとテストアプリ
- v3: 基本的なマルチタスクと仮想ディスプレイ対応
- v4: FAT12ドライバの書き込み/削除、ファイルマネージャー、テキストエディタ
- v5: シリアルポートドライバ、フォーマットユーティリティ、ファイルコピー対応
- v6: マルチプレイヤーのスネークゲーム(シリアルポート使用)
- v7: スライドショープレゼンテーションアプリ
- v8: "メモリ保持" タスク寿命モード
- v9: パラレルポートドライバ、BMP画像対応、スプライト
- v10: システムタイマー周波数の変更
- v11: アニメーションスプライト、サウンドドライバ(内蔵スピーカー)
- v12: キーボードドライバ
- v13: スプライト機能追加、Storksゲーム
- v14: カーネル設定、プログラム引数、ファイルユーティリティ
- v15: 16x2 LCDコントローラーアプリ、テキストエディタ修正
- v16: GUIフレームワーク
- v17: Snowmine(マインスイーパー風ゲーム)
- v18: BASICインタプリタとリンカー
- v19: ハードディスクインストール
- v20: BASICとテキストエディタの改善
- v21: BASICとGUIフレームワークの統合
- v22: x86アセンブラ、マルチディスク対応、ファイル閲覧ユーティリティ
- v23: x86デバッガ
- v24: サービスローディング
- v25: 動的メモリとデータ構造
- v26: インストーラー改善、仮想マウスドライバ
- v27: カーネルおよびタスク間メッセージング
- v28: GUI高解像度化、ドローアプリケーション、デスクトップアプリケーション
- v29: データ圧縮、ハングマンゲーム
- v30: 仮想マウスドライバ改善
- v31: ランタイムライブラリ(RTL)、BASICインタプリタRTL
1件のコメント
Hacker Newsのコメント
90年代半ばに32ビットのホビー向けGUI OSを開発しており、関連書籍が必読だった
MenuetOSとKolibriOSを勧めており、MenuetOSはx64版とSMPをサポートしているが、ソースは公開されていない
最新のOS設計における優れたアイデアへの関心を示している
ロボティクス向けの高性能なRTOSの発展に関心を示している
アセンブリ言語で書かれたホームブリューOSであるSnowdrop OSへの言及
x86アセンブリで書かれたSnowdrop OSを称賛している
ESP32に移植された基本的なGUIとシェル型OSを見てみたいという意見
ISO/IMGファイルを提供していることへの好意的な反応
MiSTerで動作する点に言及している