• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于國產(chǎn)操作系統(tǒng)獨立GUI應(yīng)用研究①

    2021-10-11 06:46:28趙正旭張慶海
    計算機系統(tǒng)應(yīng)用 2021年9期
    關(guān)鍵詞:函數(shù)庫圖形界面鏡像

    趙正旭,徐 棚,張慶海

    1(青島理工大學 機械與汽車工程學院,青島 266525)

    2(石家莊鐵道大學 信息科學與技術(shù)學院,石家莊 050043)

    基于Linux 內(nèi)核的國產(chǎn)操作系統(tǒng)發(fā)行版眾多,卻沒有一款操作系統(tǒng)完全取代微軟桌面系統(tǒng).根本原因是國產(chǎn)操作系統(tǒng)的軟件生態(tài)資源匱乏,軟件種類不全面,數(shù)量不充足導致[1].為擴大國產(chǎn)操作系統(tǒng)的應(yīng)用軟件資源,文獻[1-3]介紹了在國產(chǎn)操作系統(tǒng)NeoKylin環(huán)境中部署第三方開源軟件的傳統(tǒng)方法.但是由于Linux 操作系統(tǒng)中開源軟件依賴問題,大部分開源軟件無法通過傳統(tǒng)的軟件部署方法安裝,因此軟件依賴問題是主要關(guān)注點.

    開源軟件依賴關(guān)系的問題來源于操作系統(tǒng)中的函數(shù)庫文件.函數(shù)庫是為實現(xiàn)某種特定功能而編譯好的代碼或數(shù)據(jù),以文件的形式存在操作系統(tǒng)上,是操作系統(tǒng)的重要組成部分.Windows 或Linux 操作系統(tǒng)中有著大量的函數(shù)庫文件,函數(shù)庫被應(yīng)用程序調(diào)用,應(yīng)用軟件的運行要依賴很多函數(shù)庫文件[4].

    Windows 作為商業(yè)系統(tǒng)其基礎(chǔ)函數(shù)庫相對固定,第三方軟件在此環(huán)境中開發(fā),部署過程中不會有問題.Linux 系統(tǒng)庫函數(shù)文件分為靜態(tài)庫和動態(tài)庫.靜態(tài)庫在軟件開發(fā)過程中會被包含在生成的二進制文件中.共享庫在程序編譯時指定,程序運行時調(diào)用,不被包含在軟件的二進制文件中.而且開源平臺上的軟件一般依賴第三方函數(shù)庫開發(fā),從而形成軟件依賴關(guān)系.所以在國產(chǎn)操作系統(tǒng)中部署第三方軟件時會出現(xiàn)找不到依賴函數(shù)庫的問題[5].

    隨著容器技術(shù)的發(fā)展,docker 容器技術(shù)能夠解決軟件依賴問題,但其主要被用來運行字符界面程序.針對GUI 應(yīng)用程序但不僅限于第三方GUI 應(yīng)用程序,本文的主要工作是:(1)分析GUI 應(yīng)用程序并將其部署在docker 鏡像內(nèi);(2)配置docker 容器與主機共享Linux系統(tǒng)圖形界面服務(wù),并根據(jù)GUI 應(yīng)用程序?qū)τ布Y源的要求,配置容器與主機共享顯卡等驅(qū)動程序.

    1 相關(guān)背景

    1.1 國產(chǎn)操作系統(tǒng)

    在眾多國產(chǎn)操作系統(tǒng)中,以具有代表性的NeoKylin(中標麒麟) 操作系統(tǒng)為例,基于Linux 內(nèi)核開發(fā),是2010年國家核高基項目重點扶持的基礎(chǔ)軟件之一.當前該桌面系統(tǒng)最新版本為V7.0,采用Linux 3.10 內(nèi)核.針對x86和國產(chǎn)CPU 平臺自主開發(fā),打造具有安全可靠和自主可控等特性的國產(chǎn)操作系統(tǒng).NeoKylin 桌面版操作系統(tǒng)獨特的界面設(shè)計使其操作簡單方便,系統(tǒng)內(nèi)置滿足日常辦公的應(yīng)用軟件[6].但是官方提供的應(yīng)用軟件資源,無法滿足用戶的日常需求.在NeoKylin 上安裝其他Linux 發(fā)行版的軟件,通常會因為軟件依賴問題,無法安裝運行.應(yīng)用軟件資源匱乏,嚴重制約國產(chǎn)操作系統(tǒng)的發(fā)展.

    1.2 容器技術(shù)

    容器技術(shù)(Linux container)中的容器通常被理解為集裝箱,它把應(yīng)用程序及程序運行的環(huán)境封裝在容器內(nèi)部,實現(xiàn)應(yīng)用程序在容器中運行[7].在容器的發(fā)展當中,docker 容器發(fā)展較快其技術(shù)也相當成熟,被視為容器的代表[8].Docker 容器支持應(yīng)用打包功能,把應(yīng)用程序運行需要的依賴程序和庫打包在鏡像中,應(yīng)用程序就能夠在docker 容器中穩(wěn)定的執(zhí)行程序.容器是docker 運行鏡像后產(chǎn)生的實體,容器被創(chuàng)建后可以執(zhí)行暫停和銷毀等操作.容器可看作宿主機上的進程,某一個容器出現(xiàn)宕機問題不會影響其他容器的正常運行.雖然容器之間相互隔離,但是無論在同一臺宿主機還是在不同宿主機上的容器可以通過IP 地址或者link機制等其他方式實現(xiàn)容器之間的相互通信[9].Docker運行架構(gòu)如圖1所示.

    圖1 Docker 容器架構(gòu)

    封裝后的鏡像可以放在任意docker的主機上運行,docker 利用鏡像創(chuàng)建容器從而使用容器里的應(yīng)用程序,而容器內(nèi)部應(yīng)用程序運行完全不依賴主機的運行環(huán)境.封裝后的鏡像可以放在任意安裝docker的主機上運行,docker 利用鏡像創(chuàng)建容器從而使用容器里的應(yīng)用程序[10].所以對于應(yīng)用程序,使用容器技術(shù)部署應(yīng)用軟件比傳統(tǒng)軟件部署方式更有實際意義.

    1.3 X11

    X11是X 協(xié)議的第11 個版本,也叫做X Window System,是一種以位圖顯示的網(wǎng)絡(luò)透明化窗口系統(tǒng)[11].X11 標準是開發(fā)可攜性圖形界面的工業(yè)軟件標準,它有一個重要的特性是與設(shè)備無關(guān)結(jié)構(gòu),任何支持X11協(xié)議的硬件,就能執(zhí)行應(yīng)用程序,顯示圖形界面窗口,這種特性使得根據(jù)X11 標準開發(fā)的應(yīng)用程序,可運行在不同環(huán)境下(個人電腦、大型計算機)[12].

    X11是Linux 圖形界面環(huán)境的基礎(chǔ),Linux 本質(zhì)是命令行操作系統(tǒng),而X11 作為應(yīng)用程序運行在Linux操作系統(tǒng)的應(yīng)用層,為操作系統(tǒng)提供圖形界面顯示服務(wù).X11 基于C/S 架構(gòu)如圖2所示,包括X server、X client和X protocol.X client是客戶端是運行在Linux 系統(tǒng)上的應(yīng)用程序,X server是服務(wù)端,運行在顯示設(shè)備主機上,X protocol是客戶端和服務(wù)端的通信協(xié)議.

    圖2 X11 架構(gòu)

    1.4 Equalizer

    Equalizer 一個成熟的并行渲染框架,它提供了大量的特性、算法和系統(tǒng)集成廣泛的現(xiàn)實世界研究和工業(yè)應(yīng)用[13].Equalizer 提供編譯運行方式的Linux 系統(tǒng)有Ubuntu 16.04和RHEL 6.8[14],要編譯運行Equalizer需要安裝大量的軟件依賴庫,NeoKylin 雖然基于Linux操作系統(tǒng),但官方提供的軟件完全不足以編譯運行Equalizer.NeoKylin 使用三方軟件,配置Equalizer 編譯運行環(huán)境,需要進行復(fù)雜的工作,第三方軟件還可能與系統(tǒng)自帶軟件沖突導致系統(tǒng)崩潰.Equalizer作為渲染框架,在NeoKylin 操作系統(tǒng)需要Linux 圖形界面服務(wù)X11的支持,對軟件運行環(huán)境的穩(wěn)定性要求較高,并且需要使用GPU 等硬件.因此以Equalizer為目標對象,進行獨立GUI 應(yīng)用的實驗論證.

    2 系統(tǒng)整體方案

    2.1 獨立應(yīng)用設(shè)計

    Docker 鏡像是容器運行的實例,鏡像為容器提供文件系統(tǒng)資源.Docker 鏡像都是由基礎(chǔ)鏡像制作而成,而基礎(chǔ)鏡像是一般都是Linux 發(fā)行版的docker 鏡像,例如Ubunut、Fedora 等.

    Linux 操作系統(tǒng)由內(nèi)核空間和用戶空間組成.內(nèi)核空間是kernel,Linux 操作系統(tǒng)啟動時會加載bootfs 文件系統(tǒng),bootfs 引導kernel 加載完成后就被卸載掉.Rootfs是用戶空間的文件系統(tǒng),rootfs 通常包含的是操作系統(tǒng)運行所需的文件系統(tǒng)如/dev、/proc、/bin 等標準目錄.對于不同的Linux 發(fā)行版,其bootfs 基本一致,rootfs不同.

    Docker 鏡像采用分層的方式構(gòu)建,每一個鏡像都是由一層一層union 文件系統(tǒng)疊加組成.Docker的基礎(chǔ)鏡像的文件系統(tǒng)分為bootfs和rootfs 兩層,最底端是引導文件系統(tǒng)bootfs,在bootfs 之上的一層是rootfs.Docker 架構(gòu)下,沿用Linux 中rootfs 思想.當docker daemon為docker 容器掛載rootfs的時候,與傳統(tǒng)Linux內(nèi)核類似,將其設(shè)定為只讀模式.在rootfs 掛載完畢后,與Linux 內(nèi)核不同的是,docker daemon 沒有將docker容器的文件系統(tǒng)設(shè)為讀寫模式,而是利用union mount的技術(shù),在這個只讀的rootfs 之上再掛載一個讀寫的文件系統(tǒng),掛載時該讀寫文件系統(tǒng)內(nèi)空無一物.可以把docker 基礎(chǔ)鏡像創(chuàng)建容器的文件系統(tǒng)理解為:只含只讀的rootfs和可讀寫的文件系統(tǒng).

    容器與主機共享kernel,擁有獨立的rootfs,包含一個操作系統(tǒng)所必須的庫文件及軟件管理工具,在容器內(nèi)部部署軟件與主機系統(tǒng)環(huán)境無關(guān).因此docker 容器能夠解決軟件依賴問題.

    接下來就是制作鏡像,把軟件及相關(guān)依賴程序打包在鏡像內(nèi)部制作成獨立的軟件鏡像.Docker 制作鏡像的方法有兩種:手動制作和dockerfile 制作.一般情況下使用dockerfile 制作鏡像,但是基礎(chǔ)鏡像只包含操作系統(tǒng)基本函數(shù)庫文件,軟件需要的一些未知三方庫無法通過管理工具安裝,只能根據(jù)錯誤提示查找,所以先通過手動制作鏡像,再把制作鏡像的過程寫成dockerfile或者shell 腳本實現(xiàn)自動制作鏡像.

    2.2 GUI 顯示設(shè)計

    國產(chǎn)操作系統(tǒng)NeoKylin 采用X11 提供圖形桌面環(huán)境,其X server 版本號為1.19.3,X server在應(yīng)用層負責接收鍵盤和鼠標的輸入.GUI 應(yīng)用程序作為X client,包含X lib和X protocol.X lib是X client的C 語言接口庫,封裝了X protocol,主要提供X protocol的存取能力.X server 運行在連接顯示屏的主機上,X server接收并處理來自X client的請求,在屏幕上繪制圖形.

    在NeoKylin 中,X11 通過DISPLAY 環(huán)境變量指定圖形顯示的屏幕窗口.DISPLAY的格式是[unix:端口]或[主機名:端口],前者表示使用本地的unix 套接字,后者表示使用TCP 套接字.X11 服務(wù)端默認配置是服務(wù)端監(jiān)聽本地的[unix:0]端口,DISPLAY的默認值為0.當系統(tǒng)運行GUI 程序后,程序會通過本地的Unix套接字與X server 通信,然后X server在當前主機屏幕繪制圖形界面.

    鏡像內(nèi)部打包的GUI 應(yīng)用程序,在主機屏幕顯示圖形界面,需要實現(xiàn)GUI 應(yīng)用程序透過容器的隔離機制與主機的X server 通信.Docker 提供了一種機制,能夠?qū)崿F(xiàn)把主機上的某個目錄與容器的某個目錄(掛載點)關(guān)聯(lián)起來,容器內(nèi)掛載點下的文件就是主機系統(tǒng)目錄下的文件,類似Linux 操作系統(tǒng)下的mount 機制.通過掛載文件的方式,使主機與容器共享Unix 套接字,實現(xiàn)容器內(nèi)部的應(yīng)用程序與X server 通信.

    2.3 系統(tǒng)整體架構(gòu)

    Docker 基于基礎(chǔ)鏡像打包GUI 軟件制作獨立的GUI 應(yīng)用軟件鏡像.軟件鏡像創(chuàng)建容器,該容器可以看作獨立運行GUI 應(yīng)用程序.實際上GUI 應(yīng)用程序是在docker 容器內(nèi)運行,因為容器的隔離特性,GUI 應(yīng)用程序不能直接與主機上的X server 通信.主機上GUI 程序都是通過套接字實現(xiàn)與X server 互傳信息,所以利用docker 文件掛載機制把主機上的套接字文件掛載到容器內(nèi)部,實現(xiàn)主機和容器共享套接字.容器內(nèi)部的第三方GUI 應(yīng)用程序作為X client,通過套接字與主機的X server 通信,X server 把GUI 應(yīng)用程序的圖形界面繪制在屏幕上.最終實現(xiàn)GUI 應(yīng)用軟件在國產(chǎn)操作系統(tǒng)環(huán)境中運行.系統(tǒng)的整體架構(gòu)如圖3所示.

    圖3 系統(tǒng)整體架構(gòu)

    3 系統(tǒng)實現(xiàn)

    3.1 封裝獨立GUI 應(yīng)用

    Equalizer是開源渲染框架,在Github 上公布的源碼,提供了Linux、Mac OS和Windows 三種編譯方式.本文利用docker 容器做封裝工具,選擇Linux 發(fā)行版Ubuntu16.04 系統(tǒng)鏡像,把Equalizer 編譯并封裝在鏡像中.獨立的應(yīng)用程序(應(yīng)用程序和程序運行環(huán)境)占用計算機的存儲空間,在制作鏡像時要選擇占用存儲空間較小的鏡像.獨立的GUI 應(yīng)用程序制作步驟如下:

    (1)以Ubuntu16.04的鏡像為基礎(chǔ)鏡像,使用docker創(chuàng)建容器.在創(chuàng)建容器時注意通過在啟動命令中添加--gpus all 參數(shù),把配置好的Nvidia 驅(qū)動共享給容器.

    (2)進入容器命令行,按照官方網(wǎng)站給出的Equalizer編譯環(huán)境配置方法操作,配置Equalizer的編譯環(huán)境.

    (3)下載Equalizer 源代碼,執(zhí)行編譯命令.

    (4)進入編譯后的/bin 文件夾執(zhí)行示例,驗證結(jié)果.

    (5)docker commit 命令,永久保存容器,生成鏡像,方便下次使用.

    Equalizer 封裝成鏡像之后,作為獨立的GUI 應(yīng)用使用.為方便使用,鏡像創(chuàng)建容器時調(diào)用容器內(nèi)部shell腳本,執(zhí)行容器內(nèi)部的應(yīng)用程序.

    3.2 解析X11 協(xié)議

    NeoKylin 操作系統(tǒng),采用Xorg 實現(xiàn)X11 協(xié)議,Xorg提供X server 服務(wù),當系統(tǒng)內(nèi)有程序運行時,程序會與X server 通信,X server 接收鼠標、鍵盤的輸入和管理屏幕輸出.Docker 內(nèi)部運行的程序要在屏幕上顯示界面,應(yīng)用程序就必須要與X server 通信.

    基于國產(chǎn)操作系統(tǒng)上GUI 應(yīng)用程序的圖形界面展示原理,采用主機與容器共享X11的Unix 套接字的方式,實現(xiàn)X client的內(nèi)容從容器內(nèi)部傳遞到主機上的X server.把主機上的套接字目錄掛載到容器內(nèi)部,實現(xiàn)主機和容器共享Unix 套接字.

    主機上套接字文件在tmp 文件夾中,將其掛載到容器內(nèi)部,-v/tmp/.X11-unix:/tmp/.X11-unix,實現(xiàn)主機和容器共享套接字目錄.啟動程序后,底層封裝的Xlib(C 語言接口庫)通過共享unix 套接字,傳遞信息給X server.X server 代碼運行,main 函數(shù)進入一個循環(huán).每次循環(huán)都包含,初始化、處理X client 信息和退出.最后X server 根據(jù)X client 發(fā)送的請求,在主機顯示器上繪制圖形界面.

    4 實驗論證

    本章節(jié)主要通過具體實驗,驗證在國產(chǎn)操作系統(tǒng)環(huán)境中方案實施的可行性.

    4.1 實驗平臺

    實驗平臺的計算機軟件和硬件配置信息如表1所示,主要包括:CPU、內(nèi)存、顯卡、系統(tǒng)、內(nèi)核和容器版本信息.

    表1 實驗軟硬件環(huán)境

    4.2 實驗環(huán)境配置

    實驗環(huán)境配置的軟件包含:Nvidia 顯卡驅(qū)動、docker、Nvidia-container-toolkit 工具包.

    在NeoKylin 系統(tǒng)上安裝Linux 版本的Nvidia驅(qū)動,驅(qū)動要與顯卡型號匹配,否則會安裝失敗.在安裝之前,禁用系統(tǒng)默認的驅(qū)動,要把系統(tǒng)運行級別更改為文本模式.使用chmod 命令設(shè)置驅(qū)動程序可執(zhí)行權(quán)限,再進行安裝.

    NeoKylin 操作系統(tǒng)上安裝docker 無法直接安裝,直接下載rpm 包強制安裝也無法運行,因為官方源中沒有提供安裝docker的依賴包.首先需要給NeoKylin操作系統(tǒng)換源,更換centos7的源,然后引入docker 源,直接yum 下載安裝.Linux 系統(tǒng)下,應(yīng)用程序穩(wěn)定運行的基礎(chǔ)就是依賴庫文件齊全.Yum 安裝docker 組件docker-ce、docker-ce-cli、containerd.io 時,操作系統(tǒng)僅提示安裝container-seLinux 依賴和升級libseccomp 依賴軟件.系統(tǒng)能安裝的依賴軟件是保存在文件夾的庫文件對系統(tǒng)不會有影響,重點關(guān)注升級的依賴.Libseccomp包為Linux 內(nèi)核的系統(tǒng)調(diào)用過濾機制提供了一個易于使用且獨立于平臺的接口,根據(jù)軟件向下兼容的特性,使其版本的升級對系統(tǒng)無影響.依賴庫文件配置齊全,docker 應(yīng)用在NeoKylin 系統(tǒng)中即可穩(wěn)定運行.

    Equalizer是一個渲染框架,需要用到Nvidia 顯卡,安裝Nvidia-container-toolkit 工具包,使docker 內(nèi)部能夠調(diào)用Nvidia 驅(qū)動程序.安裝方法參考Nvidiadocker 網(wǎng)站提供的安裝說明[15],網(wǎng)站并沒有提供針對NeoKylin 操作系統(tǒng)的工具包,可使用CentOS7的工具包替代.

    NeoKylin 操作系統(tǒng),Xhost 命令是X server的訪問控制工具.在當前桌面顯示docker 容器內(nèi)的GUI 應(yīng)用程序,需要對X server 設(shè)置,允許docker 內(nèi)部的GUI程序在顯示器上顯示.終端執(zhí)行Xhost +,授予每個用戶訪問X server的權(quán)限.

    以上是整個實驗環(huán)境的配置,完成以上設(shè)置后,使用docker 制作Equalizer 渲染框架的鏡像.

    4.3 制作并運行獨立GUI 應(yīng)用

    NeoKylin 環(huán)境中制作GUI 應(yīng)用程序鏡像并運行步驟是:(1)基于Ubuntu16.04 鏡像創(chuàng)建容器,創(chuàng)建命令中配置掛載X11的Unix 套接字,并引入顯卡驅(qū)動程序;(2)在容器內(nèi)部安裝部署Equalizer;(3)容器內(nèi)運行Equalizer 程序,測試啟動是否正常;(4)主機內(nèi)執(zhí)行命令,Equalizer 鏡像創(chuàng)建容器并自動運行Equalizer.

    編寫shell 腳本,自動配置以上操作.主要包括以下4 個腳本:

    1)腳本Run.sh在主機上運行,負責運行ubuntu16.04鏡像創(chuàng)建容器,主要內(nèi)容如下(#后為注釋):

    -v/tmp/.X11-unix:/tmp/.X11-unix #設(shè)置主機與容器共享套接字

    -gpus all #設(shè)置容器與主機共享顯卡驅(qū)動

    2)腳本Equalizer.sh在容器內(nèi)部運行,負責編譯Equalizer 源碼,主要內(nèi)容如下:

    apt-get install … #安裝編譯環(huán)境

    git clone … #下載源碼

    ninja #編譯

    3)腳本Init.sh在容器內(nèi)部運行,負責啟動Equalizer可執(zhí)行文件,主要內(nèi)容如下:

    cd/Equalizer/build/bin/#進入編譯后的文件目錄

    ./eqPly #執(zhí)行可執(zhí)行文件

    4)腳本EqualizerRun.sh在主機上運行,負責啟動容器內(nèi)部GUI 程序,主要內(nèi)容如下:

    -v/tmp/.X11-unix:/tmp/.X11-unix #設(shè)置主機與容器共享套接字

    -v/Equalizer:/Equalizer#主機與容器共享文件夾

    -e DISPLAY=unix$DISPLAY #設(shè)置主機顯示屏

    -gpus all #共享顯卡驅(qū)動

    Docker 運行Equalizer 框架鏡像,使用分布式渲染時,容器和主機要設(shè)置IP和端口號,因為分布式渲染是通過網(wǎng)絡(luò)實現(xiàn)通信.

    4.4 實驗結(jié)果分析

    在NeoKylin 操作系統(tǒng)中直接配置Equalizer 編譯安裝環(huán)境,由于官方源提供的軟件不足以配置Equalizer的編譯環(huán)境,所以下載相關(guān)依賴軟件源碼編譯安裝,而該軟件又依賴其他軟件,整個過程陷入一個循環(huán)之中.在安裝軟件過程中,因為第三方依賴軟件問題多次導致系統(tǒng)無法啟動,未能成功安裝編譯.

    Equalizer 渲染框架源碼大小100.9 MB.在容器內(nèi)配置編譯環(huán)境需要安裝的軟件及相關(guān)依賴庫共394 個,需要269 MB 存儲空間,安裝完成使用978 MB的額外磁盤空間.源碼編譯完成后制作的鏡像為2.82 GB,導出鏡像包為2.68 GB.

    為測試容器內(nèi)Equalizer 程序的穩(wěn)定性,對其進行壓力測試.使用兩個節(jié)點渲染,增加渲染模型的大小比較模型加載時間和渲染的幀率.實驗數(shù)據(jù)如表2所示.

    表2 Equalizer 渲染不同模型產(chǎn)生的數(shù)據(jù)

    實驗結(jié)果表明,在NeoKylin 環(huán)境中使用docker 容器運行Equalizer 渲染的模型越大,加載時間越久,幀率降低.雖然總體渲染效率下降,在該環(huán)境下Equalizer不僅能夠?qū)?.4 MB的小模型進行渲染,而且能夠渲染1.05 GB的大模型,證明其具有穩(wěn)定性,也表明在國產(chǎn)操作系統(tǒng)NeoKylin 環(huán)境中,使用docker 容器運行GUI應(yīng)用程序的方案是可行的.

    5 總結(jié)與展望

    本文對國產(chǎn)操作系統(tǒng)環(huán)境中制作并運行獨立GUI應(yīng)用程序進行探索,利用容器技術(shù)初步實現(xiàn)制作獨立GUI 應(yīng)用程序在國產(chǎn)操作系統(tǒng)上運行.結(jié)果表明在Neo-Kylin 國產(chǎn)操作系統(tǒng)上,使用docker 容器技術(shù),可以實現(xiàn)第三方GUI 應(yīng)用程序獨立運行.文中方案給國產(chǎn)操作系統(tǒng)兼容第三方GUI 應(yīng)用程序提供新思路,使用該方案可以增加國產(chǎn)操作系統(tǒng)的應(yīng)用軟件資源.但方案中還有許多細節(jié)問題需要研究,包括容器和主機共享文件的機制,完善容器技術(shù)或可解決國產(chǎn)操作系統(tǒng)軟件資源匱乏的問題,有助于加快國產(chǎn)操作系統(tǒng)的發(fā)展.

    猜你喜歡
    函數(shù)庫圖形界面鏡像
    Epigallocatechin-3-gallate exerts antihypertensive effects and improves endothelial function in spontaneously hypertensive rats
    用于優(yōu)化雷達信號處理的VSIPL函數(shù)庫
    基于Python的開源GIS應(yīng)用開發(fā)
    鏡像
    當代黨員(2020年20期)2020-11-06 04:17:52
    Scratch求最值和平均值
    電腦報(2020年34期)2020-09-12 14:03:42
    基于BB60C的IQ數(shù)據(jù)采集與存儲系統(tǒng)設(shè)計
    鏡像
    小康(2018年23期)2018-08-23 06:18:52
    用VMRun快速置備千臺虛擬機
    重看圖形界面“扁平化”與“擬物化”之爭——關(guān)于設(shè)計思維的探討
    鏡像
    小康(2015年4期)2015-03-31 14:57:40
    日韩成人伦理影院| 亚洲久久久久久中文字幕| 国产精品成人在线| 天堂网av新在线| 99久久精品国产国产毛片| 最新中文字幕久久久久| 国产精品人妻久久久久久| 啦啦啦啦在线视频资源| 在现免费观看毛片| 22中文网久久字幕| 亚洲,欧美,日韩| 久久精品国产亚洲网站| 欧美极品一区二区三区四区| 国产精品国产三级国产专区5o| 久久国内精品自在自线图片| 丰满少妇做爰视频| 欧美zozozo另类| 91久久精品国产一区二区三区| 欧美精品国产亚洲| 国产伦精品一区二区三区视频9| 久久热精品热| 寂寞人妻少妇视频99o| 日本av手机在线免费观看| 欧美日韩视频高清一区二区三区二| 精品久久国产蜜桃| 免费高清在线观看视频在线观看| 插逼视频在线观看| 99久久九九国产精品国产免费| 国产淫片久久久久久久久| 超碰av人人做人人爽久久| 亚洲精品日韩在线中文字幕| 欧美最新免费一区二区三区| 在线播放无遮挡| 一级毛片aaaaaa免费看小| 中文字幕久久专区| 亚洲av免费高清在线观看| 草草在线视频免费看| 大话2 男鬼变身卡| 老司机影院毛片| 18+在线观看网站| 亚洲天堂国产精品一区在线| 精品人妻一区二区三区麻豆| 欧美成人午夜免费资源| 少妇熟女欧美另类| 日日撸夜夜添| 看非洲黑人一级黄片| 日韩大片免费观看网站| 男的添女的下面高潮视频| 人体艺术视频欧美日本| 18禁动态无遮挡网站| 国产精品一二三区在线看| 亚洲国产成人一精品久久久| 狠狠精品人妻久久久久久综合| 男人狂女人下面高潮的视频| 国产亚洲一区二区精品| 麻豆精品久久久久久蜜桃| 久久久久国产精品人妻一区二区| 少妇人妻精品综合一区二区| 韩国高清视频一区二区三区| 97精品久久久久久久久久精品| 国产精品99久久99久久久不卡 | 秋霞伦理黄片| 欧美97在线视频| 精品一区二区三卡| 免费少妇av软件| 日韩电影二区| 欧美变态另类bdsm刘玥| 成年女人在线观看亚洲视频 | 日韩欧美精品v在线| 日韩av不卡免费在线播放| av在线观看视频网站免费| 天天躁夜夜躁狠狠久久av| 精品熟女少妇av免费看| 国产高清不卡午夜福利| 国产黄片美女视频| 精品国产露脸久久av麻豆| 亚洲国产精品999| 国产精品人妻久久久久久| 美女被艹到高潮喷水动态| 亚洲天堂国产精品一区在线| 在线观看人妻少妇| 干丝袜人妻中文字幕| 水蜜桃什么品种好| 久久久色成人| 免费看日本二区| 青春草视频在线免费观看| 久久精品熟女亚洲av麻豆精品| 欧美97在线视频| 欧美成人午夜免费资源| 日韩亚洲欧美综合| 中国国产av一级| 精品一区二区免费观看| 大话2 男鬼变身卡| 久热这里只有精品99| 99热这里只有是精品在线观看| 欧美性猛交╳xxx乱大交人| 亚洲av成人精品一二三区| 寂寞人妻少妇视频99o| 久久精品熟女亚洲av麻豆精品| 黄色视频在线播放观看不卡| 一级片'在线观看视频| 免费观看在线日韩| 成人一区二区视频在线观看| 99九九线精品视频在线观看视频| 午夜福利网站1000一区二区三区| 伦精品一区二区三区| 久久精品国产亚洲av天美| 水蜜桃什么品种好| 久久久久国产网址| 网址你懂的国产日韩在线| 夜夜看夜夜爽夜夜摸| 人人妻人人澡人人爽人人夜夜| 大香蕉久久网| 国产精品一区二区在线观看99| 制服丝袜香蕉在线| 交换朋友夫妻互换小说| 亚洲av国产av综合av卡| 久久久午夜欧美精品| 国产精品偷伦视频观看了| 国产午夜精品久久久久久一区二区三区| av在线观看视频网站免费| 搡女人真爽免费视频火全软件| 亚洲精品视频女| 久久99蜜桃精品久久| 亚洲欧美精品专区久久| 你懂的网址亚洲精品在线观看| 成人亚洲精品一区在线观看 | 一个人观看的视频www高清免费观看| 超碰av人人做人人爽久久| 91在线精品国自产拍蜜月| videossex国产| 国产精品久久久久久av不卡| 丰满乱子伦码专区| 99久久中文字幕三级久久日本| av免费在线看不卡| 国产精品国产三级国产av玫瑰| 国产精品一及| 菩萨蛮人人尽说江南好唐韦庄| 男女下面进入的视频免费午夜| 国产精品福利在线免费观看| 午夜福利在线在线| 亚洲精品自拍成人| 婷婷色麻豆天堂久久| 在线观看av片永久免费下载| 欧美xxⅹ黑人| 午夜福利网站1000一区二区三区| av福利片在线观看| 精品国产一区二区三区久久久樱花 | 尾随美女入室| 久久久精品免费免费高清| 在线观看一区二区三区激情| av在线app专区| 涩涩av久久男人的天堂| 观看免费一级毛片| 涩涩av久久男人的天堂| 美女高潮的动态| 一级毛片久久久久久久久女| 亚洲天堂av无毛| 国产白丝娇喘喷水9色精品| 欧美成人精品欧美一级黄| 欧美性猛交╳xxx乱大交人| 久久99精品国语久久久| 国产成人一区二区在线| 亚洲av不卡在线观看| 亚洲综合精品二区| 国产亚洲午夜精品一区二区久久 | 亚洲av电影在线观看一区二区三区 | 全区人妻精品视频| 国产伦精品一区二区三区四那| 熟妇人妻不卡中文字幕| 黄色欧美视频在线观看| 国产精品不卡视频一区二区| 三级男女做爰猛烈吃奶摸视频| 欧美日韩视频精品一区| 亚洲av免费在线观看| 美女xxoo啪啪120秒动态图| 国产成人免费无遮挡视频| 久久久久网色| 亚洲精品456在线播放app| 观看免费一级毛片| av在线亚洲专区| 久久久久久久久久人人人人人人| 日本黄大片高清| 男女边摸边吃奶| 男女下面进入的视频免费午夜| 2018国产大陆天天弄谢| 少妇裸体淫交视频免费看高清| 丝袜美腿在线中文| 中文乱码字字幕精品一区二区三区| 干丝袜人妻中文字幕| av在线app专区| 免费人成在线观看视频色| 亚洲人成网站在线观看播放| 插逼视频在线观看| 免费高清在线观看视频在线观看| 成人国产麻豆网| 一边亲一边摸免费视频| 能在线免费看毛片的网站| 国产精品久久久久久久久免| 免费看av在线观看网站| 高清在线视频一区二区三区| 亚洲,欧美,日韩| 夜夜看夜夜爽夜夜摸| 精品久久久久久久久亚洲| 身体一侧抽搐| 亚洲欧美精品专区久久| 亚洲欧洲国产日韩| 在线观看三级黄色| 99九九线精品视频在线观看视频| 亚洲国产精品成人综合色| 插阴视频在线观看视频| 在线免费十八禁| 99热这里只有是精品在线观看| 亚洲美女搞黄在线观看| 99热这里只有是精品50| 日日摸夜夜添夜夜添av毛片| 白带黄色成豆腐渣| 日韩欧美 国产精品| 草草在线视频免费看| 国产伦精品一区二区三区视频9| 各种免费的搞黄视频| 一个人观看的视频www高清免费观看| 女人被狂操c到高潮| 高清在线视频一区二区三区| 久久精品国产亚洲av涩爱| 99视频精品全部免费 在线| 制服丝袜香蕉在线| 日韩欧美精品v在线| 日日撸夜夜添| 久久ye,这里只有精品| 女人十人毛片免费观看3o分钟| 丰满少妇做爰视频| 狂野欧美激情性bbbbbb| 人人妻人人看人人澡| 91aial.com中文字幕在线观看| 青春草亚洲视频在线观看| 人人妻人人看人人澡| 久久这里有精品视频免费| 国产熟女欧美一区二区| 高清日韩中文字幕在线| 久久久久久久精品精品| 少妇 在线观看| 午夜精品一区二区三区免费看| 亚洲成色77777| 中文欧美无线码| 亚洲精品国产色婷婷电影| 国产精品久久久久久精品电影小说 | 大话2 男鬼变身卡| 99热国产这里只有精品6| 国产一区二区在线观看日韩| 九九久久精品国产亚洲av麻豆| 亚洲成人中文字幕在线播放| 亚洲精品,欧美精品| 亚洲av福利一区| 亚洲自偷自拍三级| 免费大片18禁| 日本av手机在线免费观看| 国模一区二区三区四区视频| 最近中文字幕高清免费大全6| 久久综合国产亚洲精品| 在线免费十八禁| 亚洲欧美一区二区三区国产| 中文在线观看免费www的网站| 亚洲图色成人| 亚洲无线观看免费| 免费av观看视频| 亚洲性久久影院| 女人久久www免费人成看片| 看免费成人av毛片| 亚洲精品亚洲一区二区| 中文天堂在线官网| 26uuu在线亚洲综合色| 99热国产这里只有精品6| 亚洲av福利一区| 夫妻午夜视频| 在现免费观看毛片| 欧美丝袜亚洲另类| 亚洲丝袜综合中文字幕| 欧美日韩一区二区视频在线观看视频在线 | 日本-黄色视频高清免费观看| 国产精品福利在线免费观看| 久久综合国产亚洲精品| 久久精品夜色国产| 午夜精品一区二区三区免费看| 欧美区成人在线视频| 99久久中文字幕三级久久日本| 精品久久久精品久久久| 欧美高清性xxxxhd video| 国产成人一区二区在线| 亚洲熟女精品中文字幕| 国产高清国产精品国产三级 | 久久精品夜色国产| 日韩成人伦理影院| 亚洲天堂av无毛| 18禁在线无遮挡免费观看视频| 18禁动态无遮挡网站| 免费av不卡在线播放| 亚洲国产av新网站| 插阴视频在线观看视频| 精品久久久噜噜| 国内精品美女久久久久久| 99热国产这里只有精品6| 精品久久久久久久末码| 国产大屁股一区二区在线视频| 国产精品.久久久| 只有这里有精品99| 久久精品综合一区二区三区| 丝袜脚勾引网站| 中文字幕人妻熟人妻熟丝袜美| 免费大片黄手机在线观看| 日韩人妻高清精品专区| 国产成年人精品一区二区| 卡戴珊不雅视频在线播放| 九九爱精品视频在线观看| 久久亚洲国产成人精品v| 亚洲一区二区三区欧美精品 | 蜜桃久久精品国产亚洲av| 欧美激情久久久久久爽电影| 只有这里有精品99| 一级毛片电影观看| 日本一二三区视频观看| 免费看日本二区| 91狼人影院| 永久免费av网站大全| 日日撸夜夜添| 丰满少妇做爰视频| 99久久人妻综合| 欧美日韩一区二区视频在线观看视频在线 | 久久久亚洲精品成人影院| 国产亚洲91精品色在线| 日韩免费高清中文字幕av| 成年av动漫网址| 色综合色国产| 日韩欧美精品v在线| 嫩草影院精品99| 国产中年淑女户外野战色| 免费人成在线观看视频色| 大话2 男鬼变身卡| 亚洲精品色激情综合| 男插女下体视频免费在线播放| 最近最新中文字幕大全电影3| h日本视频在线播放| 婷婷色综合大香蕉| 嫩草影院精品99| 少妇 在线观看| 久热这里只有精品99| 午夜福利高清视频| 777米奇影视久久| 男人和女人高潮做爰伦理| 真实男女啪啪啪动态图| 高清午夜精品一区二区三区| 国产一区二区在线观看日韩| 国产精品久久久久久av不卡| 99热这里只有精品一区| 国产黄片美女视频| 婷婷色综合大香蕉| 日本爱情动作片www.在线观看| 嘟嘟电影网在线观看| 日韩国内少妇激情av| av免费观看日本| 亚洲精品久久午夜乱码| 91精品国产九色| 国产毛片a区久久久久| 国产一区二区在线观看日韩| 毛片一级片免费看久久久久| 在线观看一区二区三区激情| 日本-黄色视频高清免费观看| 精品久久久久久久久av| 黄色视频在线播放观看不卡| 秋霞伦理黄片| 汤姆久久久久久久影院中文字幕| 狂野欧美激情性xxxx在线观看| 亚洲精品国产av蜜桃| 黄色配什么色好看| 又大又黄又爽视频免费| 国产成人a∨麻豆精品| 亚洲图色成人| 国产永久视频网站| 亚洲精品久久午夜乱码| 日本一本二区三区精品| 国产高潮美女av| 欧美一区二区亚洲| 久久久久久久大尺度免费视频| 九九在线视频观看精品| 大码成人一级视频| 国产成人aa在线观看| kizo精华| 欧美亚洲 丝袜 人妻 在线| 久久综合国产亚洲精品| 女的被弄到高潮叫床怎么办| 国产精品.久久久| 国产成人免费观看mmmm| 午夜福利视频1000在线观看| 亚洲丝袜综合中文字幕| 日韩人妻高清精品专区| 亚洲欧美成人综合另类久久久| 亚洲精品国产av成人精品| 国产成人精品一,二区| 国产高潮美女av| 日本色播在线视频| 在线观看国产h片| 热99国产精品久久久久久7| 国产69精品久久久久777片| 麻豆成人av视频| 国产一区二区在线观看日韩| 亚洲国产最新在线播放| 欧美+日韩+精品| 高清日韩中文字幕在线| 亚洲欧美一区二区三区国产| 色综合色国产| 各种免费的搞黄视频| 乱系列少妇在线播放| 91精品一卡2卡3卡4卡| 久久99精品国语久久久| 在线观看免费高清a一片| tube8黄色片| 久久久亚洲精品成人影院| 国精品久久久久久国模美| 又黄又爽又刺激的免费视频.| 国产高潮美女av| 亚洲国产精品专区欧美| 国产成人精品婷婷| 一个人观看的视频www高清免费观看| 一级黄片播放器| 成年女人在线观看亚洲视频 | 午夜激情久久久久久久| 丝袜美腿在线中文| 国产乱人偷精品视频| 欧美最新免费一区二区三区| 高清日韩中文字幕在线| 男人和女人高潮做爰伦理| 在线播放无遮挡| 精品午夜福利在线看| 成年av动漫网址| av播播在线观看一区| av卡一久久| 国产淫语在线视频| av国产免费在线观看| 亚洲国产色片| 亚洲性久久影院| 精品午夜福利在线看| 国产91av在线免费观看| 国产成人精品久久久久久| 欧美日韩视频高清一区二区三区二| 国产一区有黄有色的免费视频| 国产亚洲午夜精品一区二区久久 | 九九在线视频观看精品| 舔av片在线| 国产免费一级a男人的天堂| 人人妻人人爽人人添夜夜欢视频 | 99热这里只有是精品在线观看| 欧美日韩综合久久久久久| 欧美性感艳星| 观看免费一级毛片| 国产精品福利在线免费观看| 99久国产av精品国产电影| 亚洲欧美日韩东京热| 亚洲国产欧美在线一区| 99热这里只有是精品在线观看| 国产男女超爽视频在线观看| 欧美国产精品一级二级三级 | 日产精品乱码卡一卡2卡三| 国产免费一区二区三区四区乱码| 国产伦精品一区二区三区四那| 99热国产这里只有精品6| 久久久色成人| 欧美激情久久久久久爽电影| 夫妻午夜视频| 涩涩av久久男人的天堂| 欧美日韩在线观看h| 国产老妇伦熟女老妇高清| 日韩,欧美,国产一区二区三区| 大片电影免费在线观看免费| 国产精品蜜桃在线观看| 麻豆久久精品国产亚洲av| 国产av国产精品国产| 亚洲精品一二三| 2018国产大陆天天弄谢| 精品亚洲乱码少妇综合久久| 深夜a级毛片| 久久久色成人| av天堂中文字幕网| 综合色av麻豆| 波多野结衣巨乳人妻| 亚洲精品国产成人久久av| 国产精品麻豆人妻色哟哟久久| 日本色播在线视频| 丝袜脚勾引网站| 三级男女做爰猛烈吃奶摸视频| 亚洲av电影在线观看一区二区三区 | 亚洲av成人精品一区久久| 欧美日韩视频精品一区| 麻豆成人午夜福利视频| 亚洲成色77777| 超碰av人人做人人爽久久| 亚洲av中文字字幕乱码综合| 爱豆传媒免费全集在线观看| 中文字幕免费在线视频6| 蜜臀久久99精品久久宅男| 亚洲最大成人手机在线| 国产精品一区二区在线观看99| 久久综合国产亚洲精品| 男人添女人高潮全过程视频| 精品国产三级普通话版| 99热这里只有是精品在线观看| 国内精品美女久久久久久| 91精品伊人久久大香线蕉| 高清视频免费观看一区二区| 又粗又硬又长又爽又黄的视频| 丝瓜视频免费看黄片| 少妇人妻一区二区三区视频| 国产 精品1| 亚洲欧美一区二区三区黑人 | 国产精品久久久久久av不卡| 免费看不卡的av| 国产亚洲91精品色在线| 午夜精品国产一区二区电影 | 日本午夜av视频| 毛片一级片免费看久久久久| 国产伦理片在线播放av一区| 男女国产视频网站| 国产成人a区在线观看| 久久久成人免费电影| 如何舔出高潮| 日产精品乱码卡一卡2卡三| 乱系列少妇在线播放| 亚洲欧美一区二区三区黑人 | 男插女下体视频免费在线播放| 全区人妻精品视频| 免费观看的影片在线观看| 欧美区成人在线视频| 大片免费播放器 马上看| 搞女人的毛片| 日韩强制内射视频| 成年女人在线观看亚洲视频 | 国产欧美日韩一区二区三区在线 | 国产黄频视频在线观看| 国产美女午夜福利| 欧美精品一区二区大全| 高清欧美精品videossex| .国产精品久久| 亚洲aⅴ乱码一区二区在线播放| 欧美+日韩+精品| 久久影院123| 大又大粗又爽又黄少妇毛片口| 一区二区av电影网| 国产欧美日韩一区二区三区在线 | av免费观看日本| 日本黄色片子视频| 亚洲激情五月婷婷啪啪| 下体分泌物呈黄色| 国产高潮美女av| 色婷婷久久久亚洲欧美| 国产有黄有色有爽视频| 亚洲精品影视一区二区三区av| 国产探花极品一区二区| 国产精品女同一区二区软件| 在线播放无遮挡| 久久精品综合一区二区三区| 久久精品熟女亚洲av麻豆精品| 亚洲国产欧美在线一区| 日本一本二区三区精品| 我的女老师完整版在线观看| 亚洲国产精品国产精品| 精品久久久久久久久亚洲| 国产视频内射| 久久久亚洲精品成人影院| 简卡轻食公司| 亚洲av欧美aⅴ国产| 久久久久精品性色| av在线蜜桃| 一本一本综合久久| 肉色欧美久久久久久久蜜桃 | 18禁在线播放成人免费| 18+在线观看网站| 中国国产av一级| 国产精品不卡视频一区二区| 噜噜噜噜噜久久久久久91| 日韩成人伦理影院| 久久影院123| 国产毛片在线视频| 偷拍熟女少妇极品色| 亚洲性久久影院| 欧美日韩视频高清一区二区三区二| 麻豆成人av视频| 免费观看无遮挡的男女| 看十八女毛片水多多多| 丝袜美腿在线中文| 色网站视频免费| 99久久精品国产国产毛片| 国产免费福利视频在线观看| 国产精品一区www在线观看| 国产高潮美女av| 精品人妻熟女av久视频| 91午夜精品亚洲一区二区三区| 最近2019中文字幕mv第一页| freevideosex欧美| 国产精品一二三区在线看| 蜜臀久久99精品久久宅男| 天堂俺去俺来也www色官网| av在线观看视频网站免费| 美女高潮的动态| 少妇被粗大猛烈的视频| 免费黄网站久久成人精品| 国内揄拍国产精品人妻在线| 日本三级黄在线观看| 99热网站在线观看| 高清在线视频一区二区三区| 我的女老师完整版在线观看| 在线观看一区二区三区激情| 国产黄a三级三级三级人| 赤兔流量卡办理| av在线天堂中文字幕| 久久精品国产亚洲av涩爱| 国产av国产精品国产|