Skip to content

kntt32/Fijua-OS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fijua-OS

copy_FE83051F-3CA0-4C88-8C49-66016238D447.mov

概要

Fijua-OSはどこでも動くx64GUIマルチタスクOSである
ブートローダーのFijua-Boot、カーネルのFijua-Kernelから構成され、GUIウインドウシステムを搭載し、Clangの生成する位置独立なELF形式のアプリケーションを起動できる。

まずUEFIによりFijua-Bootが起動し、ELF形式のFijua-Kernelをメモリ上に展開、デバイスのほぼ全ての空いているメモリの確保、フレームバッファの取得を行いFijua-Kernelに処理を移す。 Fijua-Kernelは自身の持つモジュールの初期化を行い、ウインドウシステムの表示し、ユーザの操作に応じてアプリの起動などする。アプリケーションにはシステムコールを提供し、メモリやCPUなどのハードウェアへのアクセスを整理する

ビルド方法

ソースコードのルートディレクトリでmakeコマンドを実行する

インストール方法

HOWTOUSE.mdを参照

これからやりたいこと

短期的な目標

  • ブートローダーおよびカーネルの安全な言語への段階的な置き換えによる安定性の向上
    • Rustを使おうと考えていたが、コンパイル速度やセルフホストをすることを考え、自作中の言語というか、安全で高速で効率的にコーディングできる(予定の)多機能アセンブラAsMacroに置き換えることを検討中
  • 細かなモジュール化
  • テストアプリを増やす
  • Rustアプリケーション用のリロケーションへの対応
  • Fijua-OSアプリケーション用Rustの、縮小版allocおよびstdクレートの作成
  • 自動キャッシュによるストレージアクセスの高速化
  • テキストベースの自作ブラウザの搭載

長期目標

  • Linuxアプリケーションへの対応
  • x64以外のプラットフォームへの対応(Arm, Riscvなど)
  • セルフホスト

関連リポジトリ

About

Fijua is just a uefi app

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors