.net - .Net 平台独立性如何?

标签 .net platform-independent

.NET 框架可以安装在 Linux、Unix、MAC 等操作系统上吗?

最佳答案

.Net 可以看作是两个独立的部分。一个是ECMA standardized CLI另一个是 CLR . CLR 是微软的 CLI 实现。

CLI 可以在许多设备上执行,例如 Windows(x86、x64、ia64 和现在的 ARM)、XBox、Zune、手机甚至 embedded devices (small chips) . Mono/Moonlight是 CLI 的实现,甚至是由 Microsoft 通过 Novell 部分资助的 CLR 的一部分。 Microsoft 支持这项工作并发布源代码以提供帮助。通过 Mono,您可以访问大多数操作系统和 CPU 类型。

还有一些编译器可以将.Net 代码直接编译成可以直接由CPU 执行的平台无关代码。如果您想用 C# 编写自己的操作系统,那就太好了。 (我不记得名字,但如果有兴趣,我可以谷歌一些链接。)

CLI 被设计为独立于平台和语言。它通过各种实现在大多数操作系统和 CPU 上运行良好。在实践中,这是否意味着它支持例如区分大小写/不区分大小写的变量(+ 更多)等语言功能,并且它具有与大多数 CPU 兼容的指令集(CLI 机器代码类似于大多数 CPU 提供的指令)。

.Net 的实现(回答您的问题的概述):

  • Microsoft .Net Framework : 视窗
  • Microsoft .Net Compact Framework : Windowsm Xbox、Zune、移动设备
  • Microsoft .Net Micro Framework : 嵌入式/非常有限的设备
  • Mono :Unix、Linux、Windows、Mac
  • 关于.net - .Net 平台独立性如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5056335/

    相关文章:

    c# - 以编程方式发送 "net send"

    c# - EF Core 属性值转换在派生实体配置中不起作用

    c# - 带有 Nullable 值的 SqlParameter 在 ExecuteNonQuery 时出错?

    java - 使用 Java 查找范围内所有可用的无线网络

    c++ - 最易于使用、轻量级、独立于平台的 C++ 图形库

    c++ - -1u 是有效的 C++ 吗?

    .net - Delphi : How to call the .Net 4.0 版本的 StrongNameSignatureVerificationEx

    c - 为什么 C 没有成为独立于平台的语言?

    java - Java.NET平台独立吗?

    .net - 从任务中调用 Thread.Sleep