丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
業(yè)界 正文
發(fā)私信給嘉嘉
發(fā)送

0

主流CPU架構(gòu)全適配 OpenCloudOS源社區(qū)內(nèi)核新增RISC-V架構(gòu)支持

本文作者: 嘉嘉 2022-08-24 15:32
導(dǎo)語(yǔ):近日,OpenCloudOS 社區(qū)推出 OpenCloudOS Kernel Stream 2207.2 內(nèi)核版本。

近日,OpenCloudOS 社區(qū)推出 OpenCloudOS Kernel Stream (以下簡(jiǎn)稱為 OCKS) 2207.2 內(nèi)核版本,新版本中增加了對(duì) RISC-V 64 架構(gòu)的支持。這也意味著,OCKS目前已實(shí)現(xiàn)對(duì)主流CPU架構(gòu)的全適配。

作為新一代開(kāi)源精簡(jiǎn)指令集(RISC)架構(gòu),近年來(lái)RISC-V在半導(dǎo)體領(lǐng)域備受關(guān)注。得益于其完全開(kāi)放、免費(fèi)授權(quán)、低成本研發(fā)、精簡(jiǎn)靈活等特性,RISC-V生態(tài)正逐漸起步,也被視為繼x86、Arm后的第三大CPU架構(gòu)。

OpenCloudOS 是由操作系統(tǒng)、云平臺(tái)、軟硬件廠商與開(kāi)發(fā)者等共同倡議發(fā)起的全鏈路國(guó)產(chǎn)化開(kāi)源操作系統(tǒng),沉淀了騰訊及多家廠商在技術(shù)和開(kāi)源生態(tài)方面的優(yōu)勢(shì)。自社區(qū)成立以來(lái),OpenCloudOS 一直在積極建設(shè)硬件及芯片支持生態(tài)。其中,適配國(guó)產(chǎn)“芯”的RSIC-V架構(gòu),從一開(kāi)始就列為 OpenCloudOS 硬件支持計(jì)劃中的重點(diǎn)項(xiàng)目。

在保持了 L1 (源社區(qū))項(xiàng)目的上游即時(shí)性與友好性的同時(shí),OCKS 在 5.18 內(nèi)核版本基礎(chǔ)上,對(duì)上游所欠缺的一些最新的 RISC-V 平臺(tái)特性增加了適配和支持。其中,OCKS 特別對(duì) StarFive VisionFive 開(kāi)發(fā)板進(jìn)行了測(cè)試適配,從而讓 OpenCloudOS 社區(qū)在提供穩(wěn)定而可靠的企業(yè)級(jí)內(nèi)核的同時(shí),更可以支持體驗(yàn)到最新的業(yè)界開(kāi)源硬件。

主流CPU架構(gòu)全適配 OpenCloudOS源社區(qū)內(nèi)核新增RISC-V架構(gòu)支持 

 

技術(shù)實(shí)現(xiàn)細(xì)節(jié)如下:

驗(yàn)證環(huán)境

硬件環(huán)境:VisionFive RISC-V 開(kāi)發(fā)板

VisionFive 開(kāi)發(fā)板是一塊高性價(jià)比的,支持 Linux 系統(tǒng)的 RISC-V 單板計(jì)算機(jī)。SoC 為 JH7100 芯片,提供了雙核 64 位 1.5 GHz RISC-V CPU,2MB 二級(jí)緩存,并帶有深度學(xué)習(xí)處理引擎及圖像視頻處理系統(tǒng),為 RISC-V 開(kāi)源架構(gòu)生態(tài)提供了更高的水平開(kāi)發(fā)套件,讓開(kāi)發(fā)者得到更大的自由及更強(qiáng)的能力去創(chuàng)新和設(shè)計(jì)行業(yè)領(lǐng)先的解決方案。

軟件環(huán)境:OCKS 2207,F(xiàn)edora 33 RISC-V版 runtime,GCC 12

