電子發(fā)燒友網(wǎng)報(bào)道(文/梁浩斌)作為曾經(jīng)MIPS架構(gòu)生態(tài)的最主要的維護(hù)者之一,龍芯在今年4月,發(fā)布了完全自主的指令集架構(gòu)LoongArch。不過(guò)作為一個(gè)全新的指令集架構(gòu),前期生態(tài)構(gòu)建是最困難也是最重要的。
正如x86之于Windows、ARM之于Android,而龍芯LoongArch架構(gòu)從設(shè)計(jì)上考慮到兼容生態(tài)需求,除了自主設(shè)計(jì)的指令系統(tǒng)、指令格式、指令編碼、尋址模式之外,還融合了龍芯在二進(jìn)制翻譯方面的積累,通過(guò)翻譯的方式兼容MIPS、x86、ARM、RISC-V等主流指令集的Linux程序。
在7月龍芯正式發(fā)布首款采用自主指令系統(tǒng)LoongArch的CPU 3A5000后,近日龍芯又推出了LoongArch二進(jìn)制翻譯應(yīng)用方案,正式實(shí)現(xiàn)不同平臺(tái)應(yīng)用軟件的兼容運(yùn)行。
據(jù)知乎網(wǎng)友guee消息,目前統(tǒng)信UOS for 3A5000體驗(yàn)版系統(tǒng)中已經(jīng)集成了龍芯的二進(jìn)制翻譯模塊,并且應(yīng)用商店中也有部分Windows軟件提供,比如微信、Photoshop等等,使用基本無(wú)障礙。
在實(shí)測(cè)視頻中,guee表示運(yùn)行微信沒(méi)有卡頓的感覺,Photoshop相比其常用電腦要慢,但考慮到有翻譯效率的損失,這種情況是正常的。
從視頻中能看出,通過(guò)二進(jìn)制翻譯運(yùn)行的Photoshop運(yùn)行期間,某些界面會(huì)伴隨著一些閃爍,但對(duì)于日常使用影響不大。
甚至可以“跑滿60幀”流暢運(yùn)行Windows系統(tǒng)自帶的掃雷游戲。
當(dāng)然,如果只是這些軟件的話,似乎不太能發(fā)揮出龍芯二進(jìn)制翻譯模塊的全部能力。由于UOS提供直接安裝的Windows軟件并不多,要安裝其他的Windows軟件操作會(huì)稍微復(fù)雜一點(diǎn)。
UOS此前在其他處理器平臺(tái)上支持Windows軟件運(yùn)行的方式是,通過(guò)給每個(gè)Wine版軟件配一套單獨(dú)的Windows環(huán)境。而Windows環(huán)境所需的系統(tǒng)文件夾都被打包成一個(gè)“files.7z”文件,軟件首次運(yùn)行時(shí)會(huì)被解壓到/home/用戶名/deepinwine/文件夾中,并自動(dòng)配置相關(guān)的運(yùn)行環(huán)境。
比如可以直接使用Photoshop的Wine環(huán)境文件夾,將其下的“drive_c”文件夾當(dāng)做C盤使用,將綠色軟件直接復(fù)制進(jìn)去。不過(guò)guee表示,這只是32位的Wine環(huán)境,不能運(yùn)行64位Windows程序。因?yàn)槟壳癠OS還沒(méi)有提供直接安裝的64位Windows程序,所以直接生成的Wine環(huán)境也同樣不支持64位。如果要運(yùn)行64位的程序還需要手動(dòng)配置環(huán)境。
通過(guò)一系列“騷操作”,guee成功在龍芯3A5000平臺(tái)上運(yùn)行“憤怒的小鳥”游戲,并且畫面運(yùn)行十分流暢,只是存在游戲聲音方面的BUG(聲音時(shí)有時(shí)無(wú))。
除此之外,guee還表示,利用這種方法,可以在龍芯3A5000平臺(tái)電腦上使用二進(jìn)制翻譯功能運(yùn)行任何(部分有可能運(yùn)行出錯(cuò))32位Windows程序,包括7z、帝國(guó)時(shí)代2、仙劍奇?zhèn)b傳、CS等程序和游戲。
到這里可能會(huì)有人懷疑,在龍芯的二進(jìn)制翻譯之前,ARM版UOS也能通過(guò)Wine來(lái)運(yùn)行Windows,所以到底翻譯了什么?
事實(shí)上,Wine只是提供了Windows的API支持,即使在此前運(yùn)行在ARM平臺(tái)上的Linux系統(tǒng),要運(yùn)行Windows軟件也同時(shí)需要Wine以及二進(jìn)制動(dòng)態(tài)翻譯工具ExaGear來(lái)支持。
龍芯LoongArch架構(gòu)的二進(jìn)制翻譯意義在于,在系統(tǒng)上提供翻譯模塊的同時(shí),在CPU硬件上還提供了硬件加速支持,通過(guò)架構(gòu)層支持與軟硬協(xié)同算法優(yōu)化,充分利用本地硬件,最大化提升模擬效率,為上層應(yīng)用軟件提供目標(biāo)指令集的良好虛擬運(yùn)行環(huán)境。
根據(jù)4月發(fā)布的“龍芯架構(gòu)LoongArch解析”中,龍芯在Linux進(jìn)程級(jí)x86二進(jìn)制翻譯的優(yōu)化目標(biāo)為80%效率。此前龍芯中科創(chuàng)始人兼董事長(zhǎng)胡偉武博士表示,“我們希望,到2025年前后,在龍芯的LoongArch平臺(tái)上可以不運(yùn)行Windows但能運(yùn)行Windows應(yīng)用,不運(yùn)行Android但能運(yùn)行Android應(yīng)用。”
寫在最后:
正如蘋果MacOS從x86轉(zhuǎn)向ARM一樣,通過(guò)Rosetta2,將原本運(yùn)行在x86平臺(tái)上的軟件指令轉(zhuǎn)譯成ARM指令。對(duì)于龍芯而言,加入二進(jìn)制翻譯功能只是在建立自主生態(tài)初期的過(guò)渡手段,為了彌補(bǔ)初期軟件生態(tài)的缺陷。
今年8月,ZStack Cloud信創(chuàng)云平臺(tái)成為首批與LoongArch龍芯架構(gòu)適配的云平臺(tái);9月,龍芯官方宣布已經(jīng)將虛幻引擎4成功移植到龍芯3A5000平臺(tái);11月龍芯加入華為歐拉openEuler開源社區(qū)。可以預(yù)見,在相關(guān)生態(tài)企業(yè)的支持下,LoongArch架構(gòu)生態(tài)將會(huì)迎來(lái)良性發(fā)展的階段。
正如x86之于Windows、ARM之于Android,而龍芯LoongArch架構(gòu)從設(shè)計(jì)上考慮到兼容生態(tài)需求,除了自主設(shè)計(jì)的指令系統(tǒng)、指令格式、指令編碼、尋址模式之外,還融合了龍芯在二進(jìn)制翻譯方面的積累,通過(guò)翻譯的方式兼容MIPS、x86、ARM、RISC-V等主流指令集的Linux程序。
在7月龍芯正式發(fā)布首款采用自主指令系統(tǒng)LoongArch的CPU 3A5000后,近日龍芯又推出了LoongArch二進(jìn)制翻譯應(yīng)用方案,正式實(shí)現(xiàn)不同平臺(tái)應(yīng)用軟件的兼容運(yùn)行。
?
圖源:guee
圖源:guee
據(jù)知乎網(wǎng)友guee消息,目前統(tǒng)信UOS for 3A5000體驗(yàn)版系統(tǒng)中已經(jīng)集成了龍芯的二進(jìn)制翻譯模塊,并且應(yīng)用商店中也有部分Windows軟件提供,比如微信、Photoshop等等,使用基本無(wú)障礙。
?
圖源:guee
圖源:guee
在實(shí)測(cè)視頻中,guee表示運(yùn)行微信沒(méi)有卡頓的感覺,Photoshop相比其常用電腦要慢,但考慮到有翻譯效率的損失,這種情況是正常的。
從視頻中能看出,通過(guò)二進(jìn)制翻譯運(yùn)行的Photoshop運(yùn)行期間,某些界面會(huì)伴隨著一些閃爍,但對(duì)于日常使用影響不大。
甚至可以“跑滿60幀”流暢運(yùn)行Windows系統(tǒng)自帶的掃雷游戲。
當(dāng)然,如果只是這些軟件的話,似乎不太能發(fā)揮出龍芯二進(jìn)制翻譯模塊的全部能力。由于UOS提供直接安裝的Windows軟件并不多,要安裝其他的Windows軟件操作會(huì)稍微復(fù)雜一點(diǎn)。
UOS此前在其他處理器平臺(tái)上支持Windows軟件運(yùn)行的方式是,通過(guò)給每個(gè)Wine版軟件配一套單獨(dú)的Windows環(huán)境。而Windows環(huán)境所需的系統(tǒng)文件夾都被打包成一個(gè)“files.7z”文件,軟件首次運(yùn)行時(shí)會(huì)被解壓到/home/用戶名/deepinwine/文件夾中,并自動(dòng)配置相關(guān)的運(yùn)行環(huán)境。
?
圖源:guee
圖源:guee
比如可以直接使用Photoshop的Wine環(huán)境文件夾,將其下的“drive_c”文件夾當(dāng)做C盤使用,將綠色軟件直接復(fù)制進(jìn)去。不過(guò)guee表示,這只是32位的Wine環(huán)境,不能運(yùn)行64位Windows程序。因?yàn)槟壳癠OS還沒(méi)有提供直接安裝的64位Windows程序,所以直接生成的Wine環(huán)境也同樣不支持64位。如果要運(yùn)行64位的程序還需要手動(dòng)配置環(huán)境。
除此之外,guee還表示,利用這種方法,可以在龍芯3A5000平臺(tái)電腦上使用二進(jìn)制翻譯功能運(yùn)行任何(部分有可能運(yùn)行出錯(cuò))32位Windows程序,包括7z、帝國(guó)時(shí)代2、仙劍奇?zhèn)b傳、CS等程序和游戲。
到這里可能會(huì)有人懷疑,在龍芯的二進(jìn)制翻譯之前,ARM版UOS也能通過(guò)Wine來(lái)運(yùn)行Windows,所以到底翻譯了什么?
事實(shí)上,Wine只是提供了Windows的API支持,即使在此前運(yùn)行在ARM平臺(tái)上的Linux系統(tǒng),要運(yùn)行Windows軟件也同時(shí)需要Wine以及二進(jìn)制動(dòng)態(tài)翻譯工具ExaGear來(lái)支持。
龍芯LoongArch架構(gòu)的二進(jìn)制翻譯意義在于,在系統(tǒng)上提供翻譯模塊的同時(shí),在CPU硬件上還提供了硬件加速支持,通過(guò)架構(gòu)層支持與軟硬協(xié)同算法優(yōu)化,充分利用本地硬件,最大化提升模擬效率,為上層應(yīng)用軟件提供目標(biāo)指令集的良好虛擬運(yùn)行環(huán)境。
?
圖源:龍芯中科
圖源:龍芯中科
根據(jù)4月發(fā)布的“龍芯架構(gòu)LoongArch解析”中,龍芯在Linux進(jìn)程級(jí)x86二進(jìn)制翻譯的優(yōu)化目標(biāo)為80%效率。此前龍芯中科創(chuàng)始人兼董事長(zhǎng)胡偉武博士表示,“我們希望,到2025年前后,在龍芯的LoongArch平臺(tái)上可以不運(yùn)行Windows但能運(yùn)行Windows應(yīng)用,不運(yùn)行Android但能運(yùn)行Android應(yīng)用。”
寫在最后:
正如蘋果MacOS從x86轉(zhuǎn)向ARM一樣,通過(guò)Rosetta2,將原本運(yùn)行在x86平臺(tái)上的軟件指令轉(zhuǎn)譯成ARM指令。對(duì)于龍芯而言,加入二進(jìn)制翻譯功能只是在建立自主生態(tài)初期的過(guò)渡手段,為了彌補(bǔ)初期軟件生態(tài)的缺陷。
今年8月,ZStack Cloud信創(chuàng)云平臺(tái)成為首批與LoongArch龍芯架構(gòu)適配的云平臺(tái);9月,龍芯官方宣布已經(jīng)將虛幻引擎4成功移植到龍芯3A5000平臺(tái);11月龍芯加入華為歐拉openEuler開源社區(qū)。可以預(yù)見,在相關(guān)生態(tài)企業(yè)的支持下,LoongArch架構(gòu)生態(tài)將會(huì)迎來(lái)良性發(fā)展的階段。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
龍芯處理器
+關(guān)注
關(guān)注
1文章
25瀏覽量
11047
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
RISC-V指令集概述
基礎(chǔ)指令集,加上若干個(gè)擴(kuò)展指令集進(jìn)行搭配使用,就可以得到我們想要的指令集架構(gòu),進(jìn)而根據(jù)這樣的指令架構(gòu)
發(fā)表于 11-30 23:30
龍芯LS2K1000LA和LS2K1000有何區(qū)別?
年,龍芯中科基于二十年的CPU研制和生態(tài)建設(shè)積累推出了龍架構(gòu)(LoongArch),包括基礎(chǔ)架構(gòu)部分和向量
發(fā)表于 11-14 11:06
迅為3A6000_7A2000核心主板龍芯全國(guó)產(chǎn)處理器LoongArch架構(gòu)
,也證明了國(guó)內(nèi)有能力在自研 CPU 架構(gòu)上做出一流的產(chǎn)品。
龍芯 3A6000 處理器采用龍芯自主指令
發(fā)表于 10-12 11:25
指令集架構(gòu)與微架構(gòu)的區(qū)別
指令集架構(gòu)(Instruction Set Architecture,ISA)與微架構(gòu)(Microarchitecture)是計(jì)算機(jī)體系結(jié)構(gòu)中的兩個(gè)重要概念,它們?cè)谔幚砥鞯脑O(shè)計(jì)和實(shí)現(xiàn)中扮演著不同的角色。以下是對(duì)兩者區(qū)別的詳細(xì)闡述
簡(jiǎn)述微處理器的指令集架構(gòu)
計(jì)算機(jī)硬件與軟件的橋梁。指令集架構(gòu)不僅決定了微處理器的性能和功能,還影響著操作系統(tǒng)的開發(fā)、應(yīng)用程序的編寫以及整個(gè)計(jì)算機(jī)生態(tài)系統(tǒng)的構(gòu)建。以下是對(duì)微處理器
RISC-V和arm指令集的對(duì)比分析
和豐富的軟件資源。ARM的生態(tài)系統(tǒng)為ARM處理器在各個(gè)領(lǐng)域的應(yīng)用提供了強(qiáng)有力的支持。
綜上所述,RISC-V和ARM指令集在設(shè)計(jì)理念、開放性、應(yīng)用領(lǐng)域、指令集特點(diǎn)和
發(fā)表于 09-28 11:05
復(fù)雜指令集和精簡(jiǎn)指令集有什么區(qū)別
的兩種主要指令集架構(gòu),它們?cè)诙鄠€(gè)方面存在顯著的差異。以下是對(duì)這兩種指令集架構(gòu)的詳細(xì)比較,涵蓋設(shè)計(jì)理念、指令復(fù)雜性、尋址方式、實(shí)現(xiàn)方式、性能特
微處理器的指令集架構(gòu)介紹
微處理器的指令集架構(gòu)(Instruction Set Architecture,ISA)是計(jì)算機(jī)體系結(jié)構(gòu)中至關(guān)重要的部分,它定義了微處理器能夠執(zhí)行的操作和指令的集合,以及這些指令如何被
CISC(復(fù)雜指令集)與RISC(精簡(jiǎn)指令集)的區(qū)別
。這種架構(gòu)會(huì)增加CPU結(jié)構(gòu)的復(fù)雜性和對(duì)CPU工藝的要求,但對(duì)于編譯器的開發(fā)十分有利。比如上面的例子,C程序
中的a*=b就可以直接編譯為一條乘法指令。
RISC
發(fā)表于 07-30 17:21
龍芯CPU統(tǒng)一系統(tǒng)架構(gòu)規(guī)范及參考設(shè)計(jì)下載
*附件:LoongArch 系統(tǒng)調(diào)用(syscall)ABI.pdf
*附件:龍芯 CPU 統(tǒng)一系統(tǒng)架構(gòu)規(guī)范(適用于 LA 架構(gòu)通用 PC、服務(wù)器系列)-v4.1.0.pdf
*附件:
發(fā)表于 06-20 14:42
微軟推進(jìn)CPU指令集更新,舊版CPU或無(wú)法運(yùn)行Edge瀏覽器
按照微軟的計(jì)劃,Microsoft Edge 126.0正式版將于2024年6月13日發(fā)布。屆時(shí),未支持SSE3指令集的舊CPU用戶可能需繼續(xù)使用現(xiàn)有的版本。
嵌入式系統(tǒng)的概念與范圍開發(fā) 指令集架構(gòu)要怎么選才合適?
想要搭建一套嵌入式系統(tǒng),首先得確認(rèn)想要采用的指令集架構(gòu)(Instruction Set Architectures, ISA),各家的指令集架構(gòu)各有其優(yōu)缺點(diǎn)與擁護(hù)者,本文將為您大致介紹
什么是RISC-V?RISC-V指令集的優(yōu)勢(shì)
CPU 支持的所有指令和指令的字節(jié)級(jí)編碼就是這個(gè) CPU 的指令集架構(gòu)(Instruction
發(fā)表于 03-05 10:31
?886次閱讀
【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】匯編語(yǔ)言和擴(kuò)展指令集
【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】匯編語(yǔ)言和擴(kuò)展指令集
匯編語(yǔ)言
將C語(yǔ)言翻譯成可執(zhí)行的機(jī)器語(yǔ)言的重要步驟包括編譯過(guò)程,匯編過(guò)程,鏈接過(guò)程。
函數(shù)調(diào)用約定過(guò)程分為六個(gè)階段:
1)將參數(shù)存放
發(fā)表于 02-03 13:29
一文詳解CPU概念及運(yùn)作原理
CPU指令集(Instruction Set)是CPU中計(jì)算和控制計(jì)算機(jī)系統(tǒng)所有指令的集合。計(jì)算機(jī)的程序最終需要轉(zhuǎn)化為“指令”才能在
發(fā)表于 01-16 10:59
?2074次閱讀
評(píng)論