什么茶降火| 白羊座和什么座最配| 人格魅力什么意思| 做梦梦见剪头发是什么意思| 为什么喝完酒头疼| 姐姐的孩子叫什么| 不含而立是什么意思| 今天天气适合穿什么衣服| 紫苏叶有什么作用| 烧心什么感觉| 继发性高血压什么意思| 尿液红细胞高是什么原因| 耳石症是什么引起的| 眼睛长结石是什么原因引起的| svip和vip有什么区别| 天的反义词是什么| 为什么拔罐肩膀最黑| 7.14是什么日子| 黑桃a是什么酒| 什么药一吃就哑巴了| 准备要孩子需要注意什么| 什么的水流| 多囊卵巢是什么原因造成的| 属狗的是什么命| 做高铁不能带什么| 六度万行 是什么意思| 梦见前婆婆是什么意思| 同型半胱氨酸高有什么症状| 眼睛充血用什么眼药水好| 柏拉图之恋是什么意思| 霉菌感染用什么药最好| 挂科是什么意思| 什么颜色加什么颜色等于白色| 软化血管吃什么药最好| 心跳过速吃什么药| 木加石读什么| 甲状腺结节看什么科室最好| 怹是什么意思| 什么钱最不值钱| 百香果有什么功效与作用| 基数是什么意思| 玫瑰花的花语是什么| 宫外孕有什么危害| 手部湿疹用什么药膏| 急性肠胃炎应该吃什么药| 人武部是干什么的| 松香有毒吗对人体有什么危害| 屡禁不止的意思是什么| 生理期为什么会肚子疼| paco2是什么意思| 庆大霉素治疗鱼什么病| 刀郎和那英是什么关系| 马的尾巴有什么作用| 金青什么字| 为什么文化大革命| 沉香是什么| 什么茶可以减肥消脂| 脊椎和脊柱有什么区别| 肚子总胀气是什么原因| 景五行属性是什么| 脑电图能检查出什么疾病| 水中加什么擦玻璃干净| 53年属什么生肖| 同学群取什么名字好| 用什么泡水喝可以降血压| 凯格尔运动是什么| 荔枝不能与什么一起吃| tc版是什么意思| 10.16是什么星座| 什么人容易长智齿| 丑什么意思| 吃什么补身体| 低俗是什么意思| 嘴巴干苦是什么原因| 有龙则灵的灵是什么意思| 口甘读什么| 单核细胞百分比偏高是什么原因| 毛豆吃多了有什么坏处| 耳朵痒是什么原因引起的| 肯德基为什么叫kfc| 女人长期喝西洋参有什么好处| 宫颈纳囊是什么意思| 亲近是什么意思| 户籍信息是什么| 鹦鹉代表什么生肖| 手心脚心发热是什么原因引起的| 胸闷挂什么科| kalenji是什么品牌| 黄金是什么生肖| 大熊猫为什么有黑眼圈| 河马吃什么| 什么叫老人临终骨折| 什么是新陈代谢| 鼓上蚤是什么意思| 送护士女朋友什么礼物| 麻古是什么| 黄瓜不能和什么一起吃| 女生排卵期是什么意思| 经期吃什么补血| 好人是什么意思| 四面弹是什么面料| 检查肝脏挂什么科| 可乐饼为什么叫可乐饼| 黑眼圈重是什么原因| 华盖是什么意思| 涤纶是什么材质| 纳囊是什么| 血离子是检查什么的| 广东菜心是什么菜| 520是什么节日| 中阴身是什么意思| 2d是什么意思| 罗勒是什么| 神经官能症是什么病| 咳嗽有黄痰吃什么药| 04年的猴是什么命| 出格是什么意思| 拉绿屎是什么原因| 红色的补色是什么颜色| 腊月是什么月| 什么时候三伏天| 处女座幸运颜色是什么| 宫颈短是什么意思| 类似蜈蚣的虫子叫什么| 9527什么意思| 舌头边疼是什么原因| 肌酐700多意味着什么| 胃糜烂要吃什么药| 月经期适合吃什么水果| 大蒜泡酒治什么病| 饱和脂肪是什么意思| 脸上爱出汗是什么原因| 逆熵是什么意思| 体虚是什么原因引起的| 膀胱炎吃什么药好得快| 卧室放什么驱虫最好| 忠心不二是什么生肖| hpl是什么意思| 六味地黄丸有什么副作用| 尿崩症是什么症状| 结肠是什么病| 保释金是什么意思| 紫烟是什么意思| 十二月份的是什么星座| 吃螃蟹不能吃什么| 胡萝卜不能和什么食物一起吃| 肝囊肿是什么病| 学前教育学什么| 噫气是什么意思| 6月23日什么星座| 3.1号是什么星座| 小便出血是什么原因| 小肠火吃什么药效果快| 胆汁反流是什么原因| 伤寒是什么病| 两个土念什么| 40岁属什么| 卵泡是什么意思| 什么叫社保| 1月25日什么星座| 直博是什么意思| abo是什么| 训练有素是什么意思| 吃什么东西补血快| 沣字五行属什么| 长期手淫会有什么危害| ket是什么| 脸浮肿是什么病的前兆| 腹泻是什么原因引起的| gst什么意思| 一什么狼| 什么牌子的蜂蜜比较好| 斑秃挂什么科| 油腔滑调指什么生肖| 建卡需要带什么证件| 女人什么时候绝经正常| 送妈妈什么礼物好| 白色属于五行属什么| 国家三有保护动物是什么意思| 辣椒含有什么维生素| c反应蛋白高吃什么药| 嗝什么意思| 喝椰子水有什么好处| 佩字五行属什么| 加仓什么意思| 低血钾是什么病| 手心朝上是什么意思| 为什么会便秘| 什么牙膏最好| 分率是什么意思| 梦见剃光头是什么预兆| 爬山膝盖疼是什么原因| 大姨妈期间同房有什么影响| 内心os是什么意思| 六月一号什么星座| 免疫球蛋白是什么| 再接再厉后面接什么好| 许莫氏结节是什么| 夏枯草是什么| 吃什么补记忆力最快| 福泽深厚什么意思| 蛾子吃什么| 武则天是什么朝代| 神经官能症是什么病| 肠炎吃什么药效果最好| 鲽鱼是什么鱼| 法界是什么意思| 每天流鼻血是什么原因| 一个木一个舌读什么| 身上为什么会长小肉球| 吃什么对卵巢好| 腿酸是什么原因引起的| 膝盖积液用什么药最好| csf是什么意思| 翡翠是什么| 宫腔积液吃什么药效果最好| 蝙蝠进屋有什么预兆| 5月8日是什么星座| 上焦湿热吃什么中成药| 促黄体生成素是什么意思| 出片是什么意思| 头发长不长是什么原因怎么办| 白牌车是什么身份| 80分贝相当于什么声音| 头晕去医院看什么科| 什么办法| pd是什么病| 16年是什么年| 婴儿吃什么奶粉好呢| 鱼泡是鱼的什么器官| 腮腺炎的症状是什么| 猪肉馅饺子配什么菜| 碧玺是什么宝石| 保胎吃什么药| 工作性质是什么| 血小板高有什么危害| 什么东西补血最快| 梦到自己流鼻血是什么预兆| 经期适合什么运动| 米面是什么| 狗感冒吃什么药| 肺主皮毛是什么意思| 小孩子晚上睡觉磨牙是什么原因| 前列腺特异性抗原是什么意思| 杂面是什么面| 40什么意思| 2021什么年| 君子兰什么时候开花| 眼睛斜视是什么原因| 法国铁塔叫什么| 雷声什么| 脾切除后有什么影响和后遗症| 什么是碱性食物| 稀释是什么意思| 什么叫磨玻璃结节| 五台山是什么菩萨的道场| leep术是什么手术| 卵巢囊性占位是什么意思| 组织委员的职责是什么| 芙蓉花长什么样| 心律不齐是什么意思| 神经纤维瘤是什么病| 9.28什么星座| 冰爽丝是什么面料| 百度

美国人领养外国儿童数量锐减 中国孩子多被国内家庭收养

Hosted virtual desktop dynamic configuration based on end point characteristics Download PDF

Info

