本公开涉及计算机领域,尤其涉及一种多席位显示方法、计算机系统、电子设备及可读存储介质。
背景技术:
1、多席位是一种允许linux系统同时存在多个用户运行的技术,linux在其整个生命过程中本质上是一个多用户系统,但通常有一个图形会话,也可以使用远程访问协议创建多个图形会话。但是,在多席位中,可以把多个显示器、输入设备和外围设备连接到一个系统上,并对它们进行分区,这样每个用户都可以使用自己的设备,所有用户之间分享一台计算机的计算资源。例如,在车载控制系统或者显示监控系统中,每一个座位上可以设置一套显示器和输入设备,所有的资源都连接到一台linux主机系统,每一个用户可以同时操作自己前面的显示器和输入设备。
2、目前,无论是x11还是wayland显示环境,要支持多席位技术,都是通过多显卡来支持,即通过登录组件在不同的显卡和输入设备上初始化不同的席位,然后在每一个席位上初始化一个显示服务器,通过多个显示服务器来实现多席位显示控制。但是,上述多席位技术,每一个席位都需要一个显卡,导致成本非常高。
技术实现思路
1、本公开提供一种多席位显示方法、计算机系统、电子设备及可读存储介质,以至少解决相关技术中每一个席位都需要一个显卡,导致成本非常高的问题。
2、根据本公开实施例的第一方面,提供一种多席位显示方法,应用于计算机系统,计算机系统包括:主机和多个席位设备,主机包括一个显卡、一个主服务器和多个显示服务器,每个席位设备包括配套的显示器和输入设备,多个席位设备与多个显示服务器一一对应,每个席位设备的显示器通过显卡上不同的端口与显卡相连,每个显示服务器属于主服务器的独立模块,每个席位通过对应的席位设备与主机交互,其中,主机响应于接收到任一个席位对应的输入设备输入的登录请求,初始化主服务器和多个席位对应的显示服务器;对于预定席位对应的显示服务器中的每个显示服务器,显示服务器基于对应席位运行的应用程序,生成对应内容的内容窗口,其中,预定席位为多个席位设备中同时被使用的席位设备对应的席位;主服务器将每个显示服务器生成的内容窗口合成为合成窗口图像,并将合成窗口图像中与每个显示服务器对应的部分,显示在对应的显示器,其中,合成窗口图像的尺寸等于预定席位对应的显示器的总显示尺寸。
3、可选地,主服务器将合成窗口图像中与每个显示服务器对应的部分,显示在对应的显示器,包括:对于每个显示服务器,执行如下操作:主服务器获取与显示服务器对应的显示器的端口位置;将合成窗口图像中与显示服务器对应的部分,输出到显示服务器对应的显示器的端口位置上,以便将合成窗口图像中与显示服务器对应的部分,显示在显示服务器对应的显示器。
4、可选地,在显示服务器基于对应席位运行的应用程序,生成对应内容的内容窗口之前,显示服务器对应席位通过对应的输入设备选择要启动的应用程序,显示服务器启动并运行选择的应用程序。
5、可选地,在预定席位的数量为n个,且合成窗口图像的维度为x×y的情况下,合成窗口图像中与每个预定席位的显示服务器对应的部分的维度为x/n×y,其中,n、x和y为大于0的正整数。
6、可选地,每个显示服务器各自独立控制相应的席位设备。
7、可选地,显卡上的端口包括物理端口和虚拟端口,其中,虚拟端口用于显卡与远程的显示器进行远程相连。
8、根据本公开实施例的第二方面,提供一种计算机系统,计算机系统包括:主机和多个席位设备,主机包括一个显卡、一个主服务器和多个显示服务器,每个席位设备包括配套的显示器和输入设备,多个席位设备与多个显示服务器一一对应,每个席位设备的显示器通过显卡上不同的端口与显卡相连,每个显示服务器属于主服务器的独立模块,每个席位通过对应的席位设备与主机交互,其中,主机响应于接收到任一个席位对应的输入设备输入的登录请求,初始化主服务器和多个席位对应的显示服务器;对于预定席位对应的显示服务器中的每个显示服务器,显示服务器基于对应席位运行的应用程序,生成对应内容的内容窗口,其中,预定席位为多个席位设备中同时被使用的席位设备对应的席位;主服务器将每个显示服务器生成的内容窗口合成为合成窗口图像,并将合成窗口图像中与每个显示服务器对应的部分,显示在对应的显示器,其中,合成窗口图像的尺寸等于预定席位对应的显示器的总显示尺寸。
9、可选地,主服务器将合成窗口图像中与每个显示服务器对应的部分,显示在对应的显示器,包括:对于每个显示服务器,执行如下操作:主服务器获取与显示服务器对应的显示器的端口位置;将合成窗口图像中与显示服务器对应的部分,输出到显示服务器对应的显示器的端口位置上,以便将合成窗口图像中与显示服务器对应的部分,显示在显示服务器对应的显示器。
10、可选地,在显示服务器基于对应席位运行的应用程序,生成对应内容的内容窗口之前,还包括:显示服务器对应席位通过对应的输入设备选择要启动的应用程序,显示服务器启动并运行选择的应用程序。
11、可选地,在预定席位的数量为n个,且合成窗口图像的维度为x×y的情况下,合成窗口图像中与每个预定席位的显示服务器对应的部分的维度为x/n×y,其中,n、x和y为大于0的正整数。
12、可选地,每个显示服务器各自独立控制相应的席位设备。
13、可选地,显卡上的端口包括物理端口和虚拟端口,其中,虚拟端口用于显卡与远程的显示器进行远程相连。
14、根据本公开实施例的第三方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现根据本公开的多席位显示方法。
15、根据本公开实施例的第四方面,提供了一种计算机可读存储介质,当计算机可读存储介质中的指令被至少一个处理器运行时,促使至少一个处理器执行如上根据本公开的多席位显示方法。
16、根据本公开实施例的第五方面,提供了一种计算机程序产品,包括计算机指令,计算机指令被处理器执行时实现根据本公开的多席位显示方法。
17、本公开的实施例提供的技术方案至少带来以下有益效果:
18、根据本公开的多席位显示方法、计算机系统、电子设备及可读存储介质,在主服务器的基础上分设多个显示服务器,并且多个显示服务器与多个席位设备一一对应,每个显示服务器基于对应席位运行的应用程序,可以生成对应内容的内容窗口,主服务器可以将所有内容窗口合成为一个图像(即合成窗口图像),该图像的尺寸与预定席位对应的显示器的总显示尺寸相等,这样将合成窗口图像中与每个显示服务器对应的部分,显示在对应的显示器,保证填满每个显示器,使得每个显示器只显示对应席位的内容窗口,从而实现了多个显示器可以共用一个显卡且独立的显示各自对应席位的内容窗口,即实现了通过单显卡,多席位分享一个主机的功能,从而极大的控制了成本。因此,本公开解决了相关技术中每一个席位都需要一个显卡,导致成本非常高的问题。
19、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。