发布信息

远程桌面处理方法以及系统与流程 专利技术说明

作者:admin      2023-06-29 21:35:18     238



计算;推算;计数设备的制造及其应用技术1.本说明书实施例涉及计算机技术领域,特别涉及一种远程桌面处理方法。背景技术:2.随着云计算快速发展,用户可以将自己的应用和数据集中在云端,远程登录云桌面进行学习,办公,游戏等等,打破了传统的电脑使用方式,用户对云上办公或者远程办公的认同感越来越强。3.但是,目前在用户登录云桌面时,有可能会发生一些用户进程因为用户数据访问失败而产生的错误,因此,亟需一种远程桌面处理方案来减少云桌面的错误。技术实现要素:4.有鉴于此,本说明书实施例提供了一种远程桌面处理方法。本说明书一个或者多个实施例同时涉及一种远程桌面处理系统,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。5.根据本说明书实施例的第一方面,提供了一种远程桌面处理方法,包括:响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程;响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,所述已登录消息用于表示所述用户已登录;在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞。6.根据本说明书实施例的第二方面,提供了一种远程桌面处理系统,包括:客户端和应用了如本说明书任意实施例所述远程桌面处理方法的服务端;所述客户端,被配置为向所述服务端发送用户登录云桌面的登录请求。7.根据本说明书实施例的第三方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述远程桌面处理方法的步骤。8.根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述远程桌面处理方法的步骤。9.根据本说明书实施例的第五方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述远程桌面处理方法的步骤。10.本说明书一个实施例实现了远程桌面处理方法,该方法针对从收到用户登录请求到完成登录之间有时延,导致一些用户进程因为用户数据访问失败而产生错误的问题,响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞,也即在收到用户完成登录的消息后,处理如用户配置管理等一些用户数据的远程挂载以及其他的准备工作,然后,再对用户进程放行,由于这时用户进程可以正常访问用户数据,能够保证用户的登录流程正常进行,保证用户进程的正确执行,避免远程桌面出现错误,提高用户体验。附图说明11.图1a是本说明书一个实施例提供的一种远程桌面处理方法的应用场景示意图;12.图1b是本说明书另一个实施例提供的一种远程桌面处理方法的应用场景示意图;13.图2是本说明书一个实施例提供的一种远程桌面处理方法的流程图;14.图3是本说明书一个实施例提供的一种远程桌面处理方法的处理过程流程图;15.图4是本说明书一个实施例提供的一种远程桌面处理装置的结构示意图;16.图5是本说明书一个实施例提供的一种远程桌面处理系统的结构示意图;17.图6是本说明书一个实施例提供的一种计算设备的结构框图。具体实施方式18.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。19.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。20.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。21.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。22.upm(user profi le management,用户配置文件管理),upm的目的是将用户配置文件集中管理,用户登录时将用户配置文件挂载到vda(vi rtua l digita l ass i stant,虚拟数字助理),注销时将用户配置文件再拷贝到存储,优化用户体验。例如,云服务器的操作系统可在用户第一次登录时创建用户配置文件。在后续登录时,再加载用户的配置文件,然后其他系统组件根据配置文件中的信息配置用户环境。23.sess ion(会话),是服务端存储的一个对象,用来存储访问该服务端的客户端的用户信息(也可以存储其他信息),从而保持用户会话状态。24.用户进程,是由用户创建的运行在用户态下的进程。用户登录远程桌面后,远程桌面上运行的,除了系统服务、驱动程序等系统进程以外,其他应用程序(如社交软件、浏览器、开发软件、设计软件、游戏等)一般都是用户进程。25.随着云计算快速发展,用户可以将自己的应用和数据集中在云端,远程登录云桌面进行学习,办公,游戏等等,打破了传统的电脑使用方式,用户对云上办公或者远程办公的认同感越来越强。在用户登录云桌面时,系统会将用户配置文件管理的一些用户数据,如开始菜单、任务栏图标展示,浏览器书签和历史记录,应用的初始化设置、云桌面上的文件等相关用户数据,挂载到云桌面。但是,从收到用户登录请求到完成登录之间有时延,导致一些用户进程因为用户数据访问失败而产生错误。26.为了解决上述问题,本说明书实施例提供了远程桌面处理方法,该方法响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞,也即在收到用户完成登录的消息后,处理用户配置管理的一些用户数据的远程挂载以及其他的准备工作,然后,再对用户进程放行,由于这时用户进程可以正常访问用户数据,从而能够保证用户的登录流程正常进行,保证用户进程的正确执行,避免远程桌面出现错误,提高用户体验。27.需要说明的是,本说明书所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。28.在本说明书中,提供了一种远程桌面处理方法,本说明书同时涉及一种远程桌面处理装置,一种远程桌面处理系统,一种计算设备,一种计算机可读存储介质以及一种计算机程序,在下面的实施例中逐一进行详细说明。29.参见图1a,图1a示出了根据本说明书一个实施例提供的一种远程桌面处理方法的应用场景示意图。如图1a所示,该应用场景中包括:客户端100以及服务端200。在云桌面应用场景中,用户使用客户端100与服务端200进行交互,使客户端100接收服务端200发送的云桌面并显示云桌面的图形用户界面,从而用户可以使用客户端100登录该云桌面,使用该云桌面来进行远程办公,学习,游戏等等。具体地,根据本说明书实施例提供的方法,服务端200响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,同时,云桌面的用户登录程序执行相应的登录流程对用户登录进行处理,并在用户登录到会话中的情况下,返回表示用户已登录的已登录消息;相应地,服务端200响应于所述已登录消息,将所述用户的用户数据挂载到所述远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞。由于这时用户进程可以正常访问用户数据,因此,能够保证用户的登录流程正常进行,保证用户进程的正确执行,避免云桌面出现错误,提高用户体验。30.参见图1b,图1b示出了根据本说明书另一个实施例提供的一种远程桌面处理方法的应用场景示意图。如图1b所示,在一些云桌面应用场景中,用户使用客户端100向云管理端300发送用户登录云桌面的登录请求。因此,在这些应用场景中还包括:云管理端300。云管理端300被配置为管理所述用户的用户数据的存储位置,接收所述客户端发送的所述登录请求,从一个或多个所述服务端中查找出所述登录请求对应的服务端,将所述用户的用户数据的存储位置以及所述登录请求发送给所述登录请求对应的服务端。相应地,所述服务端200,还被配置为响应于从所述云管理端接收到所述登录请求,根据所述登录请求与所述客户端建立连接,并执行针对所述用户的用户登录程序。在用户登录程序执行完针对所述用户的登录流程,使所述用户成功登录后,返回已登录消息。用户可以使用该云桌面来进行远程办公,学习,游戏等等。服务端200在接收到登录请求后,先阻塞用户进程,在接收到已登录消息后加载用户数据,加载用户数据成功后,再放行用户进程,具体实施方式与上面图1a所示应用场景的处理过程类似,在此不再详细赘述。31.在图1b所示应用场景中,云管理端300可以根据应用场景需要设置一些条件和/或策略来查找客户端的登录请求对应的云桌面的服务端200,向服务端200下发登录请求以及需要挂载的用户数据所在的存储位置。例如,该存储位置可以是由云管理端300管理的存储磁盘。另外,在服务端200与客户端100建连后,服务端200中云桌面的管理模块可以按需或持续地向云管理端上报连接信息,从而由云管理端提供保障能力。由于服务端200是由云管理端300为客户端弹性调度的,并且用户数据与云桌面分离,因此,用户数据挂载到任意服务端可用的云桌面即可完成登录,不受单桌面资源限制,服务更加稳定,用户体验更好。32.其中,客户端100与服务端200之间,客户端100与云管理端300之间,云管理端300与服务端200之间,均通过网络建立连接。网络为这些主体之间提供了通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。客户端100所传输的数据可能需要经过编码、转码、压缩等处理之后才发布至服务端200。33.客户端100上可以运行了浏览器、app(app l icat ion,应用程序)、或网页应用如h5(hypertext markup language5,超文本标记语言第5版)应用、或轻应用(也被称为小程序,一种轻量级应用程序)或云应用等,客户端100可以基于服务端提供的相应服务的软件开发工具包(sdk,software deve lopment kit),如基于实时通信(rtc,rea l time commun icat ion)sdk开发获得等。客户端100可以部署在电子设备中,需要依赖设备运行或者设备中的某些app而运行等。电子设备例如可以具有显示屏并支持信息浏览等,如可以是个人移动终端如手机、平板电脑、个人计算机等。在电子设备中通常还可以配置各种其它类应用,例如人机对话类应用、模型训练类应用、文本处理类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。34.服务端200和管理端300可以包括提供各种服务的服务器,例如为多个客户端提供通信服务的服务器,又如为客户端上使用的模型提供支持的用于后台训练的服务器,又如对客户端发送的数据进行处理的服务器等。需要说明的是,服务端200和管理端300可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(cdn,content de l ivery network)以及大数据和人工智能平台等基础云计算服务的云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。35.值得说明的是,本说明书实施例提供的远程桌面处理方法一般由服务端执行,但是,在一些实施例中,客户端也可以与服务端具有相似的功能,从而执行本说明书实施例所提供的远程桌面处理方法。例如,用户可以使用运行在个人设备上的客户端向运行在另一个人设备上的客户端发出登录远程桌面的登录请求,根据本说明书实施例提供的方法,运行在另一个人设备上的客户端可以响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞。36.参见图2,图2示出了本说明书一个实施例提供的一种远程桌面处理方法的流程图,具体包括以下步骤:37.步骤202:响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程。38.远程桌面,是一种远程操作电脑的模式,用于可视化访问远程计算机的桌面环境。例如,用户可以在客户端对远程计算机服务器进行管理。远程桌面,可以是云桌面或远程的个人桌面。云桌面,是指在云网络中,云服务器的桌面以视频流的方式,推流到客户端,客户端上的键鼠操作能被该流化的桌面响应,这种云服务器上的桌面被称为云桌面。个人桌面,是指个人设备的桌面。根据本说明书实施例提供的方法,一个客户端的个人桌面可以以视频流的方式,推流到其他客户端,所述其他客户端上的键鼠操作能被该流化的个人桌面响应。桌面,是指操作系统主屏幕的图形用户界面。39.本说明书实施例提供的方法中,确定用户对应的用户进程的实施方式不限,可以利用该用户的会话的会话标识、用户身份信息中任一种或多种关键信息来确定用户进程。例如,操作系统在接收到登录请求时,会按照某种方式,如按自然数顺序,为用户分配一个未被占用的sess ion id(会话标识)。在该用户的用户进程被创建时,用户进程被创建的信息会被记录到该用户的会话中,因此,可以利用该用户的会话标识来确定该用户的会话,进而监测该用户的会话中用户进程的创建,进而阻塞该用户进程。例如,假设操作系统为该用户的会话分配自然数2,那么该用户在该操作系统上对应的会话标识就是sess ion 2,监测标记为sess ion2的会话中用户进程的创建,当监测到用户进程的创建时,则可以阻塞该用户进程。40.阻塞用户进程,是指使用户进程无法继续执行,处于暂停状态。需要说明的是,在进行阻塞用户进程的处理时,可以通过阻止用户进程的创建来实现阻塞,也可以在用户进程被创建后,通过阻止用户进程的执行来实现阻塞,只要达到使用户进程暂时无法执行的目的即可,本说明书实施例提供的方法对此并不进行限制。41.步骤204:响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,所述已登录消息用于表示所述用户已登录。42.所述已登录消息,是用于表示所述用户已登录的消息。例如,操作系统中用于管理用户登录和退出的用户登录程序,会在收到用户的登录请求后处理登录流程,在用户成功登录的情况下,发出所述已登录消息,如在一些操作系统中,所述已登录消息命名为“sess ion logon”消息。例如,一些操作系统中,已登录消息可以是自定义的类(如用于通知会话更改原因的类)中的值,当用户登录时,会发出所述已登录消息来通知系统服务,完成会话(sess ion)的建立。43.由于在收到所述已登录消息的情况下,说明用户已成功登录,此时则可以处理upm远程挂载和一系列准备工作,再对用户进程放行,使用户进程能够正常访问upm数据,保证用户的登录流程正常进行。因此,本说明书实施例提供的远程桌面处理方法,可以响应于接收到所述已登录消息,将所述用户的用户数据挂载到所述远程桌面。44.所述用户数据,主要包括用户在使用远程桌面时,远程桌面需具有的一些个人数据,例如,可以包括个人存档文件、应用程序的配置等等。所述用户数据在挂载到远程桌面之前,其存放位置不限,例如,所述用户数据可以存放在云端的共享存储或云服务器本地。当需要将用户数据挂载到所述远程桌面时,可以将用户数据所在的存储位置挂载到远程桌面,使远程桌面能够访问到该存储位置中的用户数据。45.步骤206:在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞。46.取消对所述用户进程的阻塞,是指放行用户进程,使用户进程继续执行,处于执行状态。需要说明的是,取消对所述用户进程的阻塞,可以通过放行对用户进程的创建来实现,也可以通过放行用户进程的执行来实现,具体根据阻塞用户进程的具体方式来采取对应的手段,本说明书实施例提供的方法对此并不进行限制。47.例如,处于阻塞状态的用户进程通常可以排成一个队列,或者,根据某些状态的不同而将处于阻塞状态的用户进程排成多个队列,队列中的用户进程由用户身份信息来标识。因此,在所述用户的用户数据成功挂载到所述远程桌面的情况下,可以从这些队列中,根据所述用户的用户身份信息查找到对应的用户进程来进行放行。48.该方法针对从收到用户登录请求到完成登录之间有时延,导致一些用户进程因为用户数据访问失败而产生错误的问题,响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞,也即在收到用户完成登录的消息后,处理如用户配置管理等一些用户数据的远程挂载以及其他的准备工作,然后,再对用户进程放行,由于这时用户进程可以正常访问用户数据,能够保证用户的登录流程正常进行,保证用户进程的正确执行,避免远程桌面出现错误,提高用户体验。49.需要说明的是,由于操作系统中的用户登录程序,是系统的内部程序,一般不公开接口来让第三方自定义服务来与用户登录程序进行交互,第三方服务难以获得用户登录程序内部的通信消息,因此,本说明书一个或多个实施例提供的方法绕过对用户登录程序内部登录流程的修改,而借助于公开的通信消息,如用户的登录请求、用户的会话的会话标识等信息来实现对用户进程的阻塞。具体地,本说明书一个或多个实施例中,所述响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,包括:50.响应于接收到用户登录远程桌面的登录请求,获取操作系统为所述用户分配的会话标识;51.利用所述会话标识,监测所述会话标识对应的会话中用户进程的创建;52.响应于监测到所述会话中用户进程的创建,阻塞所述用户进程。53.例如,可以在内核态运行的用户配置管理驱动程序(也可以称为upm驱动程序)中注册回调函数,当用户进程创建时候会被upm驱动程序检测到,利用内核的一些等待事件的方法将用户进程阻塞,直到用户数据加载完成放行用户进程。回调函数,是指通过函数指针调用的函数。回调函数不由该函数的实现方直接调用,而是在特定的事件或条件发生时,由另外的一方调用,用于对该事件或条件进行响应。在本实施例中,用户配置管理服务(也可以称为upm服务)响应于接收到用户登录远程桌面的登录请求,获取操作系统为所述用户分配的会话标识,并将该会话标识发送给upm驱动,而upm驱动程序中内置了回调函数,该回调函数利用该会话标识,监测用户进程的创建,当监测到用户进程的创建时,利用内核的等待事件执行对用户进程的阻塞。其中,upm服务是在远程桌面所在操作系统中拉起的系统服务,该服务中可以设置网络通信模块和驱动通信模块来交互消息。另外,运行在内核态中的upm驱动可以设置为upm服务的一部分,也可以独立设置,本说明书实施例对此并不进行限定。54.在该实施例中,通过获取用户的会话标识来监测所述会话标识对应的会话中用户进程的创建,从而能够阻塞会话拉起的用户进程,采用更加合理的时机来加载用户数据,在实现减少远程桌面的错误的目的的同时,无需对操作系统内部程序的执行逻辑进行修改,应用更加方便快捷,提高系统整体的持续可用性。55.与上述实施例的实现原理类似的,本说明书一个或多个实施例提供的方法绕过对用户登录程序内部登录流程的修改,而借助于操作系统内部用户登录程序发出的已登录消息来选择用户数据的挂载时机。而且,考虑到可能远程桌面同时会有多个用户同时存在,本实施例还可以获取用户身份信息来确定要获取哪些用户数据,从而支持远程桌面的多用户场景。具体地,本说明书一个或多个实施例中,本说明书一个或多个实施例中,所述响应于接收到已登录消息,将所述用户的用户数据挂载到远程桌面,包括:56.响应于接收到已登录消息,获取所述已登录消息对应的用户身份信息;57.利用所述用户身份信息,从所述远程桌面对应的一个或多个用户的用户数据中,查找出所述用户身份信息对应的用户数据,将所述用户身份信息对应的用户数据挂载到远程桌面。58.所述用户身份信息,是用户登录远程桌面的登录请求一起下发的,例如用户名等,用于表示用户身份的用户信息。相应地,在所述已登录消息中也会携带该用户身份信息,以表示当前登录的用户。在远程桌面支持多用户的场景下,远程桌面同时可能会有多个用户同时存在,获取用户身份信息可以确定要挂载哪些用户数据。59.例如,可以在用户配置管理服务(也可以称为upm服务)中注册回调函数,该回调函数监测到已登录消息时,会将对应的用户身份信息上报给远程桌面的管理模块,使管理模块查找出对应的用户数据的存储位置返回给upm服务,由upm服务执行用户数据的挂载。另外,upm服务还可以进行远程桌面状态信息的同步等处理,当这些准备工作完成,达到用户数据完成挂载的状态,进而放行对应的用户进程。例如,在基于云管理端为客户端调度云桌面服务端的应用场景中,在客户端与服务端建立连接后,服务端中云桌面的管理模块可以按需或持续地向云管理端上报连接信息,从而由云管理端提供保障能力。该服务端中云桌面的管理模块可以从云管理端获取用户数据的存储位置。云管理端可以用于管理整个云端的用户的用户数据。需要说明的是,一个服务端可以为多个用户提供云桌面的服务,因此,服务端中云桌面的管理模块可以保存由多个用户的用户数据的存储位置信息。60.在该实施例中,通过获取已登录消息来获取用户身份信息,查找出对应的用户数据,并基于已登录消息的接收时机来加载用户数据,从而实现减少远程桌面的错误的目的的同时,无需对操作系统内部程序的执行逻辑进行修改,应用更加方便快捷,提高系统整体的持续可用性,支持多用户场景。61.另外,在支持多用户的场景下,本说明书一个或多个实施例中,考虑到已登录消息会携带用户身份信息,而本说明书实施例提供的方法需要依据接收到已登录消息来对用户进程放行,因此,在阻塞用户进程时,可以将阻塞的用户进程与用户身份信息进行对应,从而在接收到已登录消息时,可以直接根据其携带的用户身份信息,从被阻塞的多个用户进程中,查找出对应的用户进程进行放行。具体地,所述在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞,包括:62.获取所述已登录消息对应的用户身份信息;63.在所述用户的用户数据成功挂载到所述远程桌面的情况下,利用所述用户身份信息,从已阻塞的一个或多个用户进程中,取消对所述用户身份信息对应的用户进程的阻塞。64.例如,upm驱动在阻塞用户进程时,会为用户进程设置一个与用户身份信息对应的自定义标志,表示该用户进程已阻塞。当upm服务将用户数据挂载成功后,会根据用户身份信息修改对应的标志,表示该用户对应的用户数据已完成加载。被修改的标志,可以视为用户配置管理服务向用户配置管理驱动发送的完成挂载消息。这样,upm驱动会一直轮询该自定义标志,当监测到该自定义标志变更时就会放行对应的用户进程。65.下面,对结合了上述多个实施例中的远程桌面处理方法的处理流程进行详细说明。在该实施例中,所述响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程,包括:66.用户配置管理服务响应于接收到用户登录远程桌面的登录请求,获取操作系统为所述用户分配的会话标识;67.所述用户配置管理服务将所述会话标识发送给运行在内核态下的用户配置管理驱动;68.所述用户配置管理驱动利用所述会话标识,监测所述会话标识对应的会话对用户进程的创建,响应于监测到所述会话对用户进程的创建,阻塞所述用户进程;69.所述响应于接收到已登录消息,将所述用户的用户数据挂载到远程桌面,包括:70.所述用户配置管理服务响应于从用户登录程序接收到已登录消息,将所述用户的用户数据挂载到远程桌面;71.所述在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞,包括:72.在所述用户的用户数据成功挂载到所述远程桌面的情况下,所述用户配置管理服务向所述用户配置管理驱动发送完成挂载消息;73.所述用户配置管理驱动根据所述完成挂载消息对应的用户身份信息,从已阻塞的一个或多个用户进程中,查找出所述用户身份信息对应的用户进程,取消对所述用户身份信息对应的用户进程的阻塞。74.在上述实施例中,用户配置管理服务与运行在内核态下的用户配置管理驱动相互配合,在收到登录请求时,阻塞将要拉起的用户进程,在收到已登录消息后,处理upm远程挂载和一系列准备工作,再对用户进程放行,从而使用户进程能够正常访问upm数据,保证用户的登录流程正常进行。75.另外,考虑到一些应用场景中,远程桌面通过自身的管理模块来管理用户数据的存储位置,在这种情况下,本说明书一个或多个实施例中,所述方法还包括:76.所述远程桌面的管理模块响应于接收到用户登录远程桌面的登录请求,将所述登录请求发送给所述用户配置管理服务;77.所述用户配置管理服务响应于接收到已登录消息,向所述管理模块发送所述已登录消息携带的用户身份信息,使所述管理模块根据所述用户身份信息查找出所述用户的用户数据,并将所述用户数据的存储位置发送给所述用户配置管理服务。78.在上述实施例中,利用远程桌面自身的管理模块来获得用户数据的存储位置,以便根据本说明书实施例提供的方法选择的时机将用户数据的存储位置挂载到云桌面,无需对远程桌面自身的用户数据的管理方式进行修改,应用更加方便快捷,提高系统整体的持续可用性,且支持多用户场景。79.下面,结合附图3,对上述实施例应用于云桌面的处理过程进行详细说明。具体地,图3示出了本说明书上述实施例提供的远程桌面处理方法的处理过程流程图,具体包括以下步骤。80.步骤302:客户端向云桌面发送用户登录远程桌面的登录请求。81.步骤304:云桌面的管理模块向upm服务下发该登录请求。82.步骤306:upm服务响应于接收到登录请求,获取操作系统为所述用户分配的会话标识。83.步骤308:upm服务将所述会话标识发送给upm驱动。84.步骤310:upm驱动利用所述会话标识,监测所述会话标识对应的会话对用户进程的创建,响应于监测到所述会话对用户进程的创建,阻塞所述用户进程。85.相应地,云桌面的用户登录程序根据该登录请求进行登录流程的处理,在完成登录的情况下,发出已登录消息。86.步骤312:upm服务响应于从用户登录程序接收到所述用户的已登录消息,将所述用户的用户数据挂载到云桌面。87.步骤314:在所述用户的用户数据成功挂载到所述远程桌面的情况下,upm服务向upm驱动发送完成挂载消息。88.步骤316:upm驱动根据所述完成挂载消息对应的用户身份信息,从已阻塞的一个或多个用户进程中,查找出所述用户身份信息对应的用户进程,放行对应的用户进程,使用户进程拉起。89.步骤318:云桌面向客户端返回登录成功的消息。90.应用本实施例的方案,用户配置管理服务与运行在内核态下的用户配置管理驱动相互配合,在收到用户登录云桌面的登录请求时,阻塞将要拉起的用户进程,在收到已登录消息后,处理upm远程挂载和一系列准备工作,再对用户进程放行,从而使用户进程能够正常访问upm数据,保证用户登录云桌面的全程正确进行,避免发生错误。91.与上述方法实施例相对应,本说明书还提供了远程桌面处理装置实施例,图4示出了本说明书一个实施例提供的一种远程桌面处理装置的结构示意图。如图4所示,该装置包括:92.进程阻塞模块420,可以被配置为响应于接收到用户登录远程桌面的登录请求,确定所述用户对应的用户进程并阻塞所述用户进程;93.数据挂载模块440,可以被配置为响应于接收到已登录消息,将所述用户的用户数据挂载到所述远程桌面,所述已登录消息用于表示所述用户已登录;94.进程放行模块460,可以被配置为在所述用户的用户数据成功挂载到所述远程桌面的情况下,取消对所述用户进程的阻塞。95.本说明书一个或多个实施例中,所述进程阻塞模块,包括:96.会话标识获取子模块,被配置为响应于接收到用户登录远程桌面的登录请求,获取操作系统为所述用户分配的会话标识;97.进程创建监测子模块,被配置为利用所述会话标识,监测所述会话标识对应的会话中用户进程的创建;98.阻塞执行子模块,被配置为响应于监测到所述会话中用户进程的创建,阻塞所述用户进程。99.本说明书一个或多个实施例中,所述数据挂载模块,包括:100.身份获取子模块,被配置为响应于接收到已登录消息,获取所述已登录消息对应的用户身份信息;101.挂载执行子模块,被配置为利用所述用户身份信息,从所述远程桌面对应的一个或多个用户的用户数据中,查找出所述用户身份信息对应的用户数据,将所述用户身份信息对应的用户数据挂载到远程桌面。102.本说明书一个或多个实施例中,所述进程放行模块,包括:103.身份获取子模块,被配置为获取所述已登录消息对应的用户身份信息;104.放行执行子模块,被配置为在所述用户的用户数据成功挂载到所述远程桌面的情况下,利用所述用户身份信息,从已阻塞的一个或多个用户进程中,取消所述用户身份信息对应的用户进程的阻塞。105.本说明书一个或多个实施例中,所述进程阻塞模块,包括:106.upm服务子模块,被配置为响应于接收到用户登录远程桌面的登录请求,获取操作系统为所述用户分配的会话标识,将所述会话标识发送给运行在内核态下的upm驱动子模块;107.upm驱动子模块,被配置为利用所述会话标识,监测所述会话标识对应的会话对用户进程的创建,响应于监测到所述会话对用户进程的创建,阻塞所述用户进程。108.本说明书一个或多个实施例中,所述upm服务子模块,还被配置为响应于从用户登录程序接收到已登录消息,将所述用户的用户数据挂载到远程桌面,在所述用户的用户数据成功挂载到所述远程桌面的情况下,向所述upm驱动子模块发送完成挂载消息。所述upm驱动子模块,还被配置为根据所述完成挂载消息对应的用户身份信息,从已阻塞的一个或多个用户进程中,查找出所述用户身份信息对应的用户进程,取消对所述用户身份信息对应的用户进程的阻塞。109.本说明书一个或多个实施例中,所述装置还包括:管理模块,被配置为响应于接收到用户登录远程桌面的登录请求,将所述登录请求发送给所述upm服务子模块。所述upm服务子模块,还被配置为响应于接收到已登录消息,向所述管理模块发送所述已登录消息携带的用户身份信息,使所述管理模块根据所述用户身份信息查找出所述用户的用户数据。110.上述为本实施例的一种远程桌面处理装置的示意性方案。需要说明的是,该远程桌面处理装置的技术方案与上述的远程桌面处理方法的技术方案属于同一构思,远程桌面处理装置的技术方案未详细描述的细节内容,均可以参见上述远程桌面处理方法的技术方案的描述。111.与上述方法实施例相对应,本说明书还提供了远程桌面处理系统实施例,图5示出了本说明书一个实施例提供的一种远程桌面处理系统的结构示意图。如图5所示,该系统包括:客户端520和应用了如本说明书任意实施例所述远程桌面处理方法的服务端540。112.其中,所述客户端520,被配置为向所述服务端发送用户登录云桌面的登录请求。113.本说明书一个或多个实施例中,所述远程桌面处理系统还可以包括:云管理端,被配置为管理所述用户的用户数据的存储位置,接收所述客户端发送的所述登录请求,从一个或多个所述服务端中查找出所述登录请求对应的服务端,将所述用户的用户数据的存储位置以及所述登录请求发送给所述登录请求对应的服务端。114.其中,所述服务端540,还被配置为响应于从所述云管理端接收到所述登录请求,根据所述登录请求与所述客户端建立连接,并执行针对所述用户的用户登录程序。115.例如,云管理端可以根据应用场景需要设置一些条件和/或策略来查找客户端的登录请求对应的云桌面的服务端,向服务端下发登录请求以及需要挂载的用户数据所在的存储位置。例如,该存储位置可以是由云管理端管理的存储磁盘。另外,在服务端与客户端建连后,服务端中云桌面的管理模块可以按需或持续地向云管理端上报连接信息,从而由云管理端提供保障能力。由于服务端是由云管理端为客户端弹性调度的,并且用户数据与云桌面分离,因此,用户数据挂载到任意服务端可用的云桌面即可完成登录,不受单桌面资源限制,服务更加稳定,用户体验更好。116.上述为本实施例的一种远程桌面处理系统的示意性方案。需要说明的是,该远程桌面处理系统的技术方案与上述的远程桌面处理方法的技术方案属于同一构思,远程桌面处理系统的技术方案未详细描述的细节内容,均可以参见上述远程桌面处理方法的技术方案的描述。117.图6示出了根据本说明书一个实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。118.计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(pstn,pub l ic switched te lephone network)、局域网(lan,loca l area network)、广域网(wan,wide area network)、个域网(pan,persona l area network)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic,network interface contro l ler))中的一个或多个,诸如i eee802.11无线局域网(wlan,wi re less loca l area network)无线接口、全球微波互联接入(wi-max,wor ldwide i nteroperabi l ity for microwave access)接口、以太网接口、通用串行总线(usb,un iversa l ser ia l bus)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc,near fie ld commun icat ion)。119.在本说明书的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。120.计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(pc,persona l computer)的静止计算设备。计算设备600还可以是移动式或静止式的服务器。121.其中,处理器620用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述远程桌面处理方法的步骤。122.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的远程桌面处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述远程桌面处理方法的技术方案的描述。123.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述远程桌面处理方法的步骤。124.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的远程桌面处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述远程桌面处理方法的技术方案的描述。125.本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述远程桌面处理方法的步骤。126.上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的远程桌面处理方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述远程桌面处理方法的技术方案的描述。127.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。128.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-on ly memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。129.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。130.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。131.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部