Publication number
US20120226985A1
US20120226985A1 US13/038,770 US201113038770A US2012226985A1 US 20120226985 A1 US20120226985 A1 US 20120226985A1 US 201113038770 A US201113038770 A US 201113038770A US 2012226985 A1 US2012226985 A1 US 2012226985A1
Authority
US
United States
Prior art keywords
user interface
virtual desktop
capabilities
logic
endpoint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/038,770
Inventor
Steven Chervets
Stephan Edward Friedl
Thomas Martin Wesselman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US13/038,770 priority Critical patent/US20120226985A1/en
Assigned to CISCO TECHNOLOGY, INC. reassignment CISCO TECHNOLOGY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHERVETS, STEVEN, FRIEDL, STEPHAN EDWARD, WESSELMAN, THOMAS MARTIN
Publication of US20120226985A1 publication Critical patent/US20120226985A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Definitions

  • the present disclosure relates generally to Hosted Virtual Desktops (HVD).
  • HVD Hosted Virtual Desktops
  • “Virtual desktop” is a term used within the WIMP (window, icon, menu, and pointing) paradigm for providing a user with an interface that mimics the interface of another device such as the user's desktop computer. Typically, the same interface is always provided. Some devices, such as mobile devices, however, have limited capabilities.
  • FIG. 1 is a block diagram illustrating an example of an endpoint that configures a virtual desktop based on the endpoint's capabilities.
  • FIG. 2 is a block diagram where a network element determines the capabilities of an endpoint and provides a virtual desktop to the endpoint that comports with the capabilities of the endpoint.
  • FIG. 3 is a block diagram of a computer system upon which an example embodiment can be implemented.
  • FIG. 4 is a block diagram illustrating an example methodology for configuring a hosted virtual desktop to comport with the capabilities of the endpoint.
  • an apparatus comprising a communication interface configured to receive data representative of a virtual desktop, a user interface, and virtual desktop logic coupled with the communication interface and the user interface.
  • the virtual desktop logic determines capabilities of the user interface and provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface.
  • an apparatus comprising a first communication interface configured to receive data representative of a virtual desktop, a second communication interface for communicating virtual desktop data to an endpoint, and virtual desktop logic coupled with the first communication interface and the second communication interface.
  • the virtual desktop logic obtains data representative of capabilities of the endpoint via the second communication interface.
  • the virtual desktop logic provides data representative of an endpoint virtual desktop to the endpoint via the second interface based on the capabilities of the endpoint.
  • a method comprising determining capabilities of a device with a user interface receiving a virtual desktop.
  • the capabilities of the device are determined to ascertain whether the device will support a predefined application available from the virtual desktop.
  • the user interface of the device is configured, so that the user interface provides a link to the predefined application responsive to determining the capabilities of the device support the predefined application.
  • the logic is further operable to configure the user interface of the device.
  • the user interface provides a first set of links to a first set of predefined applications available via the virtual desktop responsive to determining the capabilities of the device support the first set of predefined applications.
  • HVD Hosted Virtual Desktop
  • An agent installed in an endpoint, the HVD or a network element can sense a client associated with an endpoint connecting to the HVD.
  • the agent optimizes the desktop configuration so that it is specifically geared towards the capabilities of the endpoint. This permits a user to have a single global desktop which is accessible and usable from a wide variety of endpoint devices such as personal computers (PCs), thin client devices, and/or handheld devices such as smartphones.
  • PCs personal computers
  • thin client devices such as smartphones.
  • the agent will dynamically change the virtual desktop composition and configuration based on changes to the configuration of an endpoint device. For example, while accessing a HVD from a smartphone, the smartphone may display a specific application that would ask the user if they want to view a document or make a VOIP call, or perhaps control their TV (which is also connected to the HVD) and would suppress the availability of standard PC productivity applications which are not usable from handheld devices. However, as soon as the user connects an external device such as a monitor, keyboard and/or mouse to the smartphone, then a regular Windows Desktop with a full suite of productivity applications could be displayed.
  • an external device such as a monitor, keyboard and/or mouse
  • the agent would enable HD video playback applications.
  • the endpoint is a thin client that lacks the local media processing capabilities to support video or audio conferencing from the endpoint, the agent would exclude those applications from the desktop when viewed through the thin client.
  • the endpoint is a PC with appropriate input devices (e.g., keyboard and/or mouse) and output devices (such as a monitor and speaker), a fully configured desktop is delivered to the endpoint.
  • an agent resident on a network element modifies the desktop instead of using an agent resident in the desktop.
  • FIG. 1 is a block diagram illustrating an example of an endpoint device 100 that configures a virtual desktop based on the endpoint's capabilities.
  • Endpoint device 100 comprises Hosted Virtual Desktop (HVD) logic 102 , a local output device 104 , and a communication interface 106 .
  • HVD Hosted Virtual Desktop
  • HVD logic 102 receives data representative of a virtual desktop via communication interface 106 .
  • HVD logic 102 determines the capabilities of the user interface, local output device 104 in this example, and provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface.
  • Logic includes but is not limited to hardware, firmware, software and/or combinations of each to perform a function(s) or an action(s), and/or to cause a function or action from another component.
  • logic may include a software controlled microprocessor, discrete logic such as an application specific integrated circuit (ASIC), a programmable/programmed logic device, memory device containing instructions, or the like, or combinational logic embodied in hardware.
  • Logic may also be fully embodied as software stored on a non-transitory, tangible medium which performs a described function when executed by a processor.
  • Logic may suitably comprise one or more modules configured to perform one or more functions.
  • local output device 104 is a component, or a part of, a user interface.
  • a “user interface” may suitably comprise an input device, such as a keyboard, an output device such as a monitor and/or audio output device, or a combination of an input device and an output device such as a touchscreen.
  • the user interface may optionally include multiple input and/or output devices such as keyboard and mouse, high definition (HD) or external display, etc. Examples of other devices that may be a part of a user interface include but are not limited to keyboard 110 , mouse, 112 , external monitor 114 , speaker 116 , touch pad, touch screen, and/or game pad.
  • Communication 106 may be any suitable interface for receiving data representative of a virtual desktop from an external source (not shown), such as a user's home network. Communication interface 106 is coupled with the external source via communication link 108 .
  • HVD logic 102 can detect a change in the user interface and changes the virtual desktop provided on the at least one component, e.g., local output device 104 , responsive to the change in the user interface. For example, HVD logic 102 can detect whether an external keyboard (e.g., keyboard 110 ), external mouse (e.g., external mouse 112 ), external monitor (e.g. external monitor 114 ), and/or an audio output device (e.g. speakers 116 ) have been connected or disconnected. In an example embodiment, HVD desktop logic 102 determines whether to display, or not to display (suppress) an application on local output device 104 based on the detected user interface components.
  • an external keyboard e.g., keyboard 110
  • external mouse e.g., external mouse 112
  • external monitor e.g. external monitor 114
  • an audio output device e.g. speakers 116
  • HVD logic 102 can suppress the display of Word Processing, Spreadsheet, and other applications; however, upon detecting keyboard 110 and/or mouse 112 are connected to endpoint 110 , HVD logic 102 may then change the virtual desktop and display icons or other provide other output (for example providing an audio signal on an audio output device such as speaker 116 ) indicating the availability of these applications.
  • HVD logic 102 changes the desktop to indicate the video application is available.
  • the desktop may also be modified based on communication link 108 .
  • HVD logic 102 would suppress the availability of the video stream on local output device 104 ; however, if the signal becomes strong enough for the video stream, HVD logic 102 would change the virtual desktop to indicate the video stream is available.
  • HVD logic 102 may selectively output a virtual desktop on one or more devices. For example, if an external device, such as external monitor 114 is coupled with endpoint 100 , HVD logic 102 may selectively display the virtual desktop on local output device 104 , external monitor 114 , or both. Another example could be where one of the end points is a thin client and another is a screen only which could display a media stream. With the idea being that one HVD could service server multiple end points. A mechanism that could be used to implement this type of sharing would be Terminal services, wherein each end point would get their own Terminal Services session with the same HVD. Each terminal services session will display a different application.
  • HVD logic 102 may render any number of virtual desktops based on the configuration of endpoint 100 . For example, if no external devices, e.g., keyboard 110 , mouse, 112 , external monitor 114 , and speaker 116 are detected, HVD logic 102 may provide a first set of applications on the virtual desktop based on the capabilities of the user interface, local output device 104 in this example. HVD logic 102 provides set of applications with the virtual desktop responsive to detecting a first change in the user interface. For example, if HVD logic 102 detects that one of the group consisting of keyboard 110 and mouse 112 is coupled with endpoint 100 , HVD logic 102 provides a second set of applications with the virtual desktop.
  • HVD logic 102 detects that one of the group consisting of keyboard 110 and mouse 112 is coupled with endpoint 100 .
  • HVD logic 102 may provide a third set of applications with the virtual desktop. From the foregoing, one skilled in the art can readily appreciate that applications available on endpoint 100 may be dynamically changed any time there is a change to the configuration of endpoint 100 .
  • FIG. 2 is a block diagram where a network element 202 determines the capabilities of an endpoint 200 and provides endpoint 100 A with a virtual desktop that comports with the capabilities of endpoint 100 A.
  • network element 202 comprises a first interface (I/F) 204 that receives data representative of a virtual desktop, and a second interface 206 coupled with endpoint 200 , and HVD logic 208 coupled with first interface 204 and second interface 206 .
  • I/F first interface
  • HVD logic 208 coupled with first interface 204 and second interface 206 .
  • HVD logic 208 obtains, via second interface 206 , data representative of the capabilities of endpoint 100 A.
  • endpoint 200 may provide the capabilities of local user interface (UI) 210 and whether keyboard 110 , mouse 112 , external monitor 114 , and/or speaker 116 , or any combination thereof, are coupled with endpoint 100 A, in the illustrated example endpoint 100 A is configured with UI 210 , keyboard 110 and mouse 112 .
  • HVD logic 208 receives data representative of a virtual desktop for endpoint 100 A via first interface 204 .
  • HVD logic 208 provides data representative of an endpoint virtual desktop to endpoint 100 A via second communication interface 206 based on the capabilities of endpoint 100 A.
  • network element may be coupled with a plurality of endpoints, 100 A, 100 B.
  • HVD logic 208 obtains data representative of capabilities of endpoint 100 B via second communication interface 206 .
  • HVD logic 208 provides data representative of a second endpoint virtual desktop to endpoint 100 B based on the capabilities of endpoint 100 B via second communication interface 206 .
  • HVD logic 208 may provide different virtual desktops to different endpoints 100 A, 100 B based on their capabilities.
  • endpoint 100 A may be provided with a first set of applications with its virtual desktop based on the capabilities of endpoint 100 A and endpoint 100 B may be provided with a second set of applications with its virtual desktop based on the capabilities of endpoint 100 B.
  • HVD logic 208 may change the virtual desktop to an endpoint upon detecting a change in the configuration of the endpoint. For example, if no external devices, e.g., keyboard 110 , mouse, 112 , external monitor 114 , and speaker 116 are detected coupled with endpoint 100 A, HVD logic 208 may provide a first set of applications on the virtual desktop to endpoint 100 A based on the capabilities of local user interface 210 . If HVD logic determines that the configuration of endpoint 100 A has changed, e.g., one or more of keyboard 110 , mouse 112 , external monitor 114 , and speaker 116 are connected to, or disconnected from, endpoint 100 A, HVD logic 208 changes the virtual desktop provided to endpoint 100 A. For example, a first set of applications may be provided with the virtual desktop before a change is detected and a second set of applications may be provided with the virtual desktop after the change is detected.
  • a first set of applications may be provided with the virtual desktop before a change is detected and a second set
  • FIG. 3 is a block diagram of a computer system upon which an example embodiment can be implemented.
  • Computer system 300 includes a bus 302 or other communication mechanism for communicating information and a processor 304 coupled with bus 302 for processing information.
  • Computer system 300 also includes a main memory 306 , such as random access memory (RAM) or other dynamic storage device coupled to bus 302 for storing information and instructions to be executed by processor 304 .
  • Main memory 306 also may be used for storing a temporary variable or other intermediate information during execution of instructions to be executed by processor 304 .
  • Computer system 300 further includes a read only memory (ROM) 308 or other static storage device coupled to bus 302 for storing static information and instructions for processor 304 .
  • a storage device 310 such as a magnetic disk or optical disk, is provided and coupled to bus 302 for storing information and instructions.
  • Computer system 300 may be coupled via bus 302 to a user interface 311 comprising a display 312 , input device 314 , and/or cursor control 316 .
  • Display 312 such as a liquid crystal display (LCD), for displaying information to a computer user.
  • An input device 314 such as a keyboard including alphanumeric and other keys is coupled to bus 302 for communicating information and command selections to processor 304 .
  • cursor control 316 is Another type of user input device, such as a mouse, a trackball, cursor direction keys, and/or a touchscreen for communicating direction information and command selections to processor 304 and for controlling cursor movement on display 312 .
  • This input device typically has two degrees of freedom in two axes, a first axis (e.g. x) and a second axis (e.g. y) that allows the device to specify positions in a plane.
  • An aspect of the example embodiment is related to the use of computer system 300 for implementing a virtual desktop.
  • implementing a virtual desktop is provided by computer system 300 in response to processor 304 executing one or more sequences of one or more instructions contained in main memory 306 .
  • Such instructions may be read into main memory 306 from another computer-readable medium, such as storage device 310 .
  • Execution of the sequence of instructions contained in main memory 306 causes processor 304 to perform the process steps described herein.
  • processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory 306 .
  • hard-wired circuitry may be used in place of or in combination with software instructions to implement an example embodiment.
  • Computer system 300 may be employed for implementing endpoint 100 ( FIG. 1 ), processor 304 executes instructions to perform the functionality of HVD logic 102 ( FIG. 1 ); network elements 202 ( FIG. 2 ), processor 304 executes instructions to perform the functionality of HVD logic 208 ( FIG. 2 ); endpoint 304 ( FIG. 3 ); enterprise component 304 ( FIG. 3 ); switch router 402 ( FIG. 4 ), processor 304 executes instructions to perform the functionality of proxy connection logic 506 ; gateway provider 602 ( FIGS. 6 and 7 ); and/or service provider gateway 800 ( FIG. 8 ), processor 304 executes instructions to perform the functionality of service provider gateway logic 806 .
  • Non-volatile media include for example optical or magnetic disks, such as storage device 310 .
  • Volatile media include dynamic memory such as main memory 306 .
  • tangible media may include volatile and non-volatile media.
  • Common forms of computer-readable media include for example floppy disk, a flexible disk, hard disk, magnetic cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASHPROM, CD, DVD or any other memory chip or cartridge, or any other medium from which a computer can read.
  • Computer system 300 also includes a communication interfaces 318 A, 318 B coupled to bus 302 .
  • Communication interface 318 A provides a two-way data communication coupling computer system 300 to a network link 320 that is connected to a local network 322 .
  • communication interface 318 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN.
  • communication interface 318 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line.
  • ISDN integrated services digital network
  • Wireless links may also be implemented.
  • communication interface 318 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
  • Network link 320 typically provides data communication through one or more networks to other data devices.
  • network link 320 may provide a connection through local network 322 to a virtual desktop implementation desktop client (VDI DC) 324 .
  • local network 322 may be coupled with a server 330 that is sourcing image and/or media data, enabling media and/or image data to be obtained by computer system 300 while bypassing HVD virtual machine 324 .
  • Communication interface 318 B is coupled to endpoint link 332 .
  • Endpoint link 332 provides data communication with an endpoint device 334 .
  • This allows computer system to receive virtual desktop endpoint requests and to provide virtual desktop data from HVD virtual machine 324 and server 330 to endpoint 334 .
  • the illustrated example shows two communication interface 318 A, 318 B those skilled in the art should readily appreciate that this is for ease of illustration and that any physically realizable number of interfaces may be coupled to bus 302 .
  • FIG. 4 a methodology in accordance with an example embodiment will be better appreciated with reference to FIG. 4 . While, for purposes of simplicity of explanation, the methodology of FIG. 4 is shown and described as executing serially, it is to be understood and appreciated that the example embodiment is not limited by the illustrated orders, as some aspects could occur in different orders and/or concurrently with other aspects from that shown and described herein. Moreover, not all of the illustrated features may be required. The methodology described herein is suitably adapted to be implemented in hardware, software, or a combination thereof.
  • FIG. 4 is a block diagram illustrating an example methodology 400 for configuring a hosted virtual desktop to comport with the capabilities of an endpoint.
  • Methodology 1000 may be implemented by HVD logic 102 ( FIG. 1 ), HVD logic 208 ( FIG. 2 ) and/or processor 304 ( FIG. 4 ).
  • the configuration of the endpoint device is determined.
  • the determination may include, but is not limited to, the type of video display available, type of audio device available, type of input device, type and characteristics (such as available bandwidth) of network connection, and/or processing capabilities available at the endpoint.
  • the desktop is configured based on the endpoint's capabilities. For example, applications the endpoint supports are available on the desktop (e.g., displayed) while applications which the endpoint are unable to run are suppressed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

