虛拟桌面

虛拟桌面

基于服務器的計算模型
虛拟桌面(Desktop virtualization或者稱為Virtual Desktop Infrastructure)是一種基于服務器的計算模型,VDI概念最早由桌面虛拟化廠商VMware提出,現已經成為标準的技術術語。雖然借用了傳統的瘦客戶端的模型,但是讓管理員與用戶能夠同時獲得兩種方式的優點,将所有桌面虛拟機在數據中心進行托管并統一管理;同時用戶能夠獲得完整PC的使用體驗。桌面虛拟化和瘦客戶端計算機已經推出了很多年,通過數據中心服務器中心化電腦的功能、數據和應用程序給予數據和安全更多的控制。
  • 中文名:虛拟桌面
  • 外文名:Desktop virtualization
  • 别名:Virtual Desktop Infrastructure
  • 起源:桌面虛拟化廠商VMware提出
  • 類型:計算模型類

相關應用

可在任何設備上提供類似于本地工作區的體驗,無論員工使用何種設備,都能保持較高的生産力。員工可在外出時使用他們熟知的本機觸控手勢(滑動、拖動、點按進行單擊、縮放),在他們的移動設備上操作任何 Windows 應用程序。

定義

簡單的來說,虛拟桌面是指:支持企業級實現桌面系統的遠程動态訪問與數據中心統一托管的技術。一個形象的類比,就是現在,我們可以通過任何設備、在任何地點,任何時間訪問在網絡上的我們的郵件系統,或者網盤;而未來我們可以通過任何設備,在任何地點、任何時間訪問在網絡上的屬于我們個人的桌面系統。

行業現狀

思科在2010年年底的時候,推出了VMware View 4.5 和CITrix XenDesktop兩款産品,該兩款産品已經在2011年3月上市。這兩款産品的價格都低于500美元,包括 一個USB鍵盤、鼠标和客戶端授權。除此之外,思科表示該公司此前發布的Cius平闆電腦将支持VMware View、Citrix Receiver 和Wyse Pocket 雲計算虛拟軟件;并且将會和微軟的Windows在一個數據中心進行互聯。Cius同樣也在2011年3月上市。

桌面虛拟化和瘦客戶端計算機已經推出了很多年,通過數據中心服務器中心化電腦的功能、數據和應用程序給予數據和安全更多的控制。

虛拟桌面技術架構

VDI桌面虛拟化的優勢在于運算集中在服務器端,因此在以下兩種環境中特别合适:1、在極小的廣域網帶寬環境下,例如低于500Kbs的線路下,可以采用VMware等VDI産品進行部署,用戶可以使用平闆電腦或者手機接入,訪問自己的桌面環境,實現随時随地辦公;2、在新建的全千兆網絡環境下,同時業務應用比較簡單的環境中,用戶部署VDI桌面虛拟化後可以購買100元左右的雲終端作為客戶機,大大減少客戶機的硬件投入,拉平在服務器上的硬件投入,使得總投資更加合理。

VDI虛拟桌面基礎架構

虛拟桌面基礎架構(Virtual Desktop Infrastructure,簡稱VDI)是許多機構目前正在評估的全新模式,它是基于早期的RDP協議和瘦客戶機逐步演變而來的,也是目前國外VMware等國外虛拟化廠家長期鼓吹的模式。VDI旨在為智能分布式計算帶來出色的響應能力和定制化的用戶體驗,并通過基于服務器的模式提供管理和安全優勢。它能夠為整個桌面映像提供集中化的管理,但這一模式目前也存在着其固有的問題。主要表現為:因其利用硬件仿真及瘦協議,使得視頻、Adobe Flash、IP 語音(VoIP)以及其它計算或圖形密集型應用不适用于該模式,而且VDI 需要持久的網絡連接,因此不适于要求離線移動性的場合。此外,其基于服務器的模式對服務器的配置有極高的要求,這些問題的存在不能不讓衆多的用戶重新考慮部署VDI的實際意義及成本。從實際應用方面來分析,VDI模式還存在諸多需要解決的問題,而與之相關的虛拟化桌面,如遠程托管桌面、遠程虛拟應用程序、遠程托管專用虛拟桌面、本地虛拟應用程序及本地虛拟操作系統等虛拟化桌面也都存在着各種問題;另外還有對終端硬件的支持問題、對網絡及服務器硬件過度依賴的問題、以及數據安全性問題等。