VisionFive 官方鏡像目前以 Fedora 33 為基礎(chǔ),官方默認(rèn)使用下游內(nèi)核 5.10 作為默認(rèn)版本進(jìn)行引導(dǎo)。啟動(dòng)過(guò)程為 uboot -> grub2 -> kernel。其中 grub2 會(huì)將 device-tree 與 initramfs 加載并傳遞給內(nèi)核。

我們使用官方鏡像為基礎(chǔ),并使用上游 GCC 12 進(jìn)行交叉編譯,進(jìn)行了 OCKS 2207 的編譯與運(yùn)行測(cè)試。

適配步驟

1、OCKS 2207對(duì) RISC-V 的適配

OpcnCloudOS Kernel Stream 在發(fā)布之初,便為多架構(gòu)、多平臺(tái)支持而進(jìn)行了構(gòu)建與發(fā)布系統(tǒng)的優(yōu)化設(shè)計(jì)。在經(jīng)過(guò)了第一個(gè)版本的沉淀與積累后,我們正式將 OpenCloudOS Stream 2207 的支持拓展到 RISC-V 架構(gòu)。從而使得 OCKS 同時(shí)支持三大架構(gòu):x86_64,aarch64,RISC-V64。

在 2207.2 中,OpenCloudOS Kernel Stream 在上游軟件基礎(chǔ)上,增加了針對(duì) RISC-V 架構(gòu)進(jìn)行發(fā)布和構(gòu)建,以及功能支持的相關(guān)代碼。針對(duì) StarFive 開(kāi)發(fā)板,我們進(jìn)行了大量適配工作,增加板級(jí)支持,對(duì)硬件驅(qū)動(dòng)等,進(jìn)行了實(shí)際驗(yàn)證和測(cè)試。同時(shí)最大程度保持了代碼的一致性,在同源的基礎(chǔ)上,異構(gòu)地發(fā)布多個(gè)不同軟件包,保持了上游友好的管理風(fēng)格,易于維護(hù)的代碼結(jié)構(gòu),以及良好的下游支持。

同時(shí)為了緩解資源緊張與加速迭代,我們的構(gòu)建系統(tǒng)提供了完成的開(kāi)箱即用式交叉編譯支持,可以異構(gòu)地進(jìn)行版本發(fā)布,管理,kABI 驗(yàn)證,RPM 打包等過(guò)程,將開(kāi)發(fā),維護(hù),學(xué)習(xí)成本降到最低。

技術(shù)細(xì)節(jié)

OCKS 2207 現(xiàn)在可以通過(guò)單一入口,控制 ARCH 參數(shù)來(lái)生成不同架構(gòu)對(duì)應(yīng)的 RPM 包。并且在進(jìn)行異構(gòu)構(gòu)建的時(shí)候,自動(dòng)切換為交叉編譯模式。

OCKS 2207 構(gòu)建 RISC V 版本內(nèi)核只需在 Kernel Repo 中調(diào)用如下命令即可:

make dist-rpm ARCH=RISC-V64

生成的 RPM 包默認(rèn)包含所有支持設(shè)備的 device tree,vmlinuz,調(diào)試信息等,和普通編譯基本無(wú)異。

2、在 VisionFive RISC-V 開(kāi)發(fā)板上使用 OCKS 內(nèi)核

OCKS 針對(duì) RISC-V 會(huì)發(fā)布標(biāo)準(zhǔn)的 RPM 包裹。其中內(nèi)核會(huì)安裝到標(biāo)準(zhǔn)的路徑中,并且將 Device Tree 與內(nèi)核捆綁在一起發(fā)布。

VisionFive 官方提供了 基于 Fedora 的系統(tǒng)鏡像。OCKS 便是在此基礎(chǔ)上進(jìn)行了測(cè)試與適配。

若要體驗(yàn) OCKS,在官方 Fedora 鏡像基礎(chǔ)上安裝 OCKS RPM 包,并對(duì) bootloader 進(jìn)行手動(dòng)配置即可。OCKS 安裝路徑均為標(biāo)準(zhǔn)路徑。