In accordance with an example embodiment, there is disclosed herein an apparatus comprising a communication interface configured to receive data representative of a virtual desktop, a user interface, and virtual desktop logic coupled with the communication interface and the user interface. The virtual desktop logic determines capabilities of the user interface and provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface.

Description

    TECHNICAL FIELD
  • 百度 这样的主题学源于民俗学和民间故事的类型研究。
    The present disclosure relates generally to Hosted Virtual Desktops (HVD).
  • BACKGROUND
  • “Virtual desktop” is a term used within the WIMP (window, icon, menu, and pointing) paradigm for providing a user with an interface that mimics the interface of another device such as the user's desktop computer. Typically, the same interface is always provided. Some devices, such as mobile devices, however, have limited capabilities.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings incorporated herein and forming a part of the specification illustrate the example embodiments.
  • FIG. 1 is a block diagram illustrating an example of an endpoint that configures a virtual desktop based on the endpoint's capabilities.
  • FIG. 2 is a block diagram where a network element determines the capabilities of an endpoint and provides a virtual desktop to the endpoint that comports with the capabilities of the endpoint.
  • FIG. 3 is a block diagram of a computer system upon which an example embodiment can be implemented.
  • FIG. 4 is a block diagram illustrating an example methodology for configuring a hosted virtual desktop to comport with the capabilities of the endpoint.
  • OVERVIEW OF EXAMPLE EMBODIMENTS
  • The following presents a simplified overview of the example embodiments in order to provide a basic understanding of some aspects of the example embodiments. This overview is not an extensive overview of the example embodiments. It is intended to neither identify key or critical elements of the example embodiments nor delineate the scope of the appended claims. Its sole purpose is to present some concepts of the example embodiments in a simplified form as a prelude to the more detailed description that is presented later.
  • In accordance with an example embodiment, there is disclosed herein an apparatus comprising a communication interface configured to receive data representative of a virtual desktop, a user interface, and virtual desktop logic coupled with the communication interface and the user interface. The virtual desktop logic determines capabilities of the user interface and provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface.
  • In accordance with an example embodiment, there is disclosed herein an apparatus comprising a first communication interface configured to receive data representative of a virtual desktop, a second communication interface for communicating virtual desktop data to an endpoint, and virtual desktop logic coupled with the first communication interface and the second communication interface. The virtual desktop logic obtains data representative of capabilities of the endpoint via the second communication interface. The virtual desktop logic provides data representative of an endpoint virtual desktop to the endpoint via the second interface based on the capabilities of the endpoint.
  • In accordance with an example embodiment, there is disclosed herein a method comprising determining capabilities of a device with a user interface receiving a virtual desktop. The capabilities of the device are determined to ascertain whether the device will support a predefined application available from the virtual desktop. The user interface of the device is configured, so that the user interface provides a link to the predefined application responsive to determining the capabilities of the device support the predefined application.
  • In accordance with an example embodiment, there is disclosed herein logic encoded in at least one non-transitory computer readable media for execution by a processor, and when executed by the processor is operable to determine capabilities of a device with a user interface that is receiving a virtual desktop. The logic is further operable to configure the user interface of the device. The user interface provides a first set of links to a first set of predefined applications available via the virtual desktop responsive to determining the capabilities of the device support the first set of predefined applications.
  • DESCRIPTION OF EXAMPLE EMBODIMENTS
  • This description provides examples not intended to limit the scope of the appended claims. The figures generally indicate the features of the examples, where it is understood and appreciated that like reference numerals are used to refer to like elements. Reference in the specification to “one embodiment” or “an embodiment” or “an example embodiment” means that a particular feature, structure, or characteristic described is included in at least one embodiment described herein and does not imply that the feature, structure, or characteristic is present in all embodiments described herein.
  • Disclosed in an example embodiment herein is a technique for providing a Hosted Virtual Desktop (HVD). An agent installed in an endpoint, the HVD or a network element can sense a client associated with an endpoint connecting to the HVD. The agent optimizes the desktop configuration so that it is specifically geared towards the capabilities of the endpoint. This permits a user to have a single global desktop which is accessible and usable from a wide variety of endpoint devices such as personal computers (PCs), thin client devices, and/or handheld devices such as smartphones.
  • In particular embodiments, the agent will dynamically change the virtual desktop composition and configuration based on changes to the configuration of an endpoint device. For example, while accessing a HVD from a smartphone, the smartphone may display a specific application that would ask the user if they want to view a document or make a VOIP call, or perhaps control their TV (which is also connected to the HVD) and would suppress the availability of standard PC productivity applications which are not usable from handheld devices. However, as soon as the user connects an external device such as a monitor, keyboard and/or mouse to the smartphone, then a regular Windows Desktop with a full suite of productivity applications could be displayed. As another example, if a handheld device is coupled with an HD (high definition) monitor but no keyboard or mouse is attached to the handheld device, the agent would enable HD video playback applications. As another example, if the endpoint is a thin client that lacks the local media processing capabilities to support video or audio conferencing from the endpoint, the agent would exclude those applications from the desktop when viewed through the thin client. However, if the endpoint is a PC with appropriate input devices (e.g., keyboard and/or mouse) and output devices (such as a monitor and speaker), a fully configured desktop is delivered to the endpoint. In an alternate embodiment, an agent resident on a network element modifies the desktop instead of using an agent resident in the desktop.
  • FIG. 1 is a block diagram illustrating an example of an endpoint device 100 that configures a virtual desktop based on the endpoint's capabilities. Endpoint device 100 comprises Hosted Virtual Desktop (HVD) logic 102, a local output device 104, and a communication interface 106.
  • In an example embodiment, HVD logic 102 receives data representative of a virtual desktop via communication interface 106. HVD logic 102 determines the capabilities of the user interface, local output device 104 in this example, and provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface. “Logic”, as used herein, includes but is not limited to hardware, firmware, software and/or combinations of each to perform a function(s) or an action(s), and/or to cause a function or action from another component. For example, based on a desired application or need, logic may include a software controlled microprocessor, discrete logic such as an application specific integrated circuit (ASIC), a programmable/programmed logic device, memory device containing instructions, or the like, or combinational logic embodied in hardware. Logic may also be fully embodied as software stored on a non-transitory, tangible medium which performs a described function when executed by a processor. Logic may suitably comprise one or more modules configured to perform one or more functions.
  • In an example embodiment, local output device 104 is a component, or a part of, a user interface. As used herein a “user interface” may suitably comprise an input device, such as a keyboard, an output device such as a monitor and/or audio output device, or a combination of an input device and an output device such as a touchscreen. In particular embodiments, the user interface may optionally include multiple input and/or output devices such as keyboard and mouse, high definition (HD) or external display, etc. Examples of other devices that may be a part of a user interface include but are not limited to keyboard 110, mouse, 112, external monitor 114, speaker 116, touch pad, touch screen, and/or game pad.
  • Communication 106 may be any suitable interface for receiving data representative of a virtual desktop from an external source (not shown), such as a user's home network. Communication interface 106 is coupled with the external source via communication link 108.
  • In an example embodiment, HVD logic 102 can detect a change in the user interface and changes the virtual desktop provided on the at least one component, e.g., local output device 104, responsive to the change in the user interface. For example, HVD logic 102 can detect whether an external keyboard (e.g., keyboard 110), external mouse (e.g., external mouse 112), external monitor (e.g. external monitor 114), and/or an audio output device (e.g. speakers 116) have been connected or disconnected. In an example embodiment, HVD desktop logic 102 determines whether to display, or not to display (suppress) an application on local output device 104 based on the detected user interface components. For example, if no external components are detected, HVD logic 102 can suppress the display of Word Processing, Spreadsheet, and other applications; however, upon detecting keyboard 110 and/or mouse 112 are connected to endpoint 110, HVD logic 102 may then change the virtual desktop and display icons or other provide other output (for example providing an audio signal on an audio output device such as speaker 116) indicating the availability of these applications. As another example, if the resolution of a video application is incompatible with local output device 104 the availability of the video application is suppressed; however, if an external monitor (e.g., monitor 114) is coupled with endpoint 100 that can process the video application, HVD logic 102 changes the desktop to indicate the video application is available.
  • In particular embodiments, the desktop may also be modified based on communication link 108. For example, if a wireless link is employed for communication link 108 and the wireless signal is too weak to provide a video stream, HVD logic 102 would suppress the availability of the video stream on local output device 104; however, if the signal becomes strong enough for the video stream, HVD logic 102 would change the virtual desktop to indicate the video stream is available.
  • In an example embodiment, HVD logic 102 may selectively output a virtual desktop on one or more devices. For example, if an external device, such as external monitor 114 is coupled with endpoint 100, HVD logic 102 may selectively display the virtual desktop on local output device 104, external monitor 114, or both. Another example could be where one of the end points is a thin client and another is a screen only which could display a media stream. With the idea being that one HVD could service server multiple end points. A mechanism that could be used to implement this type of sharing would be Terminal services, wherein each end point would get their own Terminal Services session with the same HVD. Each terminal services session will display a different application.
  • In an example embodiment, HVD logic 102 may render any number of virtual desktops based on the configuration of endpoint 100. For example, if no external devices, e.g., keyboard 110, mouse, 112, external monitor 114, and speaker 116 are detected, HVD logic 102 may provide a first set of applications on the virtual desktop based on the capabilities of the user interface, local output device 104 in this example. HVD logic 102 provides set of applications with the virtual desktop responsive to detecting a first change in the user interface. For example, if HVD logic 102 detects that one of the group consisting of keyboard 110 and mouse 112 is coupled with endpoint 100, HVD logic 102 provides a second set of applications with the virtual desktop. If HVD logic 102 detects a second change in the user interface, for example another device is connected such as external monitor 114 and/or speaker 116, or a device is disconnected from the user interface, HVD logic 102 may provide a third set of applications with the virtual desktop. From the foregoing, one skilled in the art can readily appreciate that applications available on endpoint 100 may be dynamically changed any time there is a change to the configuration of endpoint 100.
  • FIG. 2 is a block diagram where a network element 202 determines the capabilities of an endpoint 200 and provides endpoint 100A with a virtual desktop that comports with the capabilities of endpoint 100A. In the illustrated example, network element 202 comprises a first interface (I/F) 204 that receives data representative of a virtual desktop, and a second interface 206 coupled with endpoint 200, and HVD logic 208 coupled with first interface 204 and second interface 206.
  • HVD logic 208 obtains, via second interface 206, data representative of the capabilities of endpoint 100A. For example, endpoint 200 may provide the capabilities of local user interface (UI) 210 and whether keyboard 110, mouse 112, external monitor 114, and/or speaker 116, or any combination thereof, are coupled with endpoint 100A, in the illustrated example endpoint 100A is configured with UI 210, keyboard 110 and mouse 112. HVD logic 208 receives data representative of a virtual desktop for endpoint 100A via first interface 204. HVD logic 208 provides data representative of an endpoint virtual desktop to endpoint 100A via second communication interface 206 based on the capabilities of endpoint 100A.
  • In an example embodiment, network element may be coupled with a plurality of endpoints, 100A, 100B. Although the illustrated example shows two endpoints, those skilled in the art should readily appreciate that any physically realizable number of endpoints may be connected to network element 202. HVD logic 208 obtains data representative of capabilities of endpoint 100B via second communication interface 206. HVD logic 208 provides data representative of a second endpoint virtual desktop to endpoint 100B based on the capabilities of endpoint 100B via second communication interface 206. Thus, HVD logic 208 may provide different virtual desktops to different endpoints 100A, 100B based on their capabilities. For example, endpoint 100A may be provided with a first set of applications with its virtual desktop based on the capabilities of endpoint 100A and endpoint 100B may be provided with a second set of applications with its virtual desktop based on the capabilities of endpoint 100B.
  • In an example embodiment, HVD logic 208 may change the virtual desktop to an endpoint upon detecting a change in the configuration of the endpoint. For example, if no external devices, e.g., keyboard 110, mouse, 112, external monitor 114, and speaker 116 are detected coupled with endpoint 100A, HVD logic 208 may provide a first set of applications on the virtual desktop to endpoint 100A based on the capabilities of local user interface 210. If HVD logic determines that the configuration of endpoint 100A has changed, e.g., one or more of keyboard 110, mouse 112, external monitor 114, and speaker 116 are connected to, or disconnected from, endpoint 100A, HVD logic 208 changes the virtual desktop provided to endpoint 100A. For example, a first set of applications may be provided with the virtual desktop before a change is detected and a second set of applications may be provided with the virtual desktop after the change is detected.
  • FIG. 3 is a block diagram of a computer system upon which an example embodiment can be implemented. Computer system 300 includes a bus 302 or other communication mechanism for communicating information and a processor 304 coupled with bus 302 for processing information. Computer system 300 also includes a main memory 306, such as random access memory (RAM) or other dynamic storage device coupled to bus 302 for storing information and instructions to be executed by processor 304. Main memory 306 also may be used for storing a temporary variable or other intermediate information during execution of instructions to be executed by processor 304. Computer system 300 further includes a read only memory (ROM) 308 or other static storage device coupled to bus 302 for storing static information and instructions for processor 304. A storage device 310, such as a magnetic disk or optical disk, is provided and coupled to bus 302 for storing information and instructions.
  • Computer system 300 may be coupled via bus 302 to a user interface 311 comprising a display 312, input device 314, and/or cursor control 316. Display 312 such as a liquid crystal display (LCD), for displaying information to a computer user. An input device 314, such as a keyboard including alphanumeric and other keys is coupled to bus 302 for communicating information and command selections to processor 304. Another type of user input device is cursor control 316, such as a mouse, a trackball, cursor direction keys, and/or a touchscreen for communicating direction information and command selections to processor 304 and for controlling cursor movement on display 312. This input device typically has two degrees of freedom in two axes, a first axis (e.g. x) and a second axis (e.g. y) that allows the device to specify positions in a plane.
  • An aspect of the example embodiment is related to the use of computer system 300 for implementing a virtual desktop. According to an example embodiment, implementing a virtual desktop is provided by computer system 300 in response to processor 304 executing one or more sequences of one or more instructions contained in main memory 306. Such instructions may be read into main memory 306 from another computer-readable medium, such as storage device 310. Execution of the sequence of instructions contained in main memory 306 causes processor 304 to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory 306. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement an example embodiment. Thus, embodiments described herein are not limited to any specific combination of hardware circuitry and software. Computer system 300 may be employed for implementing endpoint 100 (FIG. 1), processor 304 executes instructions to perform the functionality of HVD logic 102 (FIG. 1); network elements 202 (FIG. 2), processor 304 executes instructions to perform the functionality of HVD logic 208 (FIG. 2); endpoint 304 (FIG. 3); enterprise component 304 (FIG. 3); switch router 402 (FIG. 4), processor 304 executes instructions to perform the functionality of proxy connection logic 506; gateway provider 602 (FIGS. 6 and 7); and/or service provider gateway 800 (FIG. 8), processor 304 executes instructions to perform the functionality of service provider gateway logic 806.
  • The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor 304 for execution. Such a medium may take many forms, including but not limited to non-volatile media, and volatile media. Non-volatile media include for example optical or magnetic disks, such as storage device 310. Volatile media include dynamic memory such as main memory 306. As used herein, tangible media may include volatile and non-volatile media. Common forms of computer-readable media include for example floppy disk, a flexible disk, hard disk, magnetic cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASHPROM, CD, DVD or any other memory chip or cartridge, or any other medium from which a computer can read.
  • Computer system 300 also includes a communication interfaces 318A, 318B coupled to bus 302. Communication interface 318A provides a two-way data communication coupling computer system 300 to a network link 320 that is connected to a local network 322.
  • For example, communication interface 318 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. As another example, communication interface 318 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. Wireless links may also be implemented. In any such implementation, communication interface 318 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
  • Network link 320 typically provides data communication through one or more networks to other data devices. For example, network link 320 may provide a connection through local network 322 to a virtual desktop implementation desktop client (VDI DC) 324. In addition, local network 322 may be coupled with a server 330 that is sourcing image and/or media data, enabling media and/or image data to be obtained by computer system 300 while bypassing HVD virtual machine 324.
  • Communication interface 318B is coupled to endpoint link 332. Endpoint link 332 provides data communication with an endpoint device 334. This allows computer system to receive virtual desktop endpoint requests and to provide virtual desktop data from HVD virtual machine 324 and server 330 to endpoint 334. Although the illustrated example shows two communication interface 318A, 318B those skilled in the art should readily appreciate that this is for ease of illustration and that any physically realizable number of interfaces may be coupled to bus 302.
  • In view of the foregoing structural and functional features described above, a methodology in accordance with an example embodiment will be better appreciated with reference to FIG. 4. While, for purposes of simplicity of explanation, the methodology of FIG. 4 is shown and described as executing serially, it is to be understood and appreciated that the example embodiment is not limited by the illustrated orders, as some aspects could occur in different orders and/or concurrently with other aspects from that shown and described herein. Moreover, not all of the illustrated features may be required. The methodology described herein is suitably adapted to be implemented in hardware, software, or a combination thereof.
  • FIG. 4 is a block diagram illustrating an example methodology 400 for configuring a hosted virtual desktop to comport with the capabilities of an endpoint. Methodology 1000 may be implemented by HVD logic 102 (FIG. 1), HVD logic 208 (FIG. 2) and/or processor 304 (FIG. 4).
  • At 402, the configuration of the endpoint device is determined. The determination may include, but is not limited to, the type of video display available, type of audio device available, type of input device, type and characteristics (such as available bandwidth) of network connection, and/or processing capabilities available at the endpoint.
  • At 404, the desktop is configured based on the endpoint's capabilities. For example, applications the endpoint supports are available on the desktop (e.g., displayed) while applications which the endpoint are unable to run are suppressed.
  • At 406, a determination is made whether the endpoint configuration changed. This allows the method to dynamically adjust the virtual desktop in response to changes in the endpoint configuration. For example, if a keyboard or external monitor are connected to endpoint, or a change in the endpoint's network connectivity. If the configuration has changed (YES), then 402 and 404 are repeated. If the configuration has not changed (NO), then no changes are made to the desktop.
  • Described above are example embodiments. It is, of course, not possible to describe every conceivable combination of components or methodologies, but one of ordinary skill in the art will recognize that many further combinations and permutations of the example embodiments are possible. Accordingly, this application is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims interpreted in accordance with the breadth to which they are fairly, legally and equitably entitled.

