Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Mono 支持LoongArch架构

Mono 支持LoongArch架构

作者头像
张善友
发布于 2024-05-18 23:56:14
发布于 2024-05-18 23:56:14
3040
举报
文章被收录于专栏:张善友的专栏张善友的专栏

近期,著名的.NET开源社区Mono正式支持LoongArch(龙架构),目前LoongArch64架构已出现在.NET社区主干分支上。

image
image

详细内容可以跟踪 https://github.com/mono/mono/issues/21381, 一共分5部分提交:

image
image

Mono是一个开源的.NET框架实现,它允许开发者在非Windows平台上运行.NET应用程序。Mono项目是由Xamarin公司(后来被微软收购)发起的,目的是提供一种跨平台的.NET执行环境。Mono支持多种操作系统,包括Linux、macOS、Windows以及一些嵌入式系统。它包括一个C#编译器、一个.NET运行时环境,以及许多.NET类库。这使得开发人员可以在不同的平台上使用相同的代码基础,从而提高了开发效率。

Mono的主要特点包括:

  1. 跨平台:Mono可以在多种操作系统上运行,使得.NET应用程序可以在不同的环境中部署和执行。
  2. 兼容性:Mono旨在与.NET Framework和.NET Core保持高度兼容,使得已有的.NET应用程序可以轻松迁移到其他平台。
  3. 开源:Mono是开源的,这意味着开发者可以自由地使用、修改和分发它。
  4. 社区支持:Mono有一个活跃的社区,提供支持、文档和资源,帮助开发者解决问题和实现新功能。

Mono在游戏开发、企业应用、移动应用等领域有着广泛的应用。由于它的跨平台特性,许多开发者选择使用Mono来创建可以在不同设备上运行的应用程序。此次LoongArch架构得到Mono 开源社区原生支持,.NET-runtime里面的mono龙芯.NET团队本地也已经在做最后调试,最晚6月份提交社区,意味着LoongArch64架构对.NET的支生态支持完善了,.NET开发平台的软件生态可以原生移植到LoongArch64平台部署运行,LoongArch生态建设再次迈出坚实一步,为国际开源软件发展注入中国自主创新源动力

在过去的两年里,龙芯.NET团队的本地 mono 已经通过了很多 mono 的应用程序测试,即使是由 mono 驱动的 unity3D 也可以在 LoongArch64-linux 上运行。有一些截图图片。#21381 (评论)

image
image

2021年9月,龙芯中科向.NET社区提交了LoongArch架构支持计划,.NET社区对LoongArch架构的原生支持工作正式启动。2021年12月龙芯中科向社区正式提交了完整的LoongArch架构源码,之后龙芯中科与.NET社区保持密切沟通,联合社区开发者对LoongArch64架构支持源码进行了详细检视、深入讨论和多轮修改迭代。2022年4月,基础的运行时架构代码全部通过社区技术评审,进入主干开发分支,LoongArch成为.NET社区原生支持的全新CPU架构。2024年5月,Mono 部分的代码也进入主分支,LoongArch 全面支持了旧世界(.NET Framework) 和新世界(.NET 5+),后续,龙芯团队将进一步优化提升LoongArch架构性能,完善.NET各类开发框架在LoongArch的支持,更好地为LoongArch平台的.NET开发者和用户服务。

龙芯平台.NET,是龙芯公司基于开源社区.NET独立研发适配的龙芯版本,我们会长期进行安全更新和错误修复,并持续进行性能优化。龙芯开源社区专门开设了.NET频道:龙芯上的.NET | 龙芯开源社区 (loongnix.cn)

image
image

发布的LoongArch64架构的Mono6.13.0-1是基于社区main分支在LA上适配的,对应社区开发版本6.13.0。

关键更新:

  • 增加3C5000 Server系统安装包mono-6.13.0-1.loongarch64.rpm。
  • 完善ABI相关实现。
  • 完善tailcall、abcrem优化问题。
  • 完善profile、Soft Debugger功能。
  • 修复若干bug, 进一步提升Mono 6.13在LoongArch64架构上的稳定性。
  • 默认为JIT执行模式,也可手动切换为解释执行模式(--interpreter),暂不支持AOT特性。

龙芯LoongArch64版Mono 6 下载地址。安装方法请见Mono6安装说明

接下来我们就来安装体验一下Mono 6.13:

