c# - C# 中的完整操作系统

标签 c# operating-system

我看到了这个帖子 here .我想知道这是否合法(听起来像)以及这样做的缺点是什么。在某些架构中独立运行它需要什么? 谢谢

最佳答案

尝试用托管语言创建操作系统目前是一个“有趣的研究问题”。这意味着这似乎是可能的,但仍有相当多的重要问题需要解决(例如,我不希望很快出现“托管窗口”)。

例如,看一下 Singularity project (也可用 at CodePlex )。它仍然有一些本地部分,但很少。据我所知,即使是垃圾收集器也是用托管代码编写的(带有一些允许使用指针进行安全操作的语言扩展)。

诀窍在于,即使是托管代码最终也会被编译为 native 代码。在 .NET 中,编译通常在您启动应用程序时由 JITter 完成。在 Singularity 中,这是提前完成的,因此您运行 native 代码(但从托管生成)。 Singularity 还有其他一些有趣的方面——例如,进程通过消息进行通信(并且不能动态加载代码),这使得在生成 native 代码时进行一些积极的优化成为可能。

关于c# - C# 中的完整操作系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4058876/

相关文章:

c# - 敏感数据本地、GitHub上,支持CI/CD

c# - 'L'运算符后缺少操作数

c# - 从 MySQL 中检索中型 blob 仅返回 13 个字节

operating-system - 有人可以帮我解决一些我无法掌握的操作系统概念 - 重新中断

c - linux IO端口是软件抽象还是真正的硬件端口

c - 缓冲区的类型

c# - 遍历 Linq 表达式以设置属性字段的值

c# - RichTextBox 控件仅使用第一种格式

c - 高速缓存 Controller 一次从主存到二级高速缓存取多少字节?

windows - 如何复制/镜像文件,但仅作为文件长度为 0 的占位符?