Claims (20)

1. An apparatus, comprising:
a communication interface configured to receive data representative of a virtual desktop;
a user interface; and
virtual desktop logic coupled with the communication interface and the user interface;
wherein the virtual desktop logic determines capabilities of the user interface; and
wherein the virtual desktop logic provides a virtual desktop on at least one component of the user interface based on the determined capabilities of the user interface.
2. The apparatus set forth in claim 1, wherein the virtual desktop logic detects a change in the user interface; and
wherein the virtual desktop logic changes the virtual desktop provided on the at least one component responsive to the change in the user interface.
3. The apparatus set forth in claim 2, wherein the change in the user interface is a detected addition of one of a group consisting an external keyboard, an external mouse, an external monitor, a headset, and a speaker.
4. The apparatus set forth in claim 2, wherein the virtual desktop logic suppresses availability of an application before the change in the user interface based on determining the application is not compatible with the user interface;
wherein the virtual desktop logic is responsive to detecting the change in the user interface to determine whether the application is compatible with the changed user interface; and
wherein the virtual desktop logic provides data indicating the availability of the application responsive to determining the application is compatible with the changed user interface.
5. The apparatus set forth in claim 4, wherein the virtual desktop logic determines whether to automatically launch an application based on current capabilities of the changed user interface.
6. The apparatus set forth in claim 1, wherein the virtual desktop logic detects a first change in the user interface;
wherein the virtual desktop logic outputs a first set of applications on the user interface based on the capabilities of the user interface prior to detecting the change;
wherein the virtual desktop logic outputs a second set of applications on the user interface based on the capabilities of the user interface upon detecting the first change;
wherein the virtual desktop logic detects a second change in the user interface; and
wherein the virtual desktop logic outputs a third set of applications on the user interface based on the capabilities of the user interface upon detecting the second change.
7. An apparatus, comprising:
a first communication interface configured to receive data representative of a virtual desktop;
a second communication interface for communicating virtual desktop data to an endpoint; and
virtual desktop logic coupled with the first communication interface and the second communication interface;
wherein the virtual desktop logic obtains data representative of capabilities of the endpoint via the second communication interface; and
wherein the virtual desktop logic provides data representative of an endpoint virtual desktop to the endpoint via the second interface based on the capabilities of the endpoint.
8. The apparatus of claim 7, wherein the data representative of an endpoint virtual desktop comprises a first set of applications compatible with the capabilities of the endpoint;
wherein the virtual desktop logic is coupled with a second a second endpoint;
wherein the virtual desktop logic obtains data representative of capabilities of the second endpoint via the second communication interface;
wherein the virtual desktop logic provides data representative of a second endpoint virtual desktop to the endpoint based on the capabilities of the second endpoint via the second communication interface; and
wherein the data representative of a second endpoint comprises a second set of applications compatible with the capabilities of the second endpoint.
9. The apparatus set forth in claim 7, wherein the virtual desktop logic detects a change in the capabilities of the endpoint; and
wherein the virtual desktop logic changes the data representative of an endpoint virtual desktop provided to the endpoint responsive to the change in the user interface.
10. A method, comprising:
determining capabilities of a device with a user interface receiving a virtual desktop;
determining whether the capabilities of the device will support a predefined application available from the desktop; and
configuring the user interface of the device;
wherein the user interface provides a link to the predefined application responsive to determining the capabilities of the device supports the predefined application.
11. The method set forth in claim 10, further comprising:
detecting a change of the capabilities of the device; and
re-configuring the user interface of the device responsive to detecting the change of the capabilities of the device.
12. The method set forth in claim 11, wherein re-configuring the user interface comprises suppressing access to the link to the predefined application responsive to determining the device no longer supports the predefined application after detecting the change in capabilities.
13. The method set forth in claim 11, wherein the change in the user interface is a detected addition of one of a group consisting of an external input device, a video device, and an audio device to the device.
14. The method set forth in claim 11, wherein the change in the user interface is a detected addition of one of a group consisting of an external keyboard, an external mouse, an external display device, an external speaker, and an external printer.
15. The method set forth in claim 10, further comprising determining whether to launch the predefined application based on the capabilities of the device.
16. Logic encoded in at least one non-transitory computer readable media for execution by a processor, and when executed by the processor operable to:
determine capabilities of a device with a user interface that is receiving a virtual desktop; and
configuring the user interface of the device;
wherein the user interface provides a first set of links to a first set of predefined applications available via the virtual desktop responsive to determining the capabilities of the device support the first set of predefined applications.
17. The logic of claim 16, further operable to:
detect a change of the capabilities of the device; and
re-configure the user interface of the device responsive to detecting the change of the capabilities of the device;
wherein the re-configured user interface provides a second set of links to a second set of predefined applications available via the virtual desktop responsive to determining the capabilities of the device support the second set of predefined applications.
18. The logic of claim 17, further operable to:
determine whether a predefined application selected from the second set of applications should be automatically launched based on the change of the capabilities of the device; and
launch the predefined application responsive to determining that the predefined application should be automatically launched based on the change of the capabilities of the device.
19. The logic of claim 17, wherein the detected change in the user interface is an addition of one of a group consisting of external input device, a video device, and an audio device to the device.
20. The logic of claim 17, wherein the detected change in the user interface is a removal of one of a group consisting of external input device, a video device, and an audio device to the device.
US13/038,770 2025-08-07 2025-08-07 Hosted virtual desktop dynamic configuration based on end point characteristics Abandoned US20120226985A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/038,770 US20120226985A1 (en) 2025-08-07 2025-08-07 Hosted virtual desktop dynamic configuration based on end point characteristics

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/038,770 US20120226985A1 (en) 2025-08-07 2025-08-07 Hosted virtual desktop dynamic configuration based on end point characteristics