geffzhang@geffzhang-pc:~/下载$ sudo apt install ./mono-6.13.0-1_loongarch64.deb

[sudo] geffzhang 的密码:

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

下列软件包是自动安装的并且现在不需要了:

cracklib-runtime libaribb24-0 libbasicusageenvironment1

libboost-python1.67.0 libcddb2 libcrack2 libdbusmenu-qt5-2 libdvbpsi10

libebml4v5 libfam0 libgpgmepp6 libgroupsock8 libhfstospell10 libixml10

libkf5auth-data libkf5auth5 libkf5codecs-data libkf5codecs5

libkf5completion-data libkf5coreaddons-data libkf5coreaddons5 libkf5crash5

libkf5service-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5

libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5windowsystem-data

libkf5windowsystem5 liblivemedia64 libmad0 libmatroska6v5

libopenmpt-modplug1 libphonon4qt5-4 libplacebo7 libpolkit-qt5-1-1

libprotobuf-lite17 libproxy-tools libpwquality-common libpwquality1

libqt5concurrent5 libqt5qmlworkerscript5 libqt5texttospeech5

libresid-builder0c2a libsdl-image1.2 libsidplay2 libspatialaudio0

libspeechd2 libupnp13 libxcb-xv0 libyaml-cpp0.6 qml-module-qtquick-window2

qml-module-qtquick2 qtspeech5-speechd-plugin

使用'sudo apt autoremove'来卸载它(它们)。

下列软件包将被升级:

mono-6.13

升级了 1 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。

需要下载 0 B/80.4 MB 的归档。

解压缩后会消耗 0 B 的额外空间。

获取:1 /home/geffzhang/下载/mono-6.13.0-1_loongarch64.deb mono-6.13 loongarch64 6.13.0-1 [80.4 MB]

(正在读取数据库 ... 系统当前共安装有 239607 个文件和目录。)

准备解压 .../mono-6.13.0-1_loongarch64.deb ...

正在解压 mono-6.13 (6.13.0-1) 并覆盖 (6.13.0) ...

正在设置 mono-6.13 (6.13.0-1) ...

正在处理用于 man-db (2.8.5-2.1) 的触发器 ...

geffzhang@geffzhang-pc:~/下载$ whereis mono

mono: /usr/bin/mono /usr/lib/mono /usr/etc/mono /usr/share/man/man1/mono.1

geffzhang@geffzhang-pc:~/下载$ mono --version

Mono JIT compiler version 6.13.0 (loongarch64-dev-6.0/e7cece7bde0 2024年 04月 19日 星期五 07:02:19 UTC)

Loongson's version 6.13.0-1

Copyright (C) Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com

TLS: __thread

SIGSEGV: normal

Notifications: epoll

Architecture: loongarch64

Disabled: none

Misc: softdebug

Interpreter: yes

Suspend: preemptive