由于不同開(kāi)發(fā)板并沒(méi)有十分統(tǒng)一的啟動(dòng)引導(dǎo)機(jī)制,在內(nèi)核安裝后,用戶需要手動(dòng)配置引導(dǎo)選項(xiàng)。

技術(shù)細(xì)節(jié)

OCKS 2207 由兩個(gè)包組成,kernel-core 與 kernel-modules。開(kāi)發(fā)板作為物理邊緣設(shè)備,需要安裝兩個(gè)包。OCKS 2207 安裝后會(huì)在 /boot 下生成對(duì)應(yīng)的 kernel vmlinuz 與 initramfs。與官方內(nèi)核一樣,用戶需要手動(dòng)配置 grub.cfg,增加如下引導(dǎo)選項(xiàng):

menuentry 'OCKS 2207' {

    linux /vmlinuz-5.18.15-2207.2.0.ocks <original boot param>

    devicetree <dtb defaults to jh7100-starfive-visionfive-v1.dtb>

    initrd /initramfs-5.18.15-2207.2.0.ocks.fc33.img

}

其中 <> 內(nèi)的內(nèi)容用戶需酌情填寫(xiě)。最新的 device tree 也會(huì)在 /usr/lib/modules/5.18.15-2207.2.0.ocks/dtbs 中提供,用戶可酌情升級(jí)。

3、OCKS RISC-V運(yùn)行效果

在 Starfive 雙核 8G 系統(tǒng)上,OCKS 可以很好的與官方 Fedora 鏡像一起運(yùn)行,如下:

主流CPU架構(gòu)全適配 OpenCloudOS源社區(qū)內(nèi)核新增RISC-V架構(gòu)支持

發(fā)布 OCKS 2207.2,添加針對(duì)RISC-V支持

  • 源代碼 Rebase 到上游 5.18.15。

  • RISC-V 平臺(tái) DMA 相關(guān)功能和兼容性問(wèn)題進(jìn)行補(bǔ)全和修復(fù)。

  • 拓展構(gòu)建系統(tǒng),支持 RISC-V 架構(gòu)。

  • 增加 StarFive VisionFive 開(kāi)發(fā)板原生支持。

  • 修復(fù)一些潛在的發(fā)行版兼容性問(wèn)題。

OpenCloudOS Stream 2207.2 相關(guān)鏈接

源代碼倉(cāng)庫(kù):https://gitee.com/OpenCloudOS/OpenCloudOS-Kernel-Stream

RPM Repo:Index of /opencloudos/8/kernel-ocks/2207.2/

RISC-V64版下載地址:Index of /opencloudos/8/kernel-ocks/2207.2/riscv64/

后續(xù)規(guī)劃

目前 VisionFive 相關(guān)外設(shè)的大量驅(qū)動(dòng)仍舊在上游討論中,我們暫時(shí)使用了 StarFive 的下游版本。我們會(huì)持續(xù)跟蹤其上游動(dòng)向,及時(shí)同步相關(guān)組件代碼。

對(duì)于 RISC-V 整體架構(gòu)框架,上游成熟度也并不高,其中很多細(xì)節(jié)仍舊需要上游的打磨和開(kāi)發(fā)。我們采用了保留最大兼容的模式適配了 VisionFive 開(kāi)發(fā)板。待上游有進(jìn)一步進(jìn)展后,我們會(huì)在 rebase 時(shí)對(duì)現(xiàn)有相關(guān)下游代碼進(jìn)行整理,清理,保持和上游一致。

同時(shí) RISC-V 和其它更多架構(gòu)生態(tài)也在持續(xù)豐富中,通過(guò)對(duì) RISC-V 進(jìn)行適配,也更進(jìn)一步驗(yàn)證了 OCKS 的跨架構(gòu)進(jìn)行開(kāi)發(fā),發(fā)布,構(gòu)建的系統(tǒng)潛力。日后會(huì)對(duì)更多架構(gòu)和硬件提供支持。


雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。

分享:
相關(guān)文章
當(dāng)月熱門(mén)文章
最新文章
請(qǐng)?zhí)顚?xiě)申請(qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)