• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于申威-威焱831和統(tǒng)信操作系統(tǒng)下設(shè)計(jì)即時(shí)通訊系統(tǒng)的全流程研究

      2024-09-12 00:00:00劉寧海殷衛(wèi)強(qiáng)
      物聯(lián)網(wǎng)技術(shù) 2024年4期
      關(guān)鍵詞:信創(chuàng)即時(shí)通訊

      摘 要:申威作為國內(nèi)信創(chuàng)產(chǎn)業(yè)重要的生力軍,其完全自主指令集核心處理器的優(yōu)勢(shì)備受矚目。但是,基于申威架構(gòu)的應(yīng)用全流程開發(fā)尚未得到足夠關(guān)注。因此,提出基于申威-威焱831和統(tǒng)信操作系統(tǒng)設(shè)計(jì)了即時(shí)通訊系統(tǒng)的全流程開發(fā)應(yīng)用。文中詳細(xì)闡述了系統(tǒng)框架設(shè)計(jì)、Qt源碼編譯、Qt Creator安裝,并提出了一種自動(dòng)化獲取Qt運(yùn)行時(shí)庫腳本的方法,徹底解決應(yīng)用程序發(fā)布難題。最后,利用DEBIAN包管理軟件對(duì)應(yīng)用程序打包,實(shí)驗(yàn)結(jié)果證明,應(yīng)用程序發(fā)布到其他客戶機(jī)同樣能正常工作。

      關(guān)鍵詞:申威-威焱831;信創(chuàng);即時(shí)通訊;Qt;自動(dòng)化腳本;程序發(fā)布

      中圖分類號(hào):TP311.1 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2024)04-0-04

      DOI:10.16667/j.issn.2095-1302.2024.04.041

      0 引 言

      當(dāng)前,在信息科技領(lǐng)域,大多數(shù)應(yīng)用系統(tǒng)都運(yùn)行在英特爾x86平臺(tái)下,而“絕對(duì)壟斷”的wintel(即Windows+Intel)組合已經(jīng)主導(dǎo)了該行業(yè)多年。隨著國家信息科技創(chuàng)新[1]產(chǎn)業(yè)的崛起,打破來自西方的所謂“卡脖子”行業(yè)的呼聲越來越高,人們?nèi)找嫫诖龂鴥?nèi)創(chuàng)造的自主設(shè)計(jì)產(chǎn)品能夠替代進(jìn)口產(chǎn)品,實(shí)現(xiàn)真正的自主創(chuàng)新。而其中基于申威處理器的優(yōu)化研究一直在不斷推進(jìn)之中。例如,近期有關(guān)申威眾核處理器上通信研究的文獻(xiàn)[2]表明,通過基于寄存器的通信方式,該處理器的性能得到了大幅改善。然而,由于自主設(shè)計(jì)的處理器指令集架構(gòu)與x86存在很大差異,因此為了在國產(chǎn)化環(huán)境中使用這些處理器,應(yīng)用軟件就必須適配國產(chǎn)處理器的指令集。目前,越來越多的應(yīng)用程序已經(jīng)開始基于國產(chǎn)處理器以及國產(chǎn)操作系統(tǒng)進(jìn)行開發(fā)[3],如統(tǒng)信操作系統(tǒng)在行業(yè)和個(gè)人消費(fèi)領(lǐng)域的應(yīng)用不斷提高[4],而在其系統(tǒng)上進(jìn)行Ceph集群性能測(cè)試的研究也取得了顯著進(jìn)展[5]。此外,國產(chǎn)麒麟操作系統(tǒng)上應(yīng)用軟件的設(shè)計(jì)和開發(fā)隨著信息創(chuàng)新產(chǎn)業(yè)的發(fā)展成為了一個(gè)新的方向[6]??梢钥吹?,信息創(chuàng)新產(chǎn)業(yè)百花齊放。本文旨在探討基于申威處理器以及統(tǒng)信操作系統(tǒng)的應(yīng)用程序開發(fā)、移植、部署全流程問題。特別地,對(duì)于基于申威處理器移植的應(yīng)用,其移植方式可以分為二進(jìn)制翻譯和源碼編譯兩種。例如,解釋性語言如Java可直接通過二進(jìn)制翻譯技術(shù)進(jìn)行移植,并已有相關(guān)應(yīng)用成功實(shí)現(xiàn)[7],而對(duì)于編譯型語言如C/C++,則需要進(jìn)行源代碼編譯。在部署方面,應(yīng)用程序的實(shí)施部署也需要根據(jù)不同的平臺(tái)系統(tǒng)特點(diǎn)適配,而不同的環(huán)境下,應(yīng)用的發(fā)布方式也可能存在差異[8]。最后,本文以基于申威-威焱831和國產(chǎn)統(tǒng)信操作系統(tǒng)為基礎(chǔ)實(shí)現(xiàn)的一款即時(shí)通訊應(yīng)用為例來說明本文主旨。項(xiàng)目采用C++語言進(jìn)行客戶端開發(fā),并使用定制化的Qt Creator IDE[9]及Qt庫進(jìn)行界面設(shè)計(jì)。由于需要開發(fā)環(huán)境的部署,在申威平臺(tái)下需要定制Qt開發(fā)環(huán)境,并提出了一種自動(dòng)化獲取依賴的Qt運(yùn)行時(shí)庫腳本,使應(yīng)用程序發(fā)布變得更為簡(jiǎn)便。最終,已將該應(yīng)用成功打包成為可一鍵安裝和卸載的deb安裝包。通過上述研究,實(shí)驗(yàn)結(jié)果也說明了即使發(fā)布在其他客戶機(jī),應(yīng)用同樣可正常

      工作。

      1 軟件設(shè)計(jì)

      系統(tǒng)服務(wù)端架構(gòu)如1所示。

      具體說明如下:

      (1)應(yīng)用層:應(yīng)用層主要為PC客戶端(即時(shí)通訊客戶端),消息存放在本地?cái)?shù)據(jù)庫中。

      (2)服務(wù)層:服務(wù)層主要包含HTTP服務(wù)和TCP服務(wù),HTTP服務(wù)包含消息、回執(zhí)、人員信息,TCP服務(wù)主要用來推送消息。

      (3)數(shù)據(jù)層:服務(wù)端的數(shù)據(jù)層主要用來存放人員登錄、權(quán)限、消息、文件等信息。

      客戶端功能如圖2所示。

      (1)聊天功能:此為即時(shí)通訊的主要功能,包括支持發(fā)送文本、圖片、視頻、文件等消息內(nèi)容。

      (2)通訊錄功能:從HTTP獲取全量通訊錄,支持模糊查找。

      (3)群組功能:支持群組新建、修改、刪除等功能。

      (4)組織功能:獲取組織下的所有人員信息。

      2 Qt庫編譯及Qt Creator安裝

      由于Qt官網(wǎng)無提前編譯好的基于申威平臺(tái)的安裝包,所以需要對(duì)Qt源碼進(jìn)行基于申威平臺(tái)的編譯適配,生成適配申威版Qt開發(fā)庫。本文所使用的Qt版本為5.13.2。

      2.1 編譯基礎(chǔ)環(huán)境

      編譯Qt源碼需要基礎(chǔ)運(yùn)行環(huán)境及依賴庫。需要依賴的基礎(chǔ)環(huán)境見表1所列。

      2.2 檢查安裝環(huán)境

      基礎(chǔ)環(huán)境安裝完成后的檢查流程如圖3所示。

      2.3 安裝依賴包

      申威平臺(tái)下,Qt源碼編譯需要依賴相關(guān)庫,包括平臺(tái)相關(guān)、三維繪圖、字體、開發(fā)工具包。其中部分是在編譯過程中加載,部分在運(yùn)行時(shí)加載,具體見表2所列。

      2.4 編譯及安裝

      上述安裝包執(zhí)行完后,在Qt源碼目錄下執(zhí)行編譯、安裝命令,Qt庫安裝完成。

      2.5 安裝Qt Creator

      安裝命令:apt install qtcreator。

      3 程序打包

      針對(duì)在開發(fā)環(huán)境中編寫的程序發(fā)布到其他申威831客戶機(jī)上需要手動(dòng)查找依賴庫文件低效的問題,本文設(shè)計(jì)了一種自動(dòng)化腳本解決方案。該腳本可以在開發(fā)環(huán)境中自動(dòng)查找應(yīng)用程序所依賴的所有庫文件,并將其全部打包成為一個(gè)安裝包。通過該方法可以避免手動(dòng)查找依賴庫文件耗費(fèi)大量時(shí)間和精力的問題,并確保所找出的依賴庫文件完整準(zhǔn)確,提高應(yīng)用程序發(fā)布的效率和可靠性。本文詳細(xì)描述了該系統(tǒng)的原理以及具體實(shí)現(xiàn)方式,并在實(shí)驗(yàn)中驗(yàn)證了該方案的可行性和有效性。

      Qt程序依賴的庫文件主要分為libs、platforms、SQLdrivers三大類,所以腳本的編寫主要圍繞查找這三類

      展開。

      依賴庫提取流程如圖4所示。

      4 一鍵生成程序deb包

      本文探討在統(tǒng)信操作系統(tǒng)下,針對(duì)應(yīng)用程序依賴庫文件、配置文件、數(shù)據(jù)庫等其他內(nèi)置文件的需求,提供一鍵安裝及卸載軟件功能。為此,我們使用deb作為包管理方式,將應(yīng)用程序及其所需依賴的所有文件統(tǒng)一打包成一個(gè)軟件包,并設(shè)計(jì)了一套完整的軟件安裝和卸載機(jī)制。通過這種方式,我們能夠提供用戶友好、方便快捷的軟件安裝和卸載體驗(yàn),降低用戶操作的難度和出錯(cuò)風(fēng)險(xiǎn),延長(zhǎng)軟件生命周期,提高可維護(hù)性和穩(wěn)定性。本文詳細(xì)描述了如何構(gòu)建deb軟件包以及如何通過dpkg命令進(jìn)行軟件安裝與卸載,同時(shí)提出了在實(shí)施過程中的注意事項(xiàng)和優(yōu)化策略。

      4.1 打包目錄結(jié)構(gòu)

      統(tǒng)信平臺(tái)下deb打包程序結(jié)構(gòu)如下所示:

      DEBIAN

      control

      preinst

      postrm

      usr

      local

      bin

      IMpackage(程序目錄)

      share

      applications(xxx.desktop)

      4.2 腳本文件內(nèi)容

      control文件內(nèi)容如下所示:

      Package:imchat-sw

      Version:2023-04-07

      Section:Commercial

      Priority:optional

      Architecture:sw_64

      Maintainer:Liunh

      Provides:imchat-sw

      Description:a tool for chat

      注意:Package命名有規(guī)定,大寫、數(shù)字、下劃線都不能出現(xiàn),Architecture指的是CPU架構(gòu)類型,這里是申威平臺(tái)架構(gòu):sw_64。

      preinst文件內(nèi)容如下所示:

      #!/bin/bash

      dir=/usr/local/Qt-5.13.2/lib/fonts

      if [ ! -d \"$dir\" ]; then

      mkdir -p /usr/local/Qt-5.13.2/lib/fonts

      cp /usr/share/fonts/opentype/noto/* /usr/local/Qt-5.13.2/lib/fontsfi

      dir1=/usr/local/Qt-5.13.2/plugins/platforminputcontexts

      if [ ! -d \"$dir1\" ]; then

      mkdir -p /usr/local/Qt-5.13.2/plugins/platforminputcontexts

      cp /usr/lib/sw_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /usr/local/Qt-5.13.2/plugins/platforminputcontexts

      chmod +x /usr/local/Qt-5.13.2/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so

      fi

      postrm文件內(nèi)容如下所示:

      #!/bin/bash

      rm -rf /usr/local/Qt-5.13.2/lib/fonts

      4.3 執(zhí)行打包命令

      上述目錄中的腳本編寫完成后,執(zhí)行打包命令:

      dpkg -b im-deb uos20_sw831_imchart.deb

      5 實(shí)驗(yàn)結(jié)果及分析

      5.1 實(shí)驗(yàn)結(jié)果

      申威平臺(tái)下即時(shí)通訊安裝包截圖如圖5所示。

      軟件安裝界面如圖6所示,程序執(zhí)行界面如圖7所示。

      5.2 實(shí)驗(yàn)問題分析

      在基于申威831平臺(tái)開發(fā)應(yīng)用程序的過程中,遇到了區(qū)別于基于x86平臺(tái)的問題,經(jīng)過適配移植,最終實(shí)現(xiàn)了基于國產(chǎn)申威架構(gòu)CPU平臺(tái)、統(tǒng)信操作系統(tǒng)應(yīng)用程序的開發(fā)與部署[10]。表3所列為申威平臺(tái)環(huán)境下遇到的問題及解決

      方案。

      6 結(jié) 語

      本文系統(tǒng)地介紹了基于申威831、統(tǒng)信操作系統(tǒng)平臺(tái)下的應(yīng)用軟件開發(fā)、部署及實(shí)施流程,強(qiáng)調(diào)了該過程中因軟硬件架構(gòu)不同所帶來的挑戰(zhàn)以及解決這些挑戰(zhàn)的具體方法。本文所有內(nèi)容都基于作者在實(shí)踐中積累的經(jīng)驗(yàn),為未來在信息創(chuàng)新產(chǎn)業(yè)環(huán)境中開發(fā)、部署應(yīng)用軟件提供了有益指導(dǎo)和借鑒。此外,本文也提出了可用于優(yōu)化應(yīng)用程序性能和簡(jiǎn)化環(huán)境部署的策略,從而提高國產(chǎn)處理器、操作系統(tǒng)等自主設(shè)計(jì)產(chǎn)品的應(yīng)用范圍和競(jìng)爭(zhēng)力。

      參考文獻(xiàn)

      [1]李韶光,劉雷,郎金鵬,等.CPU發(fā)展概述及國產(chǎn)化之路[J].網(wǎng)絡(luò)空間安全,2020,11(4):114-117.

      [2]李少迪,吳俊敏,張屹,等.申威26010處理器上協(xié)程間通信的研究[J].計(jì)算機(jī)應(yīng)用與軟件,2022,39(12):137-143.

      [3]李勇.基于麒麟系統(tǒng)的即時(shí)通訊系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化技術(shù)與應(yīng)用,2020,39(3):51-55.

      [4]曹政.國產(chǎn)操作系統(tǒng)發(fā)力個(gè)人消費(fèi)市場(chǎng)[N]. 北京日?qǐng)?bào),2022-12-24(7).

      [5]康克松,張慶海,信寄遙,等.UOS操作系統(tǒng)Ceph集群性能測(cè)試工具對(duì)比研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2022,32(5):63-67.

      [6]孫寶亮,王毅,薛凱,等.基于中標(biāo)麒麟的測(cè)發(fā)控類軟件一體化設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2021,29(12):145-149.

      [7]鮑正剛,王興元,王豐.Java項(xiàng)目在申威平臺(tái)上的移植部署[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2023,23(4):64-66.

      [8]趙正旭,陶智,徐騫.基于國產(chǎn)操作系統(tǒng)應(yīng)用軟件部署對(duì)策的探討[J].微型機(jī)與應(yīng)用,2016,35(18):16-18.

      [9]霍亞飛.Qt Creator快速入門(第3版)[M].北京:北京航空航天大學(xué)出版社,2017.

      [10]馮前進(jìn).基于IMS的即時(shí)通訊系統(tǒng)的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2009.

      收稿日期:2023-05-23 修回日期:2023-06-26

      作者簡(jiǎn)介:劉寧海(1988—),男,碩士,工程師,研究方向?yàn)閲a(chǎn)操作系統(tǒng)軟件開發(fā)移植、區(qū)塊鏈。

      殷衛(wèi)強(qiáng)(1990—),男,本科,工程師,研究方向?yàn)閲a(chǎn)操作系統(tǒng)移植測(cè)試。

      猜你喜歡
      信創(chuàng)即時(shí)通訊
      信創(chuàng)浪潮下收費(fèi)系統(tǒng)國產(chǎn)化改造探索
      低代碼開發(fā)平臺(tái)加速信創(chuàng)落地
      中國信息化(2021年8期)2021-09-07 21:34:32
      華云數(shù)據(jù):“全芯全?!敝Α靶艅?chuàng)強(qiáng)國”
      中國信息化(2021年7期)2021-07-22 19:07:16
      EasyStack下注信創(chuàng)云
      江蘇省信創(chuàng)生態(tài)構(gòu)建發(fā)展新格局
      江蘇省信創(chuàng)生態(tài)構(gòu)建發(fā)展新格局
      即時(shí)通訊在高校體育教學(xué)中的應(yīng)用研究
      民事訴訟中即時(shí)通訊記錄的證據(jù)采用進(jìn)路
      即時(shí)通訊軟件發(fā)展模型的實(shí)證研究
      東方教育(2016年19期)2017-01-16 12:34:53
      科學(xué)技術(shù)哲學(xué)視域下的即時(shí)通訊
      科技傳播(2015年14期)2015-12-13 04:20:18
      牙克石市| 普格县| 贡觉县| 巴彦淖尔市| 奉贤区| 盘山县| 清新县| 垣曲县| 鲁山县| 尼勒克县| 巴塘县| 东阿县| 阳谷县| 奇台县| 桐柏县| 永昌县| 治县。| 南宫市| 巴南区| 黑河市| 江阴市| 布尔津县| 武隆县| 永川市| 桦南县| 宜丰县| 蓬安县| 东港市| 蒙城县| 镇康县| 招远市| 淄博市| 乌海市| 额敏县| 潍坊市| 红河县| 兰坪| 抚顺市| 拜城县| 忻城县| 喀喇沁旗|