GC: sgen (concurrent by default)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
.NET正式支持龙芯LoongArch64架构:信创领域优势明显
本号已有原创文章300+篇,以软件工程为纲,DevOps为基,洞察研发效能全貌。涵盖从需求管理、应用/游戏开发、构建、测试、发布部署到运营监控的完整流程。无论您是项目经理、产品经理、开发人员、测试人员,还是运维人员,在这里您都可以有所收获,同时深入理解其他角色的工作内容。点击关注。
DevOps持续交付
2024/04/25
1.6K0
.NET正式支持龙芯LoongArch64架构:信创领域优势明显
.NET LoongArch64 正式合并进入.NET
国内自主的龙芯,在做龙芯技术生态就把 .NET 作为其中一部分考虑进去,这也将对接下来国内.NET应用场景充满了期待。通过dotnet/runtime 可以知道现在龙芯版本的 .NET 已经合并到.NET 7 官方分支的工作已经完成了。LoongArch64架构合并进入.NET 7.0 已经安排了独立的Project进行管理:https://github.com/dotnet/runtime/projects/70, 这里面的所有工作都已经完成了。
张善友
2022/04/28
6270
.NET LoongArch64  正式合并进入.NET
龙芯发布.NET 6.0.100开发者测试版
龙芯在龙芯开源社区发布了LoongArch64-.NET-SDK-6.0.100开发者试用版 新闻 ,龙芯.NET基于上游社区 版本 适配支持龙芯平台架构。 目前支持LoongArch64架构和MIPS64架构,LoongArch64架构的.NET-SDK-3.1已完成,安装包下载地址LoongArch64-.NET Core 3.1,新年伊始 发布了 LoongArch64架构.NET-6.0.100的 开发者测试版,可email联系.NET负责人申请下载链接,具体看下图。
张善友
2022/03/28
5050
龙芯发布.NET 6.0.100开发者测试版
龙芯发布 .NET 6 SDK 6.0.105-ea1 LoongArch64 版本
龙芯平台.NET,是龙芯公司基于开源社区.NET独立研发适配的龙芯版本,我们会长期进行安全更新和错误修复,并持续进行性能优化。社区.NET7版本开始已经原生支持LoongArch64架构源码。具备如下特性:
张善友
2022/06/19
3.4K1
龙芯下如何进行.NET Core程序开发部署
2022年4月,基础的运行时架构代码全部通过社区技术评审。.NET国际开源社区正式宣布支持LoongArch(龙架构),目前LoongArch64架构已出现在.NET社区主干分支上。
郑子铭
2023/08/30
7690
龙芯下如何进行.NET Core程序开发部署
龙芯(loongarch架构)编译prometheus/node_exporter
随着信创产业的推进,越来越多的服务器开始采用龙芯3A5000处理器。作为重要的监控工具,Prometheus系统需要在该架构服务器上可靠运行。但由于目前node_exporter官方尚未提供loongarch64架构的原生版本,因此我们只能进行手动编译适配和部署,以满足业务需求。
编码如写诗
2025/02/28
1241
龙芯(loongarch架构)编译prometheus/node_exporter
盘点.NET支持的 处理器架构
在一个会议上,中国招投标协会的技术负责人居然当着很多领导的面说.NET不能在国产服务器上运行,可以说这个技术负责人非蠢即坏。
张善友
2025/02/04
1290
龙芯 LoongArch64 架构提供对 .NET 3.1 的支持
近日,龙芯中科 .NET 团队完成了 .NET3.1-LoongArch64 平台研发工作,研发的成功标志着围绕龙芯自主指令系统 LoongArch 的生态建设成果再进一步。
用户1880875
2021/10/11
7960
制作一个龙芯旧世界的 dotnet sdk docker 镜像
本文将和大家分享如何制作一个在龙芯旧世界上可跑的 dotnet sdk docker 镜像,以及我的踩坑过程
林德熙
2024/11/02
2460
国产化芯片重大突破,Debian支持国产CPU架构!
Debian,这个被誉为最古老的自由操作系统,一直以来都在推动着开源运动的发展。如今,Debian为龙芯(Loongson)的loongarch架构提供了支持,这一举动标志着开源操作系统与国产高性能芯片的紧密结合进入了一个新的阶段。
通信行业搬砖工
2023/09/06
1.3K0
国产化芯片重大突破,Debian支持国产CPU架构!
回顾 2021 中国 .NET 开发者峰会
.NET Conf China 2021 是面向开发人员的社区峰会,基于 .NET Conf 2021,庆祝 .NET 6 的发布和回顾过去一年来 .NET 在中国的发展。峰会由来自北京、上海、苏州、深圳、武汉、广州、青岛、烟台、杭州等各地区的 .NET 技术社区共同发起举办,由微软Reactor , 微软 MVP & RD项目, 盛派,友浩达,米立科技,51源码服务专家,Fire UG社区,dotNET课堂联合协办,微软 Azure 白金赞助支持,NewLife 星牌赞助支持 , 目的是用中文传播 .NET 相关技术和经验。由于疫情的原因,本次峰会改为线上举办。作为2021年度国内规模最大的 .NET 线上会议,本次峰会在思否、CSDN 以及活动行3个平台同步直播,直播参与人数超过 147394 人次,其中,活动行 3858 人次,CSDN 71436 人次, 思否 72100 人次。
张善友
2022/03/30
6790
回顾 2021 中国 .NET 开发者峰会
.NET周刊【11月第2期 2023-11-12】
https://www.cnblogs.com/Can-daydayup/p/17818557.html
InCerry
2023/11/22
3540
.NET周刊【11月第2期 2023-11-12】
UOS LoongArch 上成功安装.NET Core 3.1
龙芯.NET团队正式发布了.NET Core 3.1 For LoongArch, 具体参见龙芯开源网站 http://www.loongnix.cn/index.php/Dotnet 。
张善友
2021/09/08
1.2K0
都是软件版本兼容惹的祸:龙芯 UOS 系统上 Qt Creator 启动失败
在《在龙芯迷你电脑上搭建开发环境》一文中,我详细介绍了如何在龙芯 UOS 系统上搭建开发环境,这其中就介绍了 Qt 开发工具 Qt Creator 的安装过程。然而,Qt Creator 安装之后,从菜单上启动,没有任何反应,从终端上启动,提示如下:
云水木石
2025/01/23
1380
都是软件版本兼容惹的祸:龙芯 UOS 系统上 Qt Creator 启动失败
国产32核服务器CPU验证成功!100%自主指令架构,单机最多可支持四路128核,来自龙芯中科
明敏 鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI 国产CPU又有新进展了: 龙芯中科宣布,已完成32核服务器CPU初样芯片验证。 官方信息显示,这颗名为3D5000的芯片,是通过芯粒技术把两个原生16核的3C5000封装在一起。 △图源:龙芯中科 对,就是苹果M1 Ultra同款操作。 实测跑分上,3D5000单路和双路服务器的SPEC CPU2006 Base分值分别超过400分和800分,预计四路服务器分值可以达到1600分。 值得一提的是,3D5000延续了3C5000的LGA封装。 相
量子位
2023/02/28
1.4K0
国产32核服务器CPU验证成功!100%自主指令架构,单机最多可支持四路128核,来自龙芯中科
感谢大家支持,SRS成为20k Star开源项目
SRS达到20K Star,感谢大家的认可,由于时间有限和大家交流比较少,趁这个机会给大家汇报下SRS的一些状态。 About Star Star仅仅能代表大家知道,或许能代表一些用户在使用开源项目,并不能代表项目的活跃度和持续更新的能力。 Community 开发者社区的参与度,才是决定项目是否能持续更新,SRS加入工信部木兰社区后,在各位专业开源大咖的带领下,活跃度持续在提升。 感谢所有三百多位开发者,以及技术委员会的核心开发者,特别感谢 TOC[1] 持续的努力, 大家一起在不断做出自己的贡献。
Winlin
2022/11/24
1.3K0
感谢大家支持,SRS成为20k Star开源项目
龙芯新世界之路,道长且阻
在上一篇《龙芯迷你主机,用来办公怎么样?》中,我分享了用龙芯迷你主机搭配统信 UOS 进行日常办公的体验。这一体验,半年时间就过去了。半年下来,总体感觉差强人意,搭配统信 UOS 系统,日常文档编辑、网页浏览、在线视频会议等常见办公任务运行稳定。但是由于生态起步阶段,多数软件尚未提供 LoongArch 原生版本,阵容不仅不及 x86,甚至还落后于 ARM 平台。作为 Linux 生态的重要补充 Wine 应用,在龙芯上存在很多兼容问题。
云水木石
2025/05/01
1090
龙芯新世界之路,道长且阻
聊一聊 dotnet 社区对 RISC-V 的支持进展
.NET 10 上周已经发布了.NET 10 Preview 4,2025年的开发迭代已经过半了,一起来看下.NET 10 今年对RISC-V架构的支持进展情况。我们从Github .NET 社区的相关仓库和Issue 里通过三个方面的简要梳理dotnet 对 RISC-V 的支持:
张善友
2025/05/19
810
ASP.NET Core 修改开源协议为MIT,.NET全平台 MIT协议开源了
2021年7月23日,.NET开发团队完成了所有的.NET平台的相关框架的MIT协议更改,我们可以通过 https://github.com/dotnet/aspnetcore/issues/18873 看到详细的修改提交,这个协议修改里面主要有2点,具体可以看 https://github.com/dotnet/aspnetcore/commit/d71ceb649ce37ef2920f6fc5e2b6c30c8a119ad2:
张善友
2021/08/31
9040
ASP.NET Core 修改开源协议为MIT,.NET全平台 MIT协议开源了
麒麟OS+龙芯环境编译GreatSQL
本次介绍如何在麒麟OS + 龙芯CPU的环境下将GreatSQL源码编译成二进制文件及RPM包等。
GreatSQL社区
2023/02/24
8700
推荐阅读
相关推荐
.NET正式支持龙芯LoongArch64架构:信创领域优势明显
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档