




已阅读5页,还剩57页未读, 继续免费阅读
(计算机科学与技术专业论文)基于虚拟化的桌面融合技术.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国防科学技术大学研究生院工程硕+ 学位论文 摘要 随着应用需求和硬件能力的不断发展,虚拟化核心技术已经日趋成熟,但是 目前对虚拟化软件易用性的研究还不够充分。在典型的虚拟化软件中,宿主系统 和客户系统相互隔离,导致在窗口显示和用户操作方面存在差别,现有的虚拟化 软件为屏蔽其对用户操作的影响,为每个虚拟域建立独立的显示操作窗口,此做 法造成的后果诸如鼠标键盘作用范围限制、各域桌面切换需要特殊操作等,给用 户使用上造成了障碍,阻碍了虚拟化软件进一步的推广和使用。 针对虚拟化软件使用过程中存在的问题,论文分析了视窗系统和瘦客户端系 统中远程桌面的设计与实现等相关工作,提出了虚拟环境下融合桌面的概念,它 以宿主系统的桌面环境为基础,提取客户系统的显示内容,代替客户系统进行程 序窗口的显示工作,并在此基础上重新构建不同域程序窗口间的交互机制,完成 融合桌面对视觉和操作感的要求。 桌面融合技术由支持视觉融合的无缝窗口技术和支持操作感融合的域间程序 交互机制组成。融合桌面对视觉融合的要求是多域程序窗口的同桌面显示。操作 感融合则针对于用户在桌面不同域窗口间的习惯性操作( 如拖动、复制、粘贴等) 。 无缝窗口技术是在客户系统中部署服务代理,监控客户系统的桌面显示状态,向 融合桌面提供显示控制信息,融合桌面会根据此信息控制客户系统在宿主系统桌 面环境中的显示内容,实现客户系统程序窗口在宿主系统桌面的直观显示。域间 程序交互机制向用户提供域间的共享剪贴板服务,该服务通过在各域的服务代理 联系和控制各自的系统剪贴板,实现域间所有剪贴板的数据一致,不同域的用户 程序可以通过对自身系统剪贴板数据的存取来完成域间数据的交互,该技术主要 支持用户在不同域窗口间进行的复制、粘贴操作。 基于以上的设计思想,论文基于k v m 虚拟监控器实现了桌面融合功能,并达 到了实际应用效果。本课题得到国家8 6 3 计划“支持多计算域的虚拟个人计算机系 统”的资助。 关键词:虚拟技术、桌面融合、无缝窗口技术、域间共享剪贴板 第i 页 国防科学技术大学研究生院工程硕十学位论文 a b s t r a c t w i t i lt h ed e v e l o p m e n to fs o f t w a r ea n dh a r d w a r et e c h n o l o g i e s ,t h ek e yt e c h n o l o g i e s o fv i r t u a l i z a t i o ni sa l r e a d ym a t u r e b u tc u r r e n tr e s e a r c hd o e sn o tm a k ee n o u g he f f o r tf o r i t so p e r a b i l i t y i nt h ev i r t u a l i z a t i o ne n v i r o n m e n t ,s i n c et h eg u e s td o m a i na n dh o s t d o m a i ni ss e p a r a t e d ,t h e r ea r ed i f f e r e n c e si nd i s p l a ya n do p e r a t i o nf o ru s e r se x p e r i e n c e , s ov i r t u a l i z a t i o ns o f t w a r ee s t a b l i s h e sa ni n d e p e n d e n tw i n d o wf o re a c hg u e s td o m a i n , w h i c hc a u s e si ti sd i f f i c u l tt ou s e ,f o re x a m p l et h es c o p eo fk e y b o a r da n dm o u s ei s l i m i t e d ,s w i t c h i n gb e t w e e ng u e s ta n d h o s td e s k t o p sn e e d sa d d i t i o n a lo p e r a t i o n se t c f i r s t l y ,t oi m p r o v et h ec o - o p e r a b i l i t yo fv i r t u a l i z a t i o n ,t h ec o n c e p to fi n t e g r a t e d d e s k t o pi nv i r t u a l i z a t i o ne n v i r o n m e n t i sp r o p o s e db ya n a l y s i s i n gw o r ko fu s e r - f r i e n d l y p r o v i d e d b yw i n d o ws y s t e ma n dt h i n - c l i e n tt e c h n o l o g y i tu s e s t h eh o s t sd e s k t o p e n v i r o n m e n ta st h eb a s i cd e s k t o pe n v i r o n m e n t ,g e t st h ed i s p l a yc o n t e n t so fg u e s t d o m a i na n dd i s p l a y so nt h eh o s td e s k t o pu n i f o r m l y b yr e b u i l d i n gt h ec o m m u n i c a t i o n m e c h a n i s mo fd i f f e r e n td o m a i n s t h ed e s k t o pe n v i r o n m e n tf o rm u l t i - d o m a i n si s c o n s t r u c t e d s e c o n d l y ,t h et w om a i np a r t so fi n t e g r a t e dd e s k t o pt e c h n o l o g y :s e a m l e s sw i n d o w t e c h n o l o g ya n di n t e r d o m a i ni n t e r a c t i o n m e c h a n i s ma r ei n t r o d u c e di nd e t a i l s s e a m l e s sw i n d o wt e c h n o l o g yw h i c hs u p p o r t sv i s u a li n t e g r a t i o n i s c o m p o s e do f m o n i t o ra g e n ti nt h eg u e s td o m a i na n dd i s p l a ya g e n ti nt h eh o s td o m a i n m o n i t o r a g e n ts e n d si n f o r m a t i o no fa p p l i c a t i o nw i n d o w st od i s p l a ya g e n t ,s u c h a s s i z e , p o s i t i o na n ds h a p e w h e nd i s p l a ya g e n tr e c e i v e st h ei n f o r m a t i o n ,i te x t r a c t st h ed i s p l a y c o n t e n t so fg u e s td e s k t o pa n dd i s p l a yo nt h eh o s td e s k t o p i n t e r - d o m a i ni n t e r a c t i o n m e c h a n i s mw h i c hs u p p o r t so p e r a t i o ni n t e g r a t i o ni m p l e m e n ti n t e r d o m a i ns h a r e d c l i p b o a r dm e c h a n i s m i tm a i n t a i n sd a t ac o n s i s t e n c yi ne v e r yc l i p b o a r db ym o n i t o r i n g a n dc o n t r o l l i n gt h es y s t e mc l i p b o a r do fe a c hd o m a i n a p p l i c a t i o n sc a ne x c h a n g et h e i r d a t ab ya c c e s s i n gi t so w ns y s t e mc l i p b o a r d t 1 1 i sm e c h a n i s ms u p p o r t su s e r sc o p ya n d p a s t eo p e r a t i o n si nd i f f e r e n td o m a i nw i n d o w s a tl a s t w ei m p l e m e n tt h ei n t e g r a t e dd e s k t o po nl v m t h ew o r ki ss u p p o r t e db y 8 6 3p r o j e c t “t h ev i r t u a lp e r s o n a lc o m p u t e rs y s t e m so f m u l t i d o mc a l c u l a t i o n ” k e yw o r d s : v i r t u a l i z a t i o n ,i n t e g r a t e dd e s k t o p ,s e a m l e s sw i n d o w t e c h n o l o g y ,i n t e r - d o m a i ns h a r e dc l i p b o a r d 第i i 页 国防科学技术大学研究生院工程硕士学位论文 表目录 表3 1 通信信息封装格式一3 0 表4 1g o s 服务代理消息类型3 9 表4 2h o s 服务代理消息类型。4 0 表5 1 硬件环境配置4 6 表5 2 软件实现环境配置4 6 表5 3 有效视图域获取算法执行时间分析4 8 表5 4 鼠标事件进程间传递时间分析4 9 表5 5 键盘事件接收效率分析4 9 表5 6 裁剪区域域间传输时间表5 0 表5 7 服务代理获取剪贴板数据时间表。5 0 表5 8 域间数据传递时间表5 0 第l l l 页 国防科学技术大学研究生院丁程硕士学1 1 :7 = 论文 图目录 图2 1x 系统架构图6 图2 2 窗口系统结构图7 图2 3 融合桌面结构图8 图2 4x 系统远程显示示意图1 1 图2 5v n c 体系结构1 2 图2 6s l i m 体系结构1 3 图2 7v i r t u a l b o xs p l i tw i n d o w 显示技术示意图1 4 图2 8 桌面融合技术结构图1 6 图2 9 无缝窗口服务流程图1 7 图2 1 0 域间共享剪贴板示意图1 8 图3 1 无缝窗口模式显示部分示意图2 l 图3 2 无缝窗口模式用户事件处理示意图2 2 图3 3 无缝窗口框架图2 3 图3 4 裁剪域获取算法部件协作图2 4 图3 5 裁剪域获取算法示意图2 6 图3 6 管道写算法示意图2 9 图3 7 管道读算法示意图2 9 图4 1 域间共享剪贴板机制示意图3 4 图4 2g o s 数据到h o s 复制、粘贴过程图3 5 图4 3 剪贴板服务工作示意图3 8 图4 4 消息序列图4 l 图4 5 域间数据通信示意图4 3 图4 6h o s 到g o s 数据复制过程示意图4 4 图5 1 桌面融合效果示意图l 一4 7 图5 2 桌面融合效果示意图2 。4 7 第l v 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它 教育机构的学位或证书而使用过的材料与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意 学位论文题目:基王麈拯丝煎塞亘塾佥技盔 学位论文作者签名:童0 l 日期:2 。9 年1 2 月2 6 日 学位论文版权使用授权书 本入完全了解国防科学技术大学有关保留、使用学位论文的规定本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文 ( 保密学位论文在解密后适用本授权书) 学位论文作者签名:堇焘 作者指导教师签名:童支竺垡= 日期:2 0 0 9 年1 2 月2 6 日 日期:卅年,月谚日 国防科学技术大学研究生院工程硕士学位论文 第一章绪论 1 1 虚拟化技术概述 随着物理设备性能的不断提高,大大超出了单一操作系统对硬件资源的有效 使用能力,随后发展出了虚拟化技术,它在物理硬件与操作系统层加入一层抽象 层,通过截获上层软件对底层接口的调用,并对该调用重新解释和处理,以实现 异构环境中资源的共享性、可管理性和协同性i i 】。可以使不同操作系统的多个虚拟 机在同一物理机上并行运行,从而使一套物理硬件能够提供更高的资源利用效能 比和部署灵活性1 2 】1 3 1 。 经过多年的发展,虚拟化技术的应用已经渗透到各个领域,从企业的集群服 务器到普通p c 用户领域1 4 】【5 】【6 】,尤其是在企业级的服务器应用中,其价值得到集 中体现。它主要能提供以下特点: 为用户提供多样化的服务。原有的同一套物理硬件只能由单一操作系统使 用,通过虚拟化技术,用户可以得到多种操作系统的软件服务,便于用户 部署各种不同的应用。 更高的资源利用率。虚拟化技术可支持实现物理资源和资源池的动态共 享,所以用户在相同的工作需求下能减少对硬件的购置,并同时提高能源 的利用率。 服务安全性能。同一物理机上各虚拟机独立地运行,它们的逻辑地址空间 相互隔离,无法共享访问。且由于资源隔离,其中之一的虚拟机器崩溃后 不会影响到别的虚拟机,所以能够提供各虚拟机服务的安全的、独立的运 行。 硬件设备独立性。应用虚拟化技术后,虚拟机配置的设备是由宿主操作系 统的虚拟化层通过软件模拟提供的,因此不受主机实际硬件的约束。 虚拟技术可以分为以下三类:完全虚拟化、半虚拟化、操作系统层虚拟化。 完全虚拟化同半虚拟化的共同点是都有h y p e r v i s o r 层【7 j ,用来管理分配物理主机的 硬件资源和捕获c p u 指令,区别在于对于特权指令处理方法不同。半虚拟化采取 的方法是通过对操作系统源代码进行直接的修改,完成对特权指令的替换。其优 点是性能高,但是其只能针对于开源系统。其典型代表如u m l 8 1 1 9 1 ,x e n l l 们。全 虚拟化采取的方法是在虚拟机运行时以动态的方式对特权指令进行替换,特点是 可以支持多种操作系统,但消耗的性能较大。该类型软件的代表如以d y n a m i c b i n a r yt r a n s l a t i o n 【l l 】为特色v m w a r e 系列产品【1 2 】【l3 1 。操作系统层虚拟化与上两种 虚拟技术比较没有h y p e r v i s o r 层,直接由主机操作系统负责在多个虚拟服务器之 第1 页 国防科学技术大学研究生院丁程硕士学位论文 | 、h j 分配硬件资源,这样所有虚拟服务器必须运行同一操作系统,灵活性比较差, 但本机速度性能比较高。该类型虚拟化软件的代表如v i r t u o z z o o p e n v z 1 4 j 。 为支持虚拟技术的发展,i n t e l 和a m d 先后推出了内建虚拟技术的处理器,分 别对应的是i n t e l 的v t t l 5 】技术和a m d 的a m d v 技术。由于得到了c p u 虚拟化 的支持,全虚拟化的性能和稳定性都得到了较大程度的提高【1 6 j ,随着支持虚拟技 术的c p u 推广,普通p c 机便可很好的支持虚拟技术的运行,原本面向企业的虚 拟技术开始得到普通用户的承认。 当前虚拟技术应用领域十分广泛,包括服务器整合、沙盒( s a n d b o x i n g ) 、多 运行环境、多操作系统、测试和性能监视、应用整合、虚拟硬件、软件移植、系 统可管理性、测试质量保证。另外随着“云计算”【1 7 】技术研究热潮的兴起,虚拟化 技术将得到更广泛的发展。 k v m ( k e m e lb a s e dv i r t u a lm a c h i n e ) t 1 8 】是当今主流的全虚拟化技术之一。其利用 l i n u x 调度器和内存管理功能和q e m u t l 9 】的硬件模拟部分,自身专注于c p u 和内 存的虚拟化。在l i n u x 自身的资源管理和c p u 硬件虚拟化技术的支持下,能够为 用户提供高效的虚拟服务,正成为当前虚拟技术的研究热点,论文论述的基于虚 拟化的桌面融合环境,便是在其基础上实现。 1 2 课题背景与研究意义 论文研究的目的是改善用户使用虚拟化软件的方式。当前虚拟化软件为用户 提供客户操作系统( 以下简称g o s ) 显示服务时,大都为每个g o s 分配独立的显 示输出窗口,在g o s 运行时,该窗口将作为g o s 桌面的代理,接收用户输入并 输出程序运行结果。由于宿主系统( 以下简称h o s ) 和g o s 之间相互隔离,并无 沟通机制,更无桌面环境的沟通机制且桌面环境配置不同的原因,大都将g o s 的 桌面环境和h o s 的桌面操作环境相隔离,即g o s 的显示部分是一个位于h o s 桌 面环境内的桌面环境,用以屏蔽因桌面环境不同而带来的用户鼠键操作的不一致。 在使用虚拟技术时,如果要操作g o s 的软件窗口,首先要将鼠键焦点切换到 g o s 显示窗口中,在切换之后,鼠键事件将按照g o s 的事件响应策略得到处理, 其作用范围也仅局限在当前g o s 显示窗口范围内。当需要切换到h o s 桌面环境 时,需要执行特别的切换过程。这给原本一致的桌面使用习惯带来了诸多不一致 的地方,对多数普通用户来说,此类微小的使用阻碍几乎可以阻止虚拟化技术的 推广。 论文认为虚拟技术作为一种特殊的软件服务,它向用户呈现的应该是g o s 中 的应用软件服务,用户需要面对的是g o s 中的应用软件窗口,而不是一个位于 h o s 桌面中的“桌面”。这样打破了已成惯例的用户桌面操作规范,即用户面对的 第2 页 国防科学技术大学研究生院丁程硕士学位论文 是一个屏幕,屏幕上只应捐j 有一种桌面环境,该桌面环境给用户呈现的是统一风 格视窗服务,该桌面环境拥有鼠标键盘、屏幕的控制权。用户通过鼠键对应用软 件视窗进行操作,鼠键的作用范围为整个桌面环境,而不是某一软件窗口。 视窗系统经过多年的发展,已经脱离操作系统下一部分图形应用程序的范畴, 其在理论上已经形成一套较为固定的框架和构成要素,如几乎所有的视窗系统都 提供快速启动栏,都拥有大致相同的窗口的排列策略、鼠标的操作规范等。因此 论文认为通过沟通和匹配不同系统下的视窗系统的各个功能模块,可以实现虚拟 环境下多域的融合桌面环境。为达到融合桌面环境对视觉和操作感的需求。在论 文中,桌面融合主要解决以下三个问题: 为用户提供一个能够显示多域内容的桌面,在桌面上呈现不同域的程序窗 口。 解放鼠标键盘的作用范围,不需要在g o s 和h o s 视窗间切换便可操作不 同操作系统下的应用软件窗口,不必再捕获鼠键的作用范围。 构建域问程序的沟通机制。满足不同域的程序窗口之间的交互过程,如复 制粘贴等用户习惯性操作。 1 3 研究内容和主要创新点 本课题的研究内容是探索如何将虚拟技术中多域的桌面环境融合在一起的方 法,改善原有虚拟技术的显示方法和操作方法,让各g o s 域的应用桌面不再成为 用户操作束缚,让不同域的程序窗口共同归属于一个桌面环境,从视觉和操作感 受上为用户提供一个“统一”的桌面环境。 论文首先为解决多个虚拟操作系统桌面环境互不匹配的问题,提出了虚拟环 境下桌面融合技术的模型,并分析了该模型的运行原理,根据其功能需求提供了 两项关键服务来支持桌面融合技术:域间程序窗口共存显示,域间程序交互,随 后详细讨论了实现两种服务的实现原理和实现过程。同时为实现域间程序数据交 互机制论文设计和实现了一种域间数据请求机制。 论文的主要创新点: 提出了多域环境下桌面融合的概念,并以视觉融合和操作感融合两方面解 决桌面融合的问题,并根据约束条件设计了桌面融合系统,该系统设计了 两项关键功能,分别是解决视觉融合的无缝窗口显示模式,解决操作感触 合的域间程序交互功能。 提出了视图域获取算法、视图域裁剪算法、鼠键事件重定位算法。并在此 基础上实现了虚拟环境下解决视觉融合的无缝窗口显示技术。该技术一方 面让g o s 的程序窗口直接在h o s 桌面中显示,另一方面解决鼠键在不同 第3 页 国防科学技术大学研究生院- t 程硕士学位论文 域之l 卅的作用范围限制问题,达成了融合多域桌面的效果。 提出了域间数据请求算法,设计并实现了解决域间程序数据交互问题的域 间共享剪贴板机制,该机制通过联系和维护各域剪贴板的数据一致性,实 现一个理论上的域间共享剪贴板,让各域的程序通过该剪贴板来实现数据 交互,达到了复制、粘贴操作的跨域执行效果。 1 4 论文的组织 论文主要工作是在q e m u k v m 提供虚拟技术和虚拟显示技术的基础上,以 k y l i n 为h o s 系统,w i n d o w s 为g o s 系统来研究并实现多域情况下的桌面融 合。论文各章节内容安排如下: 第一章:绪论。介绍了虚拟化及显示操作工作的现状和发展趋势,分析了当 前虚拟技术使用方法的不足,以及本次课题“基于虚拟化的桌面融合技术”的研究意 义。 第二章:桌面融合技术的研究和分析。分析了当前为改善虚拟技术易用性方 面的相关工作,重点分析了瘦客户端技术在融合桌面方面的工作,提出了多域环 境下的桌面融合的概念,讨论了解决多域桌面融合效果需要涉及到的关键技术, 提出了桌面融合的系统架构。 第三章:无缝窗口显示模式的实现。明确了无缝窗口技术的设计目标,在一 定约束条件下基于该设计目标提出设计框架。并详细介绍了各个功能模块的运行。 第四章:域间程序交互机制的设计和实现。详细介绍域间程序交互机制的基 础一一域间共享剪贴板机制,并根据域间数据传输的特点设计和实现了一种域间 数据请求的方法。 第五章:测试与分析。对本课题设计实现的桌面融合技术进行功能和性能测 试,并对测试结果进行了分析。 第六章:结束语。对课题研究工作进行总结,展望进一步的研究方向。 第4 页 国防科学技术大学研究生院丁程硕十学位论文 第二章桌面融合技术的研究及分析 当前虚拟化技术的研究工作主要集中在虚拟机功能完善和性能改进方面,而 虚拟化软件的易用性往往受到忽略。在虚拟机监控器的基础上,支持多个虚拟操 作系统域之间显示窗口的融合,即桌面融合技术,能够明显改善虚拟化软件的易 用性,提高用户对虚拟化软件的接受程度。本章介绍了桌面融合技术的相关基础 工作,总结了桌面融合需要涉及到的关键技术,并设计桌面融合技术在虚拟环境 下的系统架构。 2 1 桌面融合概念 本节将在视窗系统的构成方面讨论桌面融合的概念,并讨论满足多域环境下 桌面融合的实现方法和原理。 2 1 1 视窗系统组成概述 以l i n u x 类系统采用的x 窗口系统为例,介绍视窗系统的结构组成1 2 0 2 1 1 【2 2 1 , 各部分分别是基础图形库( x ) 、窗口管理器( w i n d o w m a n a g e r s ) 、窗口集( w i d g e t s e t ) 、桌面环境( d e s k t o pe n v i r o n m e n t s ) 。在w i n d o w s 系统中,其为用户提供的 是一个由窗口管理器、窗口集和桌面环境共同组成的构造集,其统一称为窗口系 统,各部件之间没有清晰的分界,所以以l i n u x 视窗系统为例来解析视窗组成的各 部分概念: x ( 基础图形库) : x 提供的功能是在屏幕上构造并绘制方块( 窗口) ,采用c l i e n t s e r v e r 结构设 计,整个系统的主体结构由xs e r v e r 、xc l i e n t 和信道组成,各部分功能如下: xs e r v e r :控制所有的窗口系统资源,如显示器设备及输出入设备。它同时负 责处理一切由xc l i e n t 所传来的x 事件( xe v e n t ) ,然后根据传送的x 事件调用 显卡进行图像计算,并在屏幕上显示图像。 xc l i e n t :系统中除了xs e r v e r 以外的所有窗口程序。即调用x l i b 库实现的 应用程序。 信道( c o m m u n i c a t i o nc h a n n e l ) :用于xs e r v e r 及xc l i e n t 之间的沟通,包含 了双方信息的数据通道及x 通信协议【2 3 1 。 图形程序( xc l i e n t ) 在运行时会调用x l i b 库提供的绘图接口,该接口将会通 过信道向xs e r v e r 请求绘图服务,xs e r v e r 接收并解析xc l i e n t 的请求后,通过 调用显卡驱动来操作硬件进行图像运算并显示到屏幕上。大致过季i 壬- 1 如图2 1 所示。 第5 页 国防科学技术大学研究生院t 程硕士学位论文 x 程序q t 程序 g t k 程序 x 数据通道 上 xs e r v e r 显卡驱动 1r 图形硬件 图2 1x 系统架构图 窗口集: 窗口集是一个常规的工具库,它主要构造象按钮和菜单这样的标准控件,它 是对基础绘图库指令的包装,用来提供风格一样的绘图控件。在当前应用的l i n u x 系统中,q t 窗口集和g t k + 窗口集都是对x 绘图指令的封装。其中q t 窗口集应 用于k d e 桌面环境,g t k + 窗口集应用于g n o m e 桌面环境。 桌面环境: 通常是一组有着共同外观和操作感的程序和程序库,它的设计目的是提供一 致的、方便的操作方式来满足普通用户的需要。其操作感包括窗口间的数据的复 制、粘贴、拖放等操作。桌面环境不但包含窗口管理器,还有很多实用程序和程 序,如g n o m e l 2 4 j 和k d e 是桌面环境,系统可以安装多个桌面环境,但在同一时 间当前系统中只能有一个桌面环境在运行。 窗口管理器: 用于管理程序窗口,及窗口之间行为的程序。主要提供以下几类服务:模态 窗口的策略、逻辑大桌面、固定窗口、虚拟桌面、任务条、分页器、规定窗口栈 序( z o r d e r ) 、窗口状态的控制、窗口装饰以及窗口协议。在同一桌面环境下,可 以拥有多个窗口管理器,但同一时间,只能有一个窗口管理器在运行,例如k d e 桌面环境采用的是k w m 窗口管理器。g n o m e 则没和任何窗口管理器绑定,用 户可以自由选择需要的窗口管理器。 第6 页 国防科学技术大学研究生院工程硕士学位论文 窗口1窗e l * 绘绘制过程t x 库 彳p 窗口集( g t k + q t ) 调用l 调用l 匪旬匪由 图2 2 窗口系统结构图 为了得到良好而风格一致的程序窗口,程序和窗口管理器必需合作。其合作 方式是通过由x 协议传送提示信息给窗口管理器,而窗口管理器则会参考提示消 息的内容,给予程序需要的窗口外观。大致过程如图2 2 所示。 2 1 2 桌面融合概念 由上节可得知,系统在同一时间只能运行一个桌面环境,一个窗口管理器。 在虚拟域已经存在且独立运行的情况下,已经不能改变原有程序的执行过程,也 就不能改变程序软件采用的基础图形库,同样也不能改变窗口集和窗口管理器, 改变这些因素将导致对程序的修改和窗口绘制风格的改变。 因此论文论述的桌面融合概念是对多域的桌面环境的融合,多域桌面融合将 建立一个视觉感和操作感统一的桌面,在视觉感上该桌面将支持不同绘制风格的 窗口显示,在操作感上将建立不用域归属窗口间的交互机制。 论文采取的策略是保留h o s 的桌面环境,消除其他g o s 域的桌面,在h o s 域桌面环境的基础上重新建立多域桌面环境,在重建的桌面环境中,g o s 域只提 供其运算产生的图像数据,由h o s 的桌面环境为其组织显示工作,并在此显示基 础上,重新构建多域窗口之间的沟通机制,来满足融合桌面环境的操作感一致。 如图2 3 所示,该过程的整个核心是存在于h o s 中的服务代理,它将作为g o s 在 h o s 桌面环境的代理,参加融合桌面环境的显示和接收事件的工作。 服务代理将从g o s 域中获取显示图像,建立x 窗口进行显示,由于显示g o s 窗口内容的是真j 下的x 的窗口,所以可以拥有同其他h o s 域程序相同的桌面环境 使用权限,为达到直接显示g o s 域程序窗口的效果,服务代理将提过g o s 的显 第7 页 国防科学技术大学研究生院t 程硕士学位论文 示内容,并只呈现用户关心的部分,这样町以保证g o s 的绘制风格和显示特性。 同样该服务代理也将代理g o s 中程序与h o s 域的程序进行交互,完成域间的程 序窗口交互,如域间窗口的复制、粘贴操作等。从而增强融合多域桌面的操作感。 窗口l g o s 域窗口 l 一l 绘铜 显示 融合桌面环境 组织显示用户事件 窗口管理器 - 1 r 提亲信息 一f _ 一 服务代理 程纾闷遇 ol i 应用程序l k 一 显不勾容用户事件 1r c o s 域 至亟亘 图2 3 融合桌面结构图 在用户操作感方面,有很大一部分是由窗口管理提供的,如窗口排列顺序、 快速启动机制等,融合桌面因为只提取g o s 显示视图,所以保留了g o s 窗口管 理器对其窗口的行为响应,所以g o s 内的窗口排列策略仍然由其窗口管理器提供, 另外融合桌面将在视觉上保留g o s 快速启动栏要素,方便用户操作g o s 域内的 程序。在其余的用户操作感中用户使用最频繁的窗口间的复制、粘贴操作,这部 分机制原本由视窗系统提供,在本系统中服务代理将通过沟通h o s 和g o s 来完 成对此功能的支持。 2 1 3 桌面融合的关键技术 根据上节对桌面融合概念的阐述,总结出服务代理需要支持的四个关键技术, 分别是g o s 域的显示策略、桌面显示模式一致性维护、鼠键事件的响应策略、域 间程序交互机制。其中前两者将为融合桌面环境提供视觉感服务,向桌面呈现不 同域的显示内容。后两者提供操作感服务,支持用户对域间窗口的习惯性操作。 g o s 域的显示策略 该策略决定桌面融合服务方( 以下简称服务方) 如何呈现g o s 域的程序窗口, 在桌面融合服务中,服务方将作为g o s 在h o s 桌面环境的代理,组织管理g o s 的程序窗口的显示和消息接收,主要有如下两种显示策略: 第8 页 国防科学技术大学研究生院工程硕十学位论文 策略:服务方直接接管g o s 程序窗【j ,由g o s 域提供显示内容,服务方 为每一个g o s 域窗口内容来创建显示窗口。此种做法好处是每一个窗口都真正是 h o s 中的窗口,所以能够为用户提供真正统一的桌面环境。缺点是破坏了g o s 桌 面环境的操作策略,服务方创建、销毁窗口动作频繁,多g o s 程序窗口无法识别 归属。 策略二:服务方接管g o s 桌面环境,服务方显示窗口的内容是g o s 桌面中 有效的显示内容,该显示内容由排除桌面外所有的程序窗口组成,服务方显示窗 口只用来显示有效内容。该做法优点是保留了g o s 桌面环境中的显示策略,服务 方只需要创建一个窗口。缺点是的h o s 桌面环境中同时存在两套桌面使用策略, 无法为用户提供统一的桌面窗口排列策略。 根据两种显示策略的优缺点,论文论述的基于虚拟化的桌面融合技术采用显 示策略二。 桌面显示模式一致性维护 在桌面融合服务中,g o s 为服务代理提供窗口的显示内容,由于g o s 的桌面 配置环境已经被预先设定,所以其提供的显示数据在其运行过程中不可改变,当 h o s 的桌面环境发生改变时,g o s 无法得知,也无法对提供的显示内容做出相应 的改变,比如h o s 的桌面分辨率发生了改变,h o s 的程序视窗便会相应的变大或 变小以适应桌面,但g o s 却不会对其提供的显示内容进行改变,这会造成服务方 的显示窗口无法匹配显示内容。为了消除这种不一致性,特别是显示模式的不一 致性,g o s 的显示内容需要调整以适应此种改变,这样才能真正的融合到h o s 的 桌面环境中。 鼠键事件的响应策略 由于显示服务代理是h o s 中的应用程序,拥有同其他本地程序相同的鼠键使 用权利,所以不同域的程序窗口均可通过该服务代理拥有与本地窗口相同的获取 鼠键事件的权限,但本质上鼠键的拥有权仍属于h o s 视窗系统拥有,所有鼠键事 件都需要先经过h o s 桌面环境的处理后再传送给服务代理,其中处理过程包括鼠 标图形的显示。所以在视图显示时,会发现窗口中有两个鼠标画面显示。给用户 操作融合造成了视觉混淆,因此希望在不同域的显示窗口中,鼠键事件能够得到 不同的视觉响应。通过对鼠键事件响应进行预处理,如隐藏显示。可以使鼠键事 件在不同系统程序窗口上呈现融合桌面中唯一的效果反应。 域间程序交互机制 发生在域内的复制、粘贴操作通过系统自身提供的共享剪贴板机制保证执行。 用户程序通过对共享剪贴板区域的存取数据完成程序之间的数据共享。用户在使 用虚拟技术时,往往也需要进行不同域窗口间的复制、粘贴工作。域间程序交互 第9 页 国防科学技术大学研究生院工程硕士学位论文 机制变为该操作提供一个域问共享剪贴板,利用域i 刨数据传递机制维持各域内剪 贴板数据一致,完成数据的跨域传输。 2 2 桌面融合相关研究及技术 桌面融合起源于远程控制技术,该技术通过在远程系统上的服务代理获取其 显示内容,然后通过网络传输将显示数据传送到本地的显示代理,由显示代理在 本地系统上进行显示,呈现给用户远程系统桌面。同时本地代理也会将发生在此 显示窗口的鼠键事件发送给远程系统,由此控制远程主机。其后用户不满足于单 纯的显示功能,远程桌面和本地桌面或多或少的要进行数据交互,如数据的复制、 粘贴操作,由此逐渐产生了桌面融合技术的雏形。 若远程系统和本地系统属于同一种操作系统,用户通过操作系统自身提供的 机制便可实现远程控制的目的,如l i n u x 采用的x 窗口系统,通过设置远程主机 的x 配置文件,将本地窗口作为其显示端【2 5 1 ,便可支持远程x 程序在本地桌面的 显示。w i n d o w s 视窗没有提供这种支持,其自身系统提供的是远程桌面功能。类 似于v n c 2 6 j 机制。其原理将在2 2 2 1 节介绍。 若远程系统和本地系统属于不同操作系统,用户往往采用以v n c 为代表的远 程控制软件,该类型软件主要强调远程桌面的本地显示性能,为支持双方桌面的 交互,v n c 在后续发展过程中增加了远程桌面同本地桌面的数据复制、粘贴功能 的支持。 以上两种技术主要适用于网络中不同节点的主机,论文提出的基于虚拟化的 桌面融合技术,主要针对虚拟环境下多域的桌面融合。目前v i r t u a lb o x 2 7j 、v m w a r e 虚拟化软件拥有无缝窗口显示技术,该技术能够使g o s 下的程序窗口在h o s 桌面上显示,用户可以直接在h o s 的桌面环境中对g o s 程序窗口进行操作,该 模式极大的提高了虚拟化软件的易用性,同时它利用虚拟化软件的特性( 直接对 虚拟显卡设备进行访问等) ,改善了g o s 中程序窗口的显示速度。 2 2 1 操作系统对桌面融合的支持分析 由于l i n u x 类操作系统选用的x 视窗系统支持网络传输x 协议,所以远程主 机的图像绘制命令和本地主机的用户事件均可以通过x 协议经网络传输送达对 方,在满足显示控制功能外,远程的x 程序还可以通过x 协议的支持完成同本地 程序的交互。所以x 系统天然的支持桌面融合技术,图2 4 为该过程的示意图。 w i n d o w s 系统由于桌面环境各要素已经集成在一起,并且强调系统桌面的独 立性和安全性。所以自身机制不提供桌面融合的功能,它对外提供的是远程桌面 技术1 2 引,其工作原理类似于v n c 机制( 见2 2 2 1 节描述) 。 第1 0 页 国防科学技术大学研究生院t 程硕士学位论文 i h o s t a i h o s tc i i i xc 1 i e n t i i xc 1 i e n tl xc l i e n t 邀 丫 i洌x s e r v e r ! 工 h o s t b 天 物理硬件 xc l i e n tl i n e t w o r k 图2 4x 系统远程显示示意图 2 2 2 基于网络的桌面融合技术分析 在异构系统的远程桌面使用中,主要代表是v n c ,它的设计思想来源于瘦客 户端技术( t h i n c l i e n t ) 2 9 】【3 0 l ,其工作目标是让资源有限的远程终端访问本地的主 机,这样能够使条件有限的终端提供本地主机一样的服务。该技术提供基于网络 传输协议的数据传输技术完成桌面之间的交互任务。 2 2 2 1v n c 技术分析 v n c 的体系结构由v n cc l i e n t 和v n cs e r v e r 和通信协议组成,将本地主机 称为v n cc l i e n t ,将远程提供真正软件服务的计算机称为v n cs e r v e r ,通信协议 根据加解码图像数据的方式不同而不同,当前v n c 采用的通信协议主要为r e m o t e f r a m e b u f f e r 协议【3 l 】。 其工作原理是在远程操作系统上部署服务程序( c l i e n t 服务程序) ,截获其窗 口显示数据和窗口事件,经网络传输送达本地系统的处理程序( s e r v e r 服务程序) , s e r v e r 服务程序分析传送过来的数据,分离出要显示的窗口数据,然后由s e r v e r 创建窗口来显示窗口数据,完成s e r v e r 端的远程显示任务。同时s e r v e r 服务程序 会接收用户输入的鼠键事件,以网络传输的方式传送到c l i e n t 服务程序中去,c l i e n t 服务程序会将事件发送给操作系统,最后会引起c l i e n t 端程序事件响应。完成s e r v e r 端的远程控制目的。其大致流程如图2 5 所示: 第1l 页 国防科学技术大学研究生院工程硕士学位论文 v n cc 1 i e n t v n cs e r v e r 显示窗口 各应用程序 t f r a m e b u f f e r 层系统消息队列 二l 。 伞 用户事件轰据 数据 屏幕数据 发送百户事件 l 网络传输 叫r 1 p n t 阴落程序l j s e r v e r 服务程序k , 矿l l 图2 5v n c 体系结构 客户端和服务端的数据传递依靠r f b 协议传输,该协议的主要工作是提供高 效的图像更新方法和基本的事件传递方法。它可根据本机与远程机的网络传输速 度动态的改变图形数据的发送方式。在支持双方桌面的交互方面,经过消息扩充 的r f b 协议可以传输用户复制的数据,供本地的程序使用,提供远程桌面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年综采回撤作业规程考试试题及答案
- 工程项目方案业绩(3篇)
- 2025年圆的面积周长试卷及答案
- 工程协调方案承诺函(3篇)
- 工程验收分工方案(3篇)
- 工程行业简历优化方案(3篇)
- 2025二手汽车买卖合同书
- 工程优化方案的目的(3篇)
- 2025版《血液净化标准操作规程》感染SOP解读考试试题(附答案)
- 2025年关于房屋租赁合同的新规定
- 临床基本检查方法和检查程序课件
- 新疆五彩湾温泉二期建设项目可行性研究报告
- 红金消结片对“乳腺增生”的疗效观察
- 基于Java的网上蛋糕预订销售系统的设计与实现
- 青海2023届高校毕业生就业报告出炉:医学和法学就业率最高
- 生理学 第九章 感觉器官的功能
- 急救车必备药品和物品 急救车物品药品管理
- 静脉血栓栓塞症预防与护理课件
- 西门子低压电器快速选型手册
- 养羊与羊病防治技术课件
- 蔬菜大棚项目计划书
评论
0/150
提交评论