首页 > 其他分享 >用.NET X64 Native AOT编写的操作系统

用.NET X64 Native AOT编写的操作系统

时间:2025-01-05 12:33:22浏览次数:5  
标签:X64 MOOS AOT https NET com Native

https://blog.csdn.net/sd7o95o/article/details/133191160

 

1.前言
很多人想学习下.Net前沿技术和核心技术,这里推荐一个适合大家学习的案例,用.NET X64 Native AOT编写一个操作系统。

2.概述
MOOS(To Make My Own Operating System Project)是一个采用
.NET x64 Native AOT技术编写的一个操作系统

系统界面:
47a8370b067cadae1e468fb5dc0b3b90.png

3.特性(实现的功能)
Applications .mue.系统的可执行文件
Error Throwing/Catching异常处理
GC垃圾回收
USB键盘
USB鼠标
IPV4
IPV6
DHCP
TCP
IDE编译器
DNS等等

4.编译要求
一:VMware Workstation Player 

https://www.vmware.com/products/workstation-player.html

二:Visual Studio 2022 

 https://visualstudio.microsoft.com/
三:QEMU - https://www.qemu.org/download 或 VMWare(注意-USB不适用于VMWare,如果要运行VMware,则需要x64,不支持32位)
windows 10-11 x64 或 x86
四:至少 2012 年或更高版本的 CPU,或者基本意义上的Ivy Bridge CPU或更高版本
五:4GB 内存,但建议使用 8GB 内存

5.构建和编译MOOS

步骤 1

50e5844c2418e967c87d07492255403b.png

为了编译MOOS,您需要运行Windows 10或更高版本。您还需要Visual Studio,您可以在此处下载:https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&channel=Release&version=VS2022&source=VSLandingPage&cid=2030&passive=false

步骤 2

e2a126204c9d5acf2e962f91dc809ea5.png

安装程序安装完成后,您将看到此窗口,您将需要使用C++进行桌面开发,很可能还需要.NET桌面开发,您将需要这些工具,以便我们可以编译MOOS

步骤 3

a08ee7c72e44ba66d34abc4e26564cf8.png单击安装,完成后它将开始安装重新启动您的PC

步骤 4

9b23a2ea78004522391b8f94bc7c6655.png

启动VS 2022并打开.sln文件,然后在加载所有内容后单击“构建>构建解决方案”选项

步骤 

7b12b32571d3df33fdefddf5674e8d69.png
在构建下拉菜单中选择 MOOS,然后单击 QEMU 或 VMware,完成后,您可以更改代码并继续构建 MOOS,享受!

6.项目地址:

https://github.com/nifanfa/MOOS

标签:X64,MOOS,AOT,https,NET,com,Native
From: https://www.cnblogs.com/chinasoft/p/18653261

相关文章

  • 如何看.net framework和.net core?
    了解.NETFramework和.NETCore的区别对于选择合适的技术栈和开发环境至关重要。以下是这两者的详细比较,包括它们的特点、适用场景、性能差异以及如何选择合适的框架。.NETFramework.NETFramework是Microsoft开发的第一个.NET平台,主要用于Windows操作系统上的应用......
  • 在 ASP.NET CORE 中上传、下载文件
    创建WebAPI来提供跨客户端和服务器的文件上传和下载是常有的事。本文将介绍如何通过ASP.NETCORE来实现。首先在VisualStudio中创建空的WebAPI项目,然后选择目标框架.NetCore3.1。创建名为FileController的控制器,提供操作文件的接口。namespaceFileAPI.Con......
  • 深入探索 Kubernetes:从基础概念到实战运维
    前言:在当今数字化转型的浪潮中,Kubernetes已然成为云原生应用部署与管理的核心力量。无论是初创企业寻求敏捷开发,还是大型企业应对复杂业务架构,掌握Kubernetes都能为你的技术之旅赋能。今天,就让我们一同深入Kubernetes的奇妙世界,揭开它神秘的面纱,从基础概念到实战运维,全方位领......
  • Linux 内核中的 Netlink 机制:内核与用户空间的通信桥梁
    在Linux系统中,内核与用户空间之间的通信是一个关键需求,尤其是在网络配置、系统监控和安全管理等领域。Netlink是Linux内核提供的一种高效、灵活的进程间通信(IPC)机制,专门用于内核与用户空间之间的数据交换。本文将深入探讨Netlink的基本概念、用途、通信机制以及如何通过......
  • NET拓展配置
    IP地址的分类ABC---单播地址私网IP地址A:10.0.0.0-10.255.255.255/8B:172.16.0.0-172.31.255.255/16--16b类网段C:192.168.0.0-192.168.255.255--Ip地址数量不够所有华为设备和NAT相关的配置都是在边界设备的出接口上配置静态NAT因为网络划分了私网IP地址和公网IP......
  • RoomFormer、FRI-Net
    WSLCUDA安装【一文解决】已安装CUDA与Pytorch但torch.cuda.is_available()为False_torch.cuda.isavailable返回false-CSDN博客cuda安装Ubuntu20.04安装CUDA&CUDNN手把手带你撸_ubuntu20.04安装cuda-CSDN博客【CUDA】Ubuntu系统如何安装CUDA保姆级教程(2022年最新)_ubunt......
  • 【强化学习】Double DQN(Double Deep Q-Network)算法
            ......
  • Profinet转EtherNet/IP网关连接AB PLC的应用案例
    某大型制造企业的生产车间同时采用了西门子S7-1500PLC作为核心控制系统的一部分,负责主要生产流程的控制与数据处理;而在特定生产环节,由于历史设备遗留或工艺配套需求,存在使用ABPLC的情况。这就导致了在整个自动化生产系统中,出现了两种不同的工业以太网协议(Profinet和Eth......
  • 在 Blazor 和 ASP.NET Core 中使用依赖注入和Scoped 服务实现数据共享方法详解
        依赖注入(DependencyInjection,简称DI)是一种设计模式,用于将对象的依赖关系从对象内部解耦出来,由外部容器进行管理和提供。在Blazor和ASP.NETCore中,DI是内置的核心功能,它通过服务生命周期(Transient、Scoped、Singleton)来管理依赖项。依赖注入(DependencyInj......
  • 开发规范.NET-v1.0.241127
    一、编程规范(一)命名风格命名要找更有表现力的词,更专业的词,比如获取数据不用get而使用fetch别害怕长名称,长而具有描述性的名称比短而令人费解的名称好为作用域大的名字采用更长的名字,作用域小的使用短名字给变量名带上重要的细节,比如加上单位ms等。【强制】严禁......