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技术编写的一个操作系统

系统界面:

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

为了编译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

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

步骤 3

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

步骤 4

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

步骤


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

6.项目地址:

https://github.com/nifanfa/MOOS

用.NET X64 Native AOT编写的操作系统的更多相关文章

  1. Mixing x86 with x64 code (混合编写x86和x64代码)

    几个月前我小小的研究了在WOW64下的32位进程中运行native x64代码. 第二个设想是在64位进程下运行x86代码.它们都是可以的,如我google的一样, 已经有人在使用这两种方法了: ht ...

  2. CPF 使用C#的Native AOT 发布程序

    微软已经将AOT的包移到Nuget了,之前是在实验测试服务器上的.并且由之前的alpha版本改成了preview版本. C#的开发效率,接近C++的运行效率,而且可以防止反编译,可以支持大部分反射功能 ...

  3. UDP代码编写、操作系统发展史、多道技术、进程理论与代码层面创建、进程join方法与进程对象方法

    昨日内容回顾 socket基本使用 # 内置的模块 import socket s = socket.socket() # 默认是TCP协议 也可以切换为UDP协议 s.bind((ip,port)) ...

  4. Win7 VS2015 x64 MASM汇编语言编写DLL文件

    有点坑记录一下. 首先创建工程时选控制台类型工程,Win32估计就应该选Win32的,反正我测试用的控制台. 然后选DLL类型,除了Empty其他全都去掉. 工程属性,masm勾上. Linker & ...

  5. 用React Native编写跨平台APP

    用React Native编写跨平台APP React Native 是一个编写iOS与Android平台实时.原生组件渲染的应用程序的框架.它基于React,Facebook的JavaScript的 ...

  6. 看我是如何用C#编写一个小于8KB的贪吃蛇游戏的

    译者注:这是Michal Strehovský大佬的一篇文章,他目前在微软.NET Runtime团队工作,主要是负责.NET NativeAOT功能的开发.我在前几天看到这篇文章,非常喜欢,虽然它的 ...

  7. SpringBoot3.x原生镜像-Native Image尝鲜

    前提 Spring团队致力于为Spring应用程序提供原生映像支持已经有一段时间了.在SpringBoo2.x的Spring Native实验项目中酝酿了3年多之后,随着Spring Framewor ...

  8. SharePoint 2010在win7 x64 安装

    转:http://kaneboy.blog.51cto.com/1308893/328000 关于<SharePoint 2010应用程序开发指南>,我和杜伟同学正在撰写中,希望下半年早点 ...

  9. .NET Core单文件发布静态编译AOT CoreRT

    .NET Core单文件发布静态编译AOT CoreRT,将.NET Core应用打包成一个可执行文件并包含运行时. 支持Windows, MacOS and Linux x64 w/ RyuJIT ...

  10. Native开发与JNI机制详解

    本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 文/李森 博主导读:博主不是代码大师,研究什么都很深,Java除外,所以无论什么问题,方案可以提供, ...

随机推荐

  1. redis实现持久化存储的两种方案

    一.简单说明 redis是非关系型数据库,是一种内存型数据库.数据存储在内存中,所以当我们关掉软件,或者拔掉电源时,内存中的数据就会丢失.针对此场景,这里提出持久化的方案.它的核心就是将内存中的数据存 ...

  2. ATM1.0面条版test

    [一]功能概要 [1]注册 [2]登陆 [3]取款 [4]存款 [5]查看流水 [6]查看银行信息(查看自己的卡号.余额) [7]初始化银行信息 [8]退出 [二]功能需求 [1]注册 (1)身份信息 ...

  3. MySQL 字符集、排序规则与查询关系详解

    MySQL 查询是否区分大小写及重音敏感,取决于创建时指定的字符集(character set)和排序规则(collation). (1)字符集(Character Set):规定可存储的字符,如 u ...

  4. 2025 智能制造必看!国内五大 MES 系统排名深度解析

    在 "中国制造 2025" 战略持续推进的背景下,制造企业数字化转型进入深水区.作为连接计划层与控制层的核心枢纽,MES(制造执行系统)已成为实现智能工厂的关键技术.2024 年国 ...

  5. layui上传文件choose只触发一次的解决方法

    环境:.net core + layui 场景:上传文件的时候需要先弹出一个层选择对应的条件传到上传方法里面做逻辑,发现layui.upload上传一次之后在不刷新页面的前提下不会执行choose方法 ...

  6. 2025 HarmonyOS 创新赛正式启动,百万大奖等你挑战!

    2025年6月21日-2025年10月底,一年一度的HarmonyOS创新赛正式启幕!现已面向所有开发者开放报名通道. 这是一场鸿蒙生态面向开发者领域的顶级开发赛事,你可以尝试: 1.多种特性,抢先尝 ...

  7. CentOS7安装Wordpress

    首先安装LAMP环境,包括了Apache, MySQL和PHP.这里面还有可道云作为可选项目. LAMP在Git上的页面 CentOS7上的安装命令,现在暂时不支持CentOS8. yum -y in ...

  8. Codeforces Round #563 (Div. 2) ABCD 题解

    A. Ehab Fails to Be Thanos 题意:问你能否对a数组任意排序,使得前n段和不等于后n段和. 思路:水题,直接从小到大排序.这个情况都相等就一定无解. view code #in ...

  9. stdout stdin stderr

    #include<stdio.h>int main(){ fprintf(stdout,"hello"); int a; fscanf(stdin,"%d&q ...

  10. vtk 格式

    简介 vtk 个人觉得是比较通用的格式,设计的比较好支持各种类型的模型,无论是表面网格还是体网格. 参考链接 讲的很好,特此记录 https://blog.csdn.net/x_and_y/artic ...