Publications (1)

Publication Number Publication Date
US20120226985A1 true US20120226985A1 (en) 2025-08-07

Family

ID=46754090

Family Applications (1)

Application Number Title Priority Date Filing Date
US13/038,770 Abandoned US20120226985A1 (en) 2025-08-07 2025-08-07 Hosted virtual desktop dynamic configuration based on end point characteristics

Country Status (1)

Country Link
US (1) US20120226985A1 (en)

Cited By (37)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US20120317295A1 (en) * 2025-08-07 2025-08-07 Cisco Technology, Inc. Distributed Overlay Browser For Transparent Streaming Media Support In Virtualized Desktop Environment
US20130073626A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Integrated operation method for social network service function and system supporting the same
US20130290857A1 (en) * 2025-08-07 2025-08-07 Vmware, Inc. User Interface Virtualization Techniques
US20140075377A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co. Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same
US20140082512A1 (en) * 2025-08-07 2025-08-07 Sap Ag Mobile Device Interface Generator
US20140203999A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method and apparatus for arranging a plurality of icons on a screen
US20140277618A1 (en) * 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method for initiating or resuming a mobile control session in a process plant
US20150121193A1 (en) * 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization for web applications
US20150131794A1 (en) * 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US9055139B1 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Display protocol interception in the network for services and network-based multimedia support for VDI
US9130899B1 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Integrated user interface for unified communications applications
US20150286451A1 (en) * 2025-08-07 2025-08-07 Canon Kabushiki Kaisha Methods and systems for managing a print-setting user interface
US20150355855A1 (en) * 2025-08-07 2025-08-07 Grandios Technologies, Llc Storage management system
US9503527B1 (en) * 2025-08-07 2025-08-07 Cisco Technology, Inc. Personalized phone registration based on virtual desktop infrastructure
US20160343350A1 (en) * 2025-08-07 2025-08-07 Microsoft Technology Licensing, Llc Gesture for task transfer
US20160357616A1 (en) * 2025-08-07 2025-08-07 Beijing Zhigu Rui Tuo Tech Co., Ltd Application management method and application management apparatus
US9542080B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization of context menus
US9772986B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. Transforming HTML forms into mobile native forms
US9864972B2 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Vehicle interface
US10037542B2 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Automated teller machine (ATM) interface
US10037303B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10168691B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data pipeline for process control system analytics
US10282676B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Automatic signal processing-based learning in a process plant
US10296668B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data modeling studio
US10318320B1 (en) * 2025-08-07 2025-08-07 Amazon Technologies, Inc. Virtual desktop access using device-native user interfaces
US10386827B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics platform
US10503483B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Rule builder in a process control network
US10649424B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10649449B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10656627B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Managing big data in process control systems
US10678225B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US10866952B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US10909137B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US11385608B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Big data in process control systems
US20220413633A1 (en) * 2025-08-07 2025-08-07 Apple Inc. Remote capacitive interface
US11543934B2 (en) 2025-08-07 2025-08-07 Groupon, Inc. Learning user interface
US12360656B2 (en) 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same