VOI虛拟操作系統基礎架構

虛拟操作系統基礎架構(Virtual OS Infrastructure,簡稱VOI)成為一個新的桌面虛拟化發展方向。而在國内,和信最早推出了基于VOI桌面虛拟化架構的虛拟終端管理系統。VOI桌面虛拟化技術不僅可實現基于服務端的遠程虛拟OS、APPS、UserProfiles的按需交付,也可實現基于客戶端的本地緩存OS、APP及UserProfiles,這樣不僅僅可利用終端本地資源處理計算及圖形密集型應用,比如:如音視頻、大型設計及工業軟件等,也可支持各種計算機外設以适應複雜的應用環境及未來的應用擴展。同時,對網絡和服務器的依賴性将大大降低,即使網絡中斷或服務器宕機終端也可繼續使用,數據可實現雲端集中存儲,也可實現終端本地加密存儲,且終端應用數據不會因網絡或服務端故障而丢失。

WindowsApi函數CreateDesktop

在 Windows Api 中提供了 CreateDesktop 函數來創建新的虛拟桌面,通過 SwitchDesktop 函數可以轉入到指定的桌面,在新創建的桌面中可以打開進程explorer.exe,CreateProcess 有個TStartupInfo結構的參數,該結構中有個叫lpDesktop的成員,它指定了在哪個桌面創建進程;該函數實現的虛拟桌面為Windows視圖系統創建多桌面擴展,使用戶或程序可以多個桌面上相互切換可視化的應用,與Linux 圖形界面中四方格切換相似,但是該技術與現行“桌面虛拟化技術”是兩種完全不同的概念,不可以混淆。

引用MSDN:

Creates a new desktop, associates it with the current window station of the calling process, and assigns it to the calling thread. The calling process must have an associated window station, either assigned by the system at process creation time or set by the SetProcessWindowStation function.

To specify the size of the heap for the desktop, use the CreateDesktopEx function.

函數原型

HDESK WINAPI CreateDesktop(

_In_ LPCTSTR lpszDesktop,

_Reserved_ LPCTSTR lpszDevice,

_Reserved_ DEVMODE *pDevmode,

_In_ DWORD dwFlags,

_In_ ACCESS_MASK dwDesiredAccess,

_In_opt_ LPSECURITY_ATTRIBUTES lpsa

);

Parameters

lpszDesktop [in]

The name of the desktop to be created. Desktop names are case-insensitive and may not contain backslash characters ().

lpszDevice

Reserved; must be NULL.

pDevmode

Reserved; must be NULL.

dwFlags [in]

This parameter can be zero or the following value.

在C語言中的實現

int APIENTRY WinMain(HINSTANCE hInstance,

HINSTANCE hPrevInstance,

LPSTR lpCmdLine,

int nCmdShow)

{

// TODO: Place code here.

HDESK hOld = GetThreadDesktop(GetCurrentThreadId());

HDESK hNew = CreateDesktopA("Test", NULL, NULL, NULL, GENERIC_ALL, NULL);

if ((NULL == hOld) || (NULL == hNew))

{

MessageBox(NULL, "失敗!", "測試", MB_OK | MB_ICONERROR);

return 1;

}

SetThreadDesktop(hNew);

SwitchDesktop(hNew);

MessageBox(NULL, "成功!", "測試", MB_OK);

SwitchDesktop(hOld);

CloseDesktop(hNew);

return 0;

}

在VB中的實現

Private Sub Form_Load()

g_hDesktopThreadOld = GetThreadDesktop(App.ThreadID) '得到正常的桌面句柄

RegisterHotKey Me.hWnd, 1, MOD_CONTROL, Asc("Q") '注冊熱鍵

