Git Product home page Git Product logo

moos's Introduction

Language switcher

GitHub issues GitHub forks GitHub stars GitHub license GitHub license Discord Shield

MOOS

MOOS (My Own Operating System Project) is a C# x64 operating system compiler with the .NET 7 Native AOT technology.

Building

For information on compiling MOOS, please read the build wiki page.

Build requirements




image

Features

Feature Working in VM Working on hardware Information
Applications .mue (MOOS User Executable) 🟩 🟩
Error Throwing / Catching 🟥 🟥
GC 🟨 Not safe
Multiprocessor 🟩 🟩
Multithreading 🟩 🟩
EHCI(USB2.0) 🟩 🟩
USB Keyboard 🟨
USB Mouse 🟩
USB HUB 🟥 🟥
PS2 Keyboard/Mouse(USB Compatible) 🟩 🟩
Nintendo Family Computer Emulator 🟩 🟩
DOOM(doomgeneric) 🟩 🟩
Intel® Gigabit Ethernet Network 🟩 🟩
Realtek RTL8111E 🟩 🟩
ExFAT 🟩
I/O APIC 🟩 🟩
Local APIC 🟩 🟩
SATA 🟩
IDE 🟩 🟩
SMBIOS 🟩 🟩
ACPI 🟩 🟩
IPv4 🟩 🟩
IPv6 🟥 🟥
TCP 🟩 🟩
UDP 🟩 🟩
DNS 🟩 🟩
DHCP 🟩 🟩
Lan 🟩 🟩
Wan 🟩 🟩
Color Key Meaning
🟩 Yes
🟥 No
🟨 W.I.P / Partially / Buggy
Unknown

Contact me 联系方式

Email: [email protected] (i hardly use that so it may took a few month to check your post)
QQ: 3244735564
QQ群: 686383293
Discord: https://discord.gg/uJstXbx8Pt

moos's People

Contributors

akn0717 avatar compscitwilight avatar dell-optiplex-390 avatar elijah629 avatar nifanfa avatar realmaozedong avatar wafflebell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moos's Issues

牛B

牛B,不服不行啊

Thread issue

It cause general protection exception running on virtual machine softwares except qemu.

Thread float point problems

Native aot compiler will optimize the code faster by using float point registers. but thread won't save the status of float point registers which could make faults.

Expand VHD disk size ?

Hello,
I want to know if there is a way to use a custom VHD disk or expand size of initrd.vhd. To add more files on the disk

Thanks

Bare metal Freeze/Crash at Native.Sti() call in ThreadPool.Initialize

Running on an I7 6700K bare metal, OS freezes/crashes without any output at Native.Sti() call in ThreadPool.Initialize()

Native.Sti();

Same ISO works fine in QEMU, Can try to extract more information with WriteLines prior if it'd be at all helpful 😅

Console.WriteLine before and after the call in question, output looks like:

IMG_20221210_015439008.jpg

Happens with GC & GUI disabled, or enabled. Both work in VM. APIC build var can't be disabled without code changes; Timer and presumably other stuff uses it without compiler ifs.

[suggestion] 构建用户开发包

是否能像cosmos一样提供userkit(支持完全重写处理过程的特性)像模板一样安装到VS2022,我觉得更多人可能更愿意在USB/磁盘驱动/TCP/进程/线程等基础设施构建完成后构建自己的OS
例如可以通过MOOS KERNEL ABSTRACT 模板创建拥有绝大多数功能的kernel,然后提供重写以处理内核中的各种过程而不用更改源代码,并且在此基础上创建类似于win的csrss.exe子系统之类的/或者linux里直接运行的示范

此外,OS应该尽量使用.NET API,然后编译时处理为MOOS API,避免双份同名API带来的污染,

尽管十分艰难,但是令人兴奋,毕竟比起fork项目,大家更喜欢调用库

Thread support

By simply use iretq
Each thread contain a IDTStack for switching to other threads

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.