Citations (9)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US5896534A (en) * 2025-08-07 2025-08-07 Dell Usa, L.P. Operating system independent apparatus and method for supporting input/output devices unsupported by executing programs
US20060031529A1 (en) * 2025-08-07 2025-08-07 Keith Robert O Jr Virtual application manager
US20060112339A1 (en) * 2025-08-07 2025-08-07 Microsoft Corporation Mobile device interactions through objects on a computer
US20060248328A1 (en) * 2025-08-07 2025-08-07 International Business Machines Corporation Method and system for automatic detection, inventory, and operating system deployment on network boot capable computers
US20080270104A1 (en) * 2025-08-07 2025-08-07 Stratton Robert J System and Method for Creating an Assurance System in a Mixed Environment
US20100198906A1 (en) * 2025-08-07 2025-08-07 Dell Products L.P. Desktop Environment Solutions Methods and Systems
US20100233996A1 (en) * 2025-08-07 2025-08-07 Scott Herz Capability model for mobile devices
US20110082938A1 (en) * 2025-08-07 2025-08-07 Joe Jaudon Systems and methods for dynamically updating a user interface within a virtual computing environment
US20120151403A1 (en) * 2025-08-07 2025-08-07 International Business Machines Corporation Mapping virtual desktops to physical monitors