RegisterHotKey Me.hWnd, 2, MOD_CONTROL, Asc("W") '注冊熱鍵

g_hDesktopNameNew = "MyNewDesktop"

g_hDesktopNew = OpenDesktop(g_hDesktopNameNew, 0, False, DESKTOP_ALL) '如果新桌面已經存在,就打開它

If g_hDesktopNew = 0 Then

g_hDesktopNew = CreateDesktop(g_hDesktopNameNew, vbNullString, ByVal 0&, 0, MAXIMUM_ALLOWED, ByVal 0&) '如果不存在,就新建一個

End If

Call SetThreadDesktop(g_hDesktopNew)

lpOldWinProc = SetWindowLong(Me.hWnd, GWL_WNDPROC, AddressOf myWindowProc) '子類化主窗口,接收熱鍵消息

End Sub

Private Sub Form_Unload(Cancel As Integer)

If g_hDesktopNew <> 0 Then

CloseDesktop g_hDesktopNew '關閉新建的桌面句柄

End If

SetWindowLong Me.hWnd, GWL_WNDPROC, lpOldWinProc

End Sub

eUonBox虛拟盒子

簡介

eUonBox虛拟盒子:将用戶的電腦環境、應用程序以及相關文檔進行封裝,并在其它電腦上重現的創新産品。真正實現可移動的虛拟環境。

功能

桌面環境及設置的可存儲,可移動,可重現

eUonBox虛拟盒子可以抓取桌面及桌布、“我的文檔”、個人習慣設置、浏覽器曆史記錄與Cookies、收藏夾等個人桌面環境,整合存儲到外部存儲設備中,實現可随身攜帶自己的電腦環境,并拿到另一台電腦上進行重現。

抓取

可抓取并攜帶已安裝的應用程序,可移動,可直接運行,無須安裝

可實現在已經安裝過某應用程序的電腦中将此應用程序、用戶對軟件的習慣及相關設置通過eUonBox虛拟盒子抓取到外部存儲設備中,實現可随身攜帶應用程序,并在另一台電腦上直接運行,無須任何安裝過程。所攜帶的應用程序的習慣及設置依然會重現。

選擇

特殊數據的同步及存儲、攜帶

可以選擇要攜帶的郵件客戶端、收件夾,對郵件、聯系人、便箋、日曆、任務、郵件帳号、簽名檔等個人數據進行與外部存儲設備的單向或雙向的同步,并存儲到外部存儲設備中,實現此特殊數據的可攜帶,并随個人桌面環境同時重現。

同步

向導式同步過程,三種同步方式,兩種同步條件,同步過程輕松管理

人性的向導式同步過程,用戶隻要回答一些簡單的問題即可輕松确定同步方式。有單雙方向的三種同步方式供用戶選擇,時間與範圍組成的兩種同步條件,滿足大部分用戶對同步條件的設定要求。同步過程中的關鍵數據操作都會經過用戶确定,同步結果報告内容詳盡。

綠色

主程序綠色便攜,即點即用,免安裝

eUonBox虛拟盒子是徹底的綠色軟件,軟件的全部内容隻是一個目錄,安裝與删除隻要操作目錄即可完成。到其它電腦上也不需要任何的安裝過程,直接啟動,即點即用,并且退出程序後不會給電腦留下任何垃圾文件及其它信息。

私密

虛拟環境具有密碼保護,完全隔離,安全私密

要進入eUonBox虛拟盒子,必須要通過密碼登陸後才可使用。密碼通過高強度的加密存儲,保證個人虛拟環境的安全私密。另外,eUonBox虛拟盒子虛拟環境是被完全隔離的獨立的環境,操作過程安全保密,不洩露個人信息,是完全可信賴的個人私密空間。

多語言

程序本身擁有多語言支持,并且從架構上已進行軟件全球化戰略的考慮,完善支持在不同語言環境下的統一的虛拟環境重現,方便的軟件國際化擴展及應用。

相關詞條

相關搜索

其它詞條