技德發(fā)布了可在Linux系統(tǒng)中無縫運行的移動應用——JStack 2.0
Jide Systems最近推出了融合桌面產品JStack 2.0。在先前版本的基礎上,JStack 2.0實現了一項重大突破,即可以在Linux環(huán)境中同時打開和執(zhí)行Linux應用程序和移動應用程序。
“JStack” 是技德系統(tǒng)基于Linux平臺設計的跨平臺應用兼容層技術。開發(fā)該項目的目的是為了幫助基于Linux平臺發(fā)展的國產操作系統(tǒng)解決應用生態(tài)不足的困境。
我國國產操作系統(tǒng)都是基于Linux平臺發(fā)展的,在桌面操作系統(tǒng)的市場占有率層面,Linux與Windows相距甚遠,這也導致Linux的應用生態(tài)在數量和質量上都很難獲得快速與繁榮的發(fā)展。在移動端操作系統(tǒng)方面,安卓與iOS兩大操作系統(tǒng)的主導地位則幾乎不可能被其他后來者撼動。迄今為止,移動端的應用生態(tài)已經成為世界上最大的業(yè)界生態(tài)。將移動應用生態(tài)引入到Linux,是解決Linux平臺生態(tài)薄弱的最有效途徑,但這并不容易。
異構系統(tǒng)之間的兼容層技術目前是國內外基于Linux平臺發(fā)展的操作系統(tǒng)都希望解決的一個技術難題。在國外市場,一直以來有不同的開發(fā)團隊在該技術領域不斷地進行嘗試,前者有提供諸如BlueStacks和Genymotion之類的虛擬機/模擬器,后者有Anbox( Android in a box)開源系統(tǒng),可讓用戶在本地Linux內核的PC上運行移動應用程序,不依賴全虛擬機方式運行。
不過,目前諸多技術解決方案都各有各的優(yōu)缺點,以采用虛擬機方式運行移動應用環(huán)境的兼容層技術為例,由于技術難度不高,比較容易實現,該方案被大多數開發(fā)團隊所采用,但該方案整體性能損耗很大,對宿主OS機器的CPU有很高的性能要求,同時因為宿主OS能提供的硬件和外設與移動操作系統(tǒng)本身的外設有較大的區(qū)別,所以存在難以克服的應用兼容性問題,比如部分應用無法運行、運行死機等等,再加上原生移動應用大多是手機生態(tài),因此能運行的應用還存在屏幕旋轉等諸多易用性問題。
Anbox的技術核心則是基于Linux上的“容器(Container)”技術來實現的一種技術方案。相比虛擬機方案,Anbox總體性能開銷少了很多,不像上一種方案一個窗口就是一個完整的異構操作系統(tǒng),無法同時開啟運行多個應用。Anbox技術支持多個應用程序共同使用一套運行環(huán)境。然而它的缺點也很明顯,Anbox不支持目前最新的OpenGL ES 3.0接口,因此有很多應用是無法運行的,同時Anbox的多窗口是通過原生安卓的Freefrom機制來實現的,而原生安卓對多窗口本身支持的就不好,因此有較大的運行穩(wěn)定性問題,此外還有移動應用的部分兼容性問題。到目前為止,該產品仍然處于Alpha狀態(tài),并非所有Linux用戶都可以輕松安裝Anbox??偟膩碚f,這些方案離產品化還比較遠。
為了避開現存方案中的諸多缺點,真正實現融合的、多窗口化的Linux和移動應用兼容,技德 JStack應用兼容層技術采用了完全不同的技術路線。JStack兼容層技術擁有四個核心組件:
1.輕量虛擬化組件,解決了異構操作系統(tǒng)在Linux環(huán)境中平穩(wěn)運行問題,有效的減少了虛擬機帶來的系統(tǒng)開銷;
2.虛擬合成顯示技術,解決了OpenGL/ES帶來的圖形渲染兼容問題,以及Linux環(huán)境中的PC應用和移動應用兼容圖形顯示問題,包括多屏和單屏融合顯示;
3.移動應用的窗口化及裁剪,解決了移動應用窗口化顯示和系統(tǒng)進程調用開銷的問題;
4.虛擬外設啟動技術,解決了不同類型的應用同時開啟,對同一硬件外設競爭使用和調度問題。
在穩(wěn)定性方面,JStack兼容層技術可以使大多數移動應用(包括部分大型3D游戲)與Linux平臺操作系統(tǒng)一體化融合。在兼容性方面,JStack優(yōu)先針對ARM架構的國產飛騰芯片、鯤鵬芯片的機型進行了適配與支持,未來JStack將適配支持X86架構,并計劃對市場開放下載。
去年發(fā)布的JStack1.0實現了移動應用以多窗口的形式出現在Linux平臺操作系統(tǒng)的屏幕上。技德聯合麒麟軟件,將這一版本兼容層技術應用在麒麟軟件的Kydroid 2.0中,開啟了在信息技術應用創(chuàng)新市場的產品化路徑。
與上一版本相比,最新發(fā)布的JStack2.0的重大突破在于,異構操作系統(tǒng)不再以雙桌面的形式呈現,而是以單桌面形式,使移動應用直接運行在Linux環(huán)境中。
用戶可以同時開啟并運行Linux應用與移動應用,在安全的內存共享與數據共享基礎上,實現了真正的系統(tǒng)級融合。其界面管理更加簡潔順暢,顯示共享、內存等方面也得到了進一步優(yōu)化,用戶的使用體驗得到大幅度提升。
據悉,JStack 2.0兼容層技術將應用于麒麟軟件Kydroid3.0產品中,以使移動應用可以無縫運行在銀河麒麟桌面操作系統(tǒng)中。此舉也意味著,Linux兼容運行移動應用這一技術分支已經全面走向了商業(yè)化,未來將在信創(chuàng)市場中得到更廣泛的應用。





