Cosmos (C# Open Source Managed Operating System)
http://www.gocosmos.org/
很不錯的一個 Open Source 專案
目的是利用熟悉且開發工具齊全的C#來開發 "Managed Operating System"
由此衍生出的應用可以有很多
而我是想拿來開發 Embeded System 做儀器控制
How does Cosmos work?
Cosmos includes a compiler (IL2CPU, which is part of Cosmos) that reads the input file (usually the shell) and Cosmos libraries and compiles the resulting IL to x86 code. IL2CPU has a layer for cross platform and we plan to support other processors and platforms, including x64. IL2CPU also supports certain extension methods which allow C# code to interact directly with the CPU, registers, and ports in the kernel. IL2CPU contains some inline assembler, but there are no ASM files that need to be linked in.
運作原理是將C#編譯成IL碼,然後依選定的執行平台配合相關平台的程式庫將 IL 編譯成 Native 機械碼,目前還在起步階段,只初步完成 IL to x86 ,所以只能在 x86 平台上執行,模擬部分可以用 VMWare、Virtual PC或 Qemu 來觀察程式執行的結果,實驗版目前則比較適合拿 EPIA系列的 Mini-ITX、Pico-ITX 或 Nano-ITX來玩
而 Cosmos 的程式庫也只完成雛形,大部分的功能都還沒完成,所以目前編寫 C# 的指令不能呼叫大多數的 DotNet framework程式庫,只能利用純C#語言的指令及呼叫一些 Console Mode 的輸出。
目前此專案進展蠻快的,好像有點想和另一 Open Source 專案 - SharpOS(http://www.sharpos.org/) 一別苗頭的意思,也許有一天兩組人馬會合作或合併也不一定
目前我期待的是能儘早推出 8051 跟 ARM 的 IL Compiler,那麼實驗版的選擇就多很多了,然後DotNet Framework 功能相對照的相關程式庫越完整越好,這樣就可以很輕鬆的將很多桌上型的程式應用轉移到這些小型裝置上
創意無限,希望無限
沒有留言:
張貼留言