Patent Citations (9)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US5896534A (en) * 2025-08-07 2025-08-07 Dell Usa, L.P. Operating system independent apparatus and method for supporting input/output devices unsupported by executing programs
US20060031529A1 (en) * 2025-08-07 2025-08-07 Keith Robert O Jr Virtual application manager
US20060112339A1 (en) * 2025-08-07 2025-08-07 Microsoft Corporation Mobile device interactions through objects on a computer
US20060248328A1 (en) * 2025-08-07 2025-08-07 International Business Machines Corporation Method and system for automatic detection, inventory, and operating system deployment on network boot capable computers
US20080270104A1 (en) * 2025-08-07 2025-08-07 Stratton Robert J System and Method for Creating an Assurance System in a Mixed Environment
US20100198906A1 (en) * 2025-08-07 2025-08-07 Dell Products L.P. Desktop Environment Solutions Methods and Systems
US20100233996A1 (en) * 2025-08-07 2025-08-07 Scott Herz Capability model for mobile devices
US20110082938A1 (en) * 2025-08-07 2025-08-07 Joe Jaudon Systems and methods for dynamically updating a user interface within a virtual computing environment
US20120151403A1 (en) * 2025-08-07 2025-08-07 International Business Machines Corporation Mapping virtual desktops to physical monitors

Cited By (82)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US9130899B1 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Integrated user interface for unified communications applications
US10182085B2 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Integrated user interface for unified communications applications
US20120317295A1 (en) * 2025-08-07 2025-08-07 Cisco Technology, Inc. Distributed Overlay Browser For Transparent Streaming Media Support In Virtualized Desktop Environment
US9225763B2 (en) * 2025-08-07 2025-08-07 Cisco Technology, Inc. Distributed overlay browser for transparent streaming media support in virtualized desktop environment
US9304662B2 (en) * 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization techniques
US10254929B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization techniques
US20130290857A1 (en) * 2025-08-07 2025-08-07 Vmware, Inc. User Interface Virtualization Techniques
US20130073626A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Integrated operation method for social network service function and system supporting the same
US9734538B2 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd Integrated operation method for social network service function and system supporting the same
US9055139B1 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Display protocol interception in the network for services and network-based multimedia support for VDI
US9485292B2 (en) 2025-08-07 2025-08-07 Cisco Technology, Inc. Display protocol interception in the network for services and network-based multimedia support for VDI
US9542080B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization of context menus
US9158434B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization profiles for accessing applications on remote devices
US12360656B2 (en) 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same
US20140075377A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co. Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same
US11698720B2 (en) 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same
US20140082512A1 (en) * 2025-08-07 2025-08-07 Sap Ag Mobile Device Interface Generator
US9442618B2 (en) * 2025-08-07 2025-08-07 Sap Se Mobile device interface generator
US20140203999A1 (en) * 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method and apparatus for arranging a plurality of icons on a screen
US10963209B2 (en) 2025-08-07 2025-08-07 Samsung Electronics Co., Ltd. Method and apparatus for arranging a plurality of icons on a screen
US10678225B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US11385608B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Big data in process control systems
US10649449B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10649424B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10386827B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics platform
US10866952B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US10037303B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10223327B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10311015B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed big data in a process control system
US11169651B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for controlling a process plant with location aware mobile devices
US10649413B2 (en) * 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method for initiating or resuming a mobile control session in a process plant
US10691281B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for controlling a process plant with location aware mobile control devices
US10031490B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Mobile analysis of physical phenomena in a process plant
US20140277618A1 (en) * 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method for initiating or resuming a mobile control session in a process plant
US10133243B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for seamless state transfer between user interface devices in a mobile control room
US10152031B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Generating checklists in a process control environment
US10671028B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for managing a work flow in a process plant
US11112925B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Supervisor engine for process control
US10551799B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for determining the position of a mobile control device in a process plant
US10324423B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for controlling a process plant with location aware mobile control devices
US10031489B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for seamless state transfer between user interface devices in a mobile control room
US9503527B1 (en) * 2025-08-07 2025-08-07 Cisco Technology, Inc. Personalized phone registration based on virtual desktop infrastructure
US10649412B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method and apparatus for seamless state transfer between user interface devices in a mobile control room
US10296668B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data modeling studio
US11573672B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Method for initiating or resuming a mobile control session in a process plant
US20160357616A1 (en) * 2025-08-07 2025-08-07 Beijing Zhigu Rui Tuo Tech Co., Ltd Application management method and application management apparatus
US9355081B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. Transforming HTML forms into mobile native forms
US20150121193A1 (en) * 2025-08-07 2025-08-07 Vmware, Inc. User interface virtualization for web applications
US9772986B2 (en) 2025-08-07 2025-08-07 Vmware, Inc. Transforming HTML forms into mobile native forms
US10621276B2 (en) * 2025-08-07 2025-08-07 Wmware, Inc. User interface virtualization for web applications
US10230844B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US10037542B2 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Automated teller machine (ATM) interface
US20150131794A1 (en) * 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US10306060B1 (en) * 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US12008596B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Banking interface
US10242342B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Vehicle interface
US11455600B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Mobile device interface
US11868963B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Mobile device interface
US11316976B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US11729316B1 (en) * 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US10832274B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Automated teller machine (ATM) interface
US10853765B1 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Vehicle interface
US10021247B2 (en) * 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Call center interface
US9864972B2 (en) 2025-08-07 2025-08-07 Wells Fargo Bank, N.A. Vehicle interface
US11733827B2 (en) 2025-08-07 2025-08-07 Groupon, Inc. Learning user interface
US11543934B2 (en) 2025-08-07 2025-08-07 Groupon, Inc. Learning user interface
US11868584B2 (en) 2025-08-07 2025-08-07 Groupon, Inc. Learning user interface
US10656627B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Managing big data in process control systems
US9665314B2 (en) * 2025-08-07 2025-08-07 Canon Kabushiki Kaisha Methods and systems for managing a print-setting user interface
US20150286451A1 (en) * 2025-08-07 2025-08-07 Canon Kabushiki Kaisha Methods and systems for managing a print-setting user interface
US20150355855A1 (en) * 2025-08-07 2025-08-07 Grandios Technologies, Llc Storage management system
US9619159B2 (en) * 2025-08-07 2025-08-07 Grandios Technologies, Llc Storage management system
US10909137B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US10168691B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Data pipeline for process control system analytics
US10282676B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Automatic signal processing-based learning in a process plant
US20160343350A1 (en) * 2025-08-07 2025-08-07 Microsoft Technology Licensing, Llc Gesture for task transfer
US10102824B2 (en) * 2025-08-07 2025-08-07 Microsoft Technology Licensing, Llc Gesture for task transfer
US11886155B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10318320B1 (en) * 2025-08-07 2025-08-07 Amazon Technologies, Inc. Virtual desktop access using device-native user interfaces
US10503483B2 (en) 2025-08-07 2025-08-07 Fisher-Rosemount Systems, Inc. Rule builder in a process control network
US20220413633A1 (en) * 2025-08-07 2025-08-07 Apple Inc. Remote capacitive interface
US12242308B2 (en) * 2025-08-07 2025-08-07 Apple Inc. Remote capacitive interface

Similar Documents

Publication Publication Date Title
US20120226985A1 (en) Hosted virtual desktop dynamic configuration based on end point characteristics
KR101534569B1 (en) Application window position and size control in (multi-fold) multi-display devices
CN104699378B (en) Information browsing method and system in more people's chats
AU2017437992B2 (en) Managing a plurality of free windows in drop-down menu of notification bar
JP6588017B2 (en) Seamless call transition
US20180123986A1 (en) Notification of a Communication Session in a Different User Experience
KR20140037673A (en) Apparatas and method for changing a connection state of network in an electronic device
US20150082184A1 (en) Method of managing control right, client device therefor, and master device therefor
KR20130108745A (en) Method for generating folder and an electronic device thereof
CN112114761A (en) Wireless screen projection control method and device, terminal equipment and readable storage medium
JP6405384B2 (en) Method, apparatus and recording medium for interworking with external terminal
EP3472699B1 (en) Method and electronic device for managing functionality of applications
EP3131007B1 (en) Simulated desktop building method and related device
US20110196520A1 (en) Systems and methods for application sound management
US20190045654A1 (en) Server having a dual-mode serial bus port enabling selective access to a baseboard management controller
EP2888661B1 (en) Re-use of binaries for multiple user accounts
EP3566141A2 (en) Integrated application issue detection and correction control
EP3699731B1 (en) Method and device for calling input method, and server and terminal
US20150143261A1 (en) Information processing terminal, information processing method, and information processing system
US20150077635A1 (en) Method for outputting multiple multimedia tracks along multiple processing paths from a portable electronic device
EP3314408B1 (en) Computing system and computer-implemented method for performing management operations on different versions of a service
EP3649535B1 (en) Portal to an external display
KR20110100988A (en) User interface providing method, terminal and system using widget function
EP3353647B1 (en) External process user interface isolation and monitoring
CN105763794B (en) Camera spinning solution and camerahead rotating device

Legal Events

Date Code Title Description
AS Assignment

Owner name: CISCO TECHNOLOGY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHERVETS, STEVEN;FRIEDL, STEPHAN EDWARD;WESSELMAN, THOMAS MARTIN;REEL/FRAME:025887/0545

Effective date: 20110301

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

五指毛桃有什么作用 711是什么星座 卵泡刺激素高说明什么 jerry英文名什么意思 甲功七项挂什么科
比热容是什么 夏天喝什么好 红馆是什么地方 9月13日是什么日子 utc是什么时间
二个月不来月经是什么原因 父母有刑是什么意思 为什么牛肝便宜没人吃 嘴唇上长水泡是什么原因 眼睛干涩疲劳用什么眼药水
什么叫阴虚什么叫阳虚 恩裳是什么档次的衣服 小肚子是什么部位 什么数码相机好 甲减有什么症状
淋球菌培养是检查什么hcv8jop0ns2r.cn 经常嗓子疼是什么原因hcv8jop5ns9r.cn 骨折是什么意思gangsutong.com 照影是什么意思hcv9jop3ns8r.cn 孩子老打嗝是什么原因hcv8jop1ns4r.cn
口腔经常溃疡是什么原因hcv9jop3ns1r.cn cea是什么意思hcv9jop8ns2r.cn 喝咖啡要注意什么hcv8jop1ns8r.cn 孕早期不能吃什么食物luyiluode.com 青海有什么湖imcecn.com
女人梦见自己掉牙齿是什么征兆hcv8jop9ns1r.cn 免疫力差吃什么可以增强抵抗力hcv8jop8ns1r.cn 七点半是什么时辰hcv9jop6ns5r.cn 什么时候闰五月hcv9jop0ns4r.cn 经常便秘吃什么调理hcv8jop9ns1r.cn
鸡咳嗽吃什么药hcv7jop9ns2r.cn 阅读是什么意思weuuu.com 手脚发麻吃什么药hcv8jop0ns2r.cn 五根手指叫什么hcv8jop4ns3r.cn 跌倒摔伤用什么药hcv9jop5ns1r.cn
百度