CN113885758B - Virtual screen generation method, computing device and storage medium - Google Patents

Virtual screen generation method, computing device and storage medium Download PDF

Info

Publication number
CN113885758B
CN113885758B CN202111489137.4A CN202111489137A CN113885758B CN 113885758 B CN113885758 B CN 113885758B CN 202111489137 A CN202111489137 A CN 202111489137A CN 113885758 B CN113885758 B CN 113885758B
Authority
CN
China
Prior art keywords
virtual
virtual screen
display
resolution
client
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.)
Active
Application number
CN202111489137.4A
Other languages
Chinese (zh)
Other versions
CN113885758A (en
Inventor
郭治军
常廉志
王有万
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.)
Uniontech Software Technology Co Ltd
Original Assignee
Uniontech Software Technology Co Ltd
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 Uniontech Software Technology Co Ltd filed Critical Uniontech Software Technology Co Ltd
Priority to CN202111489137.4A priority Critical patent/CN113885758B/en
Priority to CN202210067876.2A priority patent/CN114489421B/en
Publication of CN113885758A publication Critical patent/CN113885758A/en
Application granted granted Critical
Publication of CN113885758B publication Critical patent/CN113885758B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • 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

Landscapes

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

Abstract

The invention discloses a virtual screen generation method, a computing device and a storage medium, and the method comprises the following steps: determining whether a display device is connected to the computing device; if the display equipment is not connected, a virtual screen driver is constructed and loaded through the display server, so that a virtual desktop is created according to the virtual screen driver, and one or more application icons are drawn on the virtual desktop through the kernel to obtain a virtual screen; when a remote operation request of the client is received, the virtual screen is sent to the client so that the client operates the computing device according to the virtual screen. According to the invention, by constructing the virtual screen drive, the virtual screen comprising the virtual desktop and one or more application icons can be drawn normally, so that a remote client can also operate the computing equipment normally when the display equipment is not connected.

Description

Virtual screen generation method, computing device and storage medium
Technical Field
The present invention relates to the field of operating systems, and in particular, to a virtual screen generation method, a computing device, and a storage medium.
Background
With the development of computer and network technologies, people sometimes need to operate computers that are not at hand to complete work tasks, and in these special use environments, people need to remotely operate computers through other devices to realize certain operations on the computers.
In the prior art, in order to operate a remote computer, the computer needs to be started, and the computer is connected with a display, so that the content can be normally displayed in the display; when the computer is not connected with the display, or the display cannot work normally, and the computer does not have the related information of the display, the remote operation terminal cannot normally display the desktop and other information, so that the remote computer cannot be operated normally.
For this reason, a new virtual screen generation method is required.
Disclosure of Invention
To this end, the present invention provides a virtual screen generation method in an attempt to solve or at least alleviate the above-presented problems.
According to an aspect of the present invention, there is provided a kernel performance testing method, adapted to be executed in a computing device, the computing device being in communication connection with a client, an operating system running in the computing device, the operating system including a kernel and a display server, the method including the steps of: determining whether a display device is connected to the computing device; if the display equipment is not connected, a virtual screen driver is constructed and loaded through a display server; creating a virtual desktop according to the virtual screen drive; drawing one or more application icons on the virtual desktop through the kernel to obtain a virtual screen; when a remote operation request of the client is received, the virtual screen is sent to the client so that the client operates the computing device according to the virtual screen.
Optionally, in the method according to the present invention, determining whether a display device is connected to the computing device comprises: determining whether hardware information can be read or not through a display data interface of the kernel; and if the hardware information cannot be read, determining that the display equipment is not connected to the computing equipment.
Optionally, in the method according to the present invention, the hardware information includes a device resolution, and the constructing and loading the virtual screen driver by the display server includes the steps of: setting a virtual screen resolution through a display server; setting the virtual screen resolution as the virtual equipment resolution, and constructing virtual hardware information provided by a virtual screen driver; and constructing and loading a virtual screen driver according to the virtual hardware information.
Optionally, in the method according to the present invention, drawing the virtual desktop according to the virtual screen driver includes the steps of: and acquiring virtual hardware information driven by the virtual screen, and taking the resolution of the virtual screen as the resolution of the virtual desktop to draw the virtual desktop.
Optionally, in the method according to the present invention, the drawing one or more application icons on the virtual desktop through the kernel to obtain the virtual screen includes: determining, by the kernel, one or more applications that need to draw application icons in the virtual desktop; acquiring an icon file corresponding to each application from an installation directory of each application to obtain one or more icon files; and arranging one or more icon files in the virtual desktop according to the virtual screen resolution to draw the virtual desktop.
Optionally, in the method according to the present invention, further comprising the step of: when the virtual desktop is constructed, when the kernel determines that the computing equipment is accessed to the display equipment, the virtual screen driver is unloaded; loading a display device driver corresponding to a display device; and drawing a screen according to the hardware information driven by the display device so as to display the screen in the display device.
Optionally, in the method according to the present invention, further comprising the step of: receiving a resolution adjustment request of a client, wherein the resolution adjustment request comprises a target resolution; adjusting the virtual equipment resolution of the virtual hardware information in the virtual screen drive to a target resolution; redrawing the virtual screen using the target resolution according to the virtual screen drive, and sending the redrawn virtual screen to the client.
Optionally, in the method according to the present invention, further comprising the step of: receiving remote operation of a client based on a virtual screen; executing remote operation, and displaying the process and the result of executing the remote operation in a virtual screen; and sending the virtual screen with the process and the result of the remote operation to the client so that the client synchronously displays the process and the result of the remote operation performed by the computing equipment.
Optionally, in the method according to the present invention, further comprising the step of: and when the client is disconnected with the computing equipment and then accesses again, sending the virtual screen drawn for the client to the client.
Optionally, in the method according to the present invention, further comprising the step of: if the computing equipment is connected with the display equipment, when a remote operation request of the client is received, the screen displayed in the display equipment is sent to the client.
According to another aspect of the present invention, there is provided a computing device comprising: one or more processors; a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for performing a virtual screen generation method according to the present invention.
According to still another aspect of the present invention, there is provided a computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device, cause the computing device to perform a virtual screen generation method according to the present invention.
The virtual screen generating method in the invention is suitable for being executed in computing equipment, the computing equipment is in communication connection with a client, an operating system runs in the computing equipment, the operating system comprises a kernel and a display server, and the virtual screen generating method comprises the following steps: determining whether a display device is connected to the computing device; if the display device is not connected, a virtual screen driver is built and loaded through the display server, so that a virtual desktop is created according to the virtual screen driver, one or more application icons are drawn on the virtual desktop through the kernel to obtain a virtual screen, and when a remote operation request of the client is received, the virtual screen is sent to the client so that the client can operate the computing device according to the virtual screen. According to the invention, by constructing the virtual screen drive, the virtual screen comprising the virtual desktop and one or more application icons can be drawn normally, so that a remote client can also operate the computing equipment normally when the display equipment is not connected.
Drawings
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings, which are indicative of various ways in which the principles disclosed herein may be practiced, and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description when read in conjunction with the accompanying drawings. Throughout this disclosure, like reference numerals generally refer to like parts or elements.
FIG. 1 illustrates a schematic diagram of a computing device having an operating system running thereon according to an exemplary embodiment of the invention;
FIG. 2 illustrates a block diagram of a computing device 200, according to an exemplary embodiment of the invention;
FIG. 3 illustrates a flowchart of a virtual screen generation method 300 according to an exemplary embodiment of the present invention;
FIG. 4 illustrates a prior art non-display connected desktop according to an exemplary embodiment of the present invention;
FIG. 5 illustrates a schematic diagram of a rendered virtual screen in accordance with an exemplary embodiment of the present invention; and
fig. 6 illustrates a schematic diagram of displaying a virtual screen on a display device when accessing the display device according to an exemplary embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Like reference numerals generally refer to like parts or elements.
FIG. 1 shows a schematic diagram of a computing device running an operating system according to an exemplary embodiment of the invention. As shown in fig. 1, the operating system 220 includes a display server 121, a driver module 122, and a kernel 123 running in a kernel mode. The display server 121 is a display server between the driver module 122 and the application of the application layer 110, and may be specifically implemented as an Xorg display server. Xorg is a standard implementation of the X protocol server and provides a framework for a graphical environment to allow hardware devices to interact with applications. The driver module 122 is loaded with a driver program, which facilitates the operating system to access the hardware of the computing device, such as the display device 131, through the driver program. The kernel 123 may be implemented as a linux kernel, and the present invention does not limit the type of the kernel 123.
An application layer 110 also runs on the operating system 220. The application layer 110 comprises a plurality of application programs 111-113 which are operated in a user mode, and the number of the application programs operated in the application layer 110 is not limited by the invention. The operating system 220 detects whether the computing device is connected to the display device, and if the computing device is connected to the display device 131, draws a screen according to the display device 131, so as to display the screen in the display device 131. And if the display equipment is not accessed, constructing a virtual screen drive to generate a virtual screen.
FIG. 2 illustrates a block diagram of a computing device 200, according to an exemplary embodiment of the invention. As shown in FIG. 2, in a basic configuration 202, a computing device 200 typically includes a system memory 206 and one or more processors 204. A memory bus 208 may be used for communication between the processor 204 and the system memory 206.
Depending on the desired configuration, the processor 204 may be any type of processing, including but not limited to: a microprocessor (μ P), a microcontroller (μ C), a digital information processor (DSP), or any combination thereof. The processor 204 may include one or more levels of cache, such as a level one cache 210 and a level two cache 212, a processor core 214, and registers 216. Example processor cores 214 may include Arithmetic Logic Units (ALUs), Floating Point Units (FPUs), digital signal processing cores (DSP cores), or any combination thereof. The example memory controller 218 may be used with the processor 204, or in some implementations the memory controller 218 may be an internal part of the processor 204.
Depending on the desired configuration, system memory 206 may be any type of memory, including but not limited to: volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. System memory 206 may include an operating system 220, one or more programs 222, and program data 228. In some embodiments, the program 222 may be arranged to execute the instructions 223 of the method 300 according to the invention on an operating system by one or more processors 204 using the program data 228.
Computing device 200 may also include a storage interface bus 234. The storage interface bus 234 enables communication from the storage devices 232 (e.g., removable storage 236 and non-removable storage 238) to the basic configuration 202 via the bus/interface controller 230. Operating system 220, programs 222, and at least a portion of data 224 can be stored on removable storage 236 and/or non-removable storage 238, and loaded into system memory 206 via storage interface bus 234 and executed by one or more processors 204 when computing device 200 is powered on or programs 222 are to be executed.
Computing device 200 may also include an interface bus 240 that facilitates communication from various interface devices (e.g., output devices 242, peripheral interfaces 244, and communication devices 246) to the basic configuration 202 via the bus/interface controller 230. The example output device 242 includes a graphics processing unit 248 and an audio processing unit 250. They may be configured to facilitate communication with various external devices, such as a display or speakers, via one or more a/V ports 252. Example peripheral interfaces 244 can include a serial interface controller 254 and a parallel interface controller 256, which can be configured to facilitate communications with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., printer, scanner, etc.) via one or more I/O ports 258. An example communication device 246 may include a network controller 260, which may be arranged to communicate with one or more other computing devices 200 over a network communication link via one or more communication ports 264.
A network communication link may be one example of a communication medium. Communication media may typically be embodied by computer readable instructions, data structures, program modules, and may include any information delivery media, such as carrier waves or other transport mechanisms, in a modulated data signal. A "modulated data signal" may be a signal that has one or more of its data set or its changes made in such a manner as to encode information in the signal. By way of non-limiting example, communication media may include wired media such as a wired network or private-wired network, and various wireless media such as acoustic, Radio Frequency (RF), microwave, Infrared (IR), or other wireless media. The term computer readable media as used herein may include both storage media and communication media.
In a computing device 200 according to the present invention, the program 222 comprises a plurality of program instructions of the virtual screen generation method 300 that can instruct the processor 204 to perform some of the steps of the virtual screen generation method 300 that is run in the computing device 200 of the present invention so that various portions in the computing device 200 generate virtual screens by performing the virtual screen generation method 300 of the present invention.
Computing device 200 may be implemented as a server, e.g., file server 240, database 250, a server, an application server, etc., which may be a device such as a Personal Digital Assistant (PDA), a wireless web-browsing device, an application-specific device, or a hybrid device that include any of the above functions. May be implemented as a personal computer including both desktop and notebook computer configurations, and in some embodiments, the computing device 200 is configured to perform the virtual screen generation method 300.
Fig. 3 shows a flowchart of a virtual screen generation method 300 according to an exemplary embodiment of the present invention. The virtual screen generating method 300 of the present invention is suitable for being executed in a computing device 200, wherein an operating system 220 runs in the computing device 200, and the operating system 220 comprises a kernel 123 and a display server 121. Computing device 200 is also connected in communicative connection with a client, facilitating remote operation of computing device 200 by a user at the client. As shown in fig. 3, the virtual screen generating method 300 starts with step S310 of determining whether a display device is connected to the computing device 200.
The computing device 200 determines whether the hardware information can be read through the display data interface of the kernel 123, and if the hardware information can be read, the computing device 200 is connected to the display device 131, and displays a screen in the display device 131 normally according to the hardware information. The display data interface of the kernel 123 is used to transmit display data to a connected hardware device and read hardware information of the display device 131. When the display device 131 is connected to the computer, the computing device 200 can read the hardware information. If the hardware information cannot be read, it is determined that the computing device 200 is not connected with a display device.
FIG. 4 illustrates a prior art non-display connected desktop according to an exemplary embodiment of the present invention. As shown in fig. 4, when the display is not connected, and the desktop is remotely displayed at the client, not only the desktop cannot be completely displayed, but also the operation bar at the bottom of the desktop cannot be displayed, the resolution of the application icon is not normal, and the user cannot operate the computer according to such a display interface. Thus, the present invention builds a virtual screen in which desktop and application icons are displayed, thereby enabling the computing device 200 to be operated at the client according to the virtual screen.
If the computing equipment is connected with the display equipment, when a remote operation request of the client is received, the screen displayed in the display equipment is directly sent to the client.
Subsequently, step S320 is executed, and if no display device is connected, the virtual screen driver is constructed and loaded through the display server 121. The hardware information includes a device resolution for the operating system 220 to draw a screen according to the device resolution. When the virtual screen driver is constructed and loaded, the display server 121 sets the resolution of the virtual screen, which is the resolution of the virtual screen to be constructed, and then sets the resolution of the virtual screen as the resolution of the virtual device to construct the virtual hardware information provided by the virtual screen driver. The virtual screen driver is then constructed from the virtual hardware information and loaded in the driver module 122. The virtual screen driver provides virtual hardware information to the operating system 220, including virtual device resolution. The operating system 220 is viewed as having access to a virtual display device based on the virtual screen driver, capable of displaying a virtual screen having virtual hardware information. The operating system 220 determines the resolution of the virtual screen as the virtual screen resolution according to the virtual device resolution of the virtual hardware information. The invention does not limit the specific value of the resolution of the virtual screen.
Subsequently, step S330 is executed to create a virtual desktop according to the virtual screen driver. And when the virtual desktop is drawn, acquiring virtual hardware information driven by the virtual screen, and taking the resolution of the virtual screen as the resolution of the virtual desktop to draw the virtual desktop. Specifically, the original desktop background picture is adjusted according to the resolution of the virtual screen and displayed; and then, placing components such as an operation bar and the like under the background of the desktop to obtain the virtual desktop.
Subsequently, step S340 is executed to draw icons of one or more applications on the virtual desktop through the kernel 123, so as to obtain a virtual screen. When the icon of the application is drawn, one or more applications needing to draw the application icon in the virtual desktop are determined through the kernel 123, and then the icon file corresponding to the application is obtained from the installation directory of each application to obtain one or more icon files. And finally, arranging one or more icon files in the virtual desktop according to the resolution of the virtual screen so as to draw the virtual desktop. Since the application icons exist in the desktop in the form of icon connections, the operating system 220 does not store the icon files itself, and therefore the icon files need to be obtained from the installation directory, modified to a size suitable for the resolution of the virtual screen, and arranged in the virtual desktop.
Subsequently, step S350 is performed, and when the user at the client wants to remotely operate the computing device 200, the client transmits a remote operation request to the computing device 200. When the computing device 200 receives a remote operation request of the client, the virtual screen is transmitted to the client so that the client operates the computing device 200 according to the virtual screen. Fig. 5 illustrates a schematic diagram of a drawn virtual screen according to an exemplary embodiment of the present invention. As shown in fig. 5, the drawn virtual screen can normally display the desktop and the application thereof, which is convenient for the user at the remote client to operate.
According to an exemplary embodiment of the present invention, when the virtual desktop is built, it is determined that the computing device 200 accesses the display device 131 through the kernel 123, the virtual screen driver is uninstalled in the driver module 122, so that the display device driver corresponding to the display device 131 is loaded in the driver module 122. Further, a screen is drawn according to hardware information of the display device driver to display the screen in the display device 131. Specifically, the desktop and the application are redrawn according to the screen resolution in the hardware information, thereby obtaining a screen suitable for the screen resolution of the display device 131. The invention can monitor whether the hardware equipment is accessed, and seamlessly switches the content to be displayed into the physical screen for displaying.
Fig. 6 illustrates a schematic diagram of displaying a virtual screen on a display device when accessing the display device according to an exemplary embodiment of the present invention. As shown in fig. 6, when the computing device 200 is not connected to a display device, the virtual screen driver lockscreen drv.so is constructed and loaded, and the virtual screen resolution is used as the resolution of the virtual desktop according to the virtual hardware information of the virtual screen driver lockscreen drv.so as to draw the virtual desktop. When it is determined through the kernel 123 that the computing device 200 accesses the display device 131, the virtual screen driver lockscreen drv.so is unloaded, the display device driver amdgpu _ drv.so corresponding to the display device 131 is loaded, and the display device driver amdgpu _ drv.so draws and displays a screen in the display device 131.
According to one embodiment of the invention, when the client is disconnected from the computing device and then re-accessed, the virtual screen previously drawn for the client is sent to the client.
According to one embodiment of the invention, the computing device 200 also receives a resolution adjustment request of the client, the resolution adjustment request including a target resolution. When the virtual screen displayed on the client is too large or too small due to inappropriate resolution of the virtual screen, the client can adjust the resolution of the virtual screen, and the target resolution is the appropriate resolution. And then adjusting the virtual equipment resolution of the virtual hardware information in the virtual screen driver to the target resolution so as to redraw the virtual screen by using the target resolution according to the virtual screen driver, and sending the redrawn virtual screen to the client.
The client receives a remote operation of the client based on the virtual screen when operating the computing device 200 according to the virtual screen. The remote operations are operations on a virtual screen, the computing device 200 regards these remote operations as operations on the computing device 200, performs the remote operations, and displays a procedure and a result of performing the remote operations in the virtual screen. And finally, sending the virtual screen on which the process and the result of executing the remote operation are displayed to the client so that the client synchronously displays the process and the result of executing the remote operation by the computing equipment 200, and a user at the client can know the operation condition of the computing equipment 200 in real time according to the displayed process and the displayed result of the remote operation.
The virtual screen generating method in the invention is suitable for being executed in computing equipment, the computing equipment is in communication connection with a client, an operating system runs in the computing equipment, the operating system comprises a kernel and a display server, and the virtual screen generating method comprises the following steps: when a remote operation request of a client is received, determining whether a display device is connected to a computing device; if the display device is not connected, a virtual screen driver is constructed and loaded through the display server, so that a virtual desktop is drawn according to the virtual screen driver, one or more application icons are drawn on the virtual desktop through the kernel to obtain a virtual screen, and the virtual screen is sent to the client so that the client can operate the computing device according to the virtual screen. According to the invention, by constructing the virtual screen drive, the virtual screen comprising the virtual desktop and one or more application icons can be drawn normally, so that a remote client can also operate the computing equipment normally when the display equipment is not connected.
In the description provided herein, numerous specific details are set forth. It is understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim.
Those skilled in the art will appreciate that the modules or units or groups of devices in the examples disclosed herein may be arranged in a device as described in this embodiment, or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into multiple sub-modules.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. Modules or units or groups in embodiments may be combined into one module or unit or group and may furthermore be divided into sub-modules or sub-units or sub-groups. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments.
Furthermore, some of the described embodiments are described herein as a method or combination of method elements that can be performed by a processor of a computer system or by other means of performing the described functions. A processor having the necessary instructions for carrying out the method or method elements thus forms a means for carrying out the method or method elements. Further, the elements of the apparatus embodiments described herein are examples of the following apparatus: the apparatus is used to implement the functions performed by the elements for the purpose of carrying out the invention.
The various techniques described herein may be implemented in connection with hardware or software or, alternatively, with a combination of both. Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention.
In the case of program code execution on programmable computers, the computing device will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Wherein the memory is configured to store program code; the processor is configured to execute the virtual screen construction method of the present invention according to instructions in the program code stored in the memory.
By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer-readable media includes both computer storage media and communication media. Computer storage media store information such as computer readable instructions, data structures, program modules or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. Combinations of any of the above are also included within the scope of computer readable media.
As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this description, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The present invention has been disclosed in an illustrative rather than a restrictive sense, and the scope of the present invention is defined by the appended claims.

Claims (10)

1. A virtual screen generation method adapted to be executed in a computing device, the computing device being in communication connection with a client, an operating system running in the computing device, the operating system including a kernel and a display server, the method comprising the steps of:
determining whether a display device is connected to the computing device;
if the display equipment is not connected, a virtual screen driver is constructed and loaded through the display server;
creating a virtual desktop according to the virtual screen drive;
drawing one or more application icons on the virtual desktop through the kernel to obtain a virtual screen;
and when a remote operation request of the client is received, sending the virtual screen to the client so that the client can operate the computing equipment according to the virtual screen.
2. The method of claim 1, wherein the determining whether a display device is connected to the computing device comprises:
determining whether hardware information can be read or not through a display data interface of the kernel;
and if the hardware information cannot be read, determining that the computing equipment is not connected with the display equipment.
3. The method of claim 2, wherein the hardware information includes a device resolution, and the constructing and loading, by the display server, a virtual screen driver comprises the steps of:
setting a virtual screen resolution by the display server;
setting the virtual screen resolution as the virtual equipment resolution, and constructing virtual hardware information provided by a virtual screen driver;
and constructing and loading a virtual screen driver according to the virtual hardware information.
4. The method of claim 3, wherein said drawing a virtual desktop according to said virtual screen drive comprises the steps of:
and acquiring virtual hardware information driven by the virtual screen, and taking the resolution of the virtual screen as the resolution of the virtual desktop to draw the virtual desktop.
5. The method of claim 4, wherein said drawing icons of one or more applications on said virtual desktop through said kernel, resulting in a virtual screen comprises the steps of:
determining, by the kernel, one or more applications that need to draw application icons in the virtual desktop;
acquiring an icon file corresponding to each application from an installation directory of each application to obtain one or more icon files;
and arranging one or more icon files in the virtual desktop according to the virtual screen resolution to draw the virtual desktop.
6. The method of any one of claims 1-5, further comprising the step of:
when a virtual desktop is constructed, when the kernel determines that the computing equipment is accessed to display equipment, the virtual screen driver is uninstalled;
loading a display device driver corresponding to the display device;
and drawing a screen according to the hardware information driven by the display device so as to display the screen in the display device.
7. The method of any one of claims 1-5, further comprising the step of:
receiving a resolution adjustment request of the client, wherein the resolution adjustment request comprises a target resolution;
adjusting the virtual equipment resolution of the virtual hardware information in the virtual screen drive to a target resolution;
redrawing the virtual screen using the target resolution according to the virtual screen drive.
8. The method of claim 7, further comprising the steps of:
receiving remote operation of the client based on the virtual screen;
executing the remote operation, and displaying the process and the result of executing the remote operation in a virtual screen;
and sending the virtual screen on which the process and the result of executing the remote operation are displayed to the client so that the client can synchronously display the process and the result of executing the remote operation by the computing equipment.
9. A computing device, comprising:
one or more processors;
a memory; and
one or more apparatuses comprising instructions for performing the method of any of claims 1-8.
10. A computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device, cause the computing device to perform the method of any of claims 1-8.
CN202111489137.4A 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium Active CN113885758B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111489137.4A CN113885758B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium
CN202210067876.2A CN114489421B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111489137.4A CN113885758B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210067876.2A Division CN114489421B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium

Publications (2)

Publication Number Publication Date
CN113885758A CN113885758A (en) 2022-01-04
CN113885758B true CN113885758B (en) 2022-02-25

Family

ID=79016541

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202111489137.4A Active CN113885758B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium
CN202210067876.2A Active CN114489421B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202210067876.2A Active CN114489421B (en) 2021-12-08 2021-12-08 Virtual screen generation method, computing device and storage medium

Country Status (1)

Country Link
CN (2) CN113885758B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113885758B (en) * 2021-12-08 2022-02-25 统信软件技术有限公司 Virtual screen generation method, computing device and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447723A (en) * 2010-10-12 2012-05-09 运软网络科技(上海)有限公司 Client-side virtualization framework
CN102508695A (en) * 2011-10-14 2012-06-20 深圳市京华科讯科技有限公司 Screen virtualization method and system
CN111836092A (en) * 2019-04-15 2020-10-27 深信服科技股份有限公司 Data processing method and device of virtual desktop and related components
CN113228561A (en) * 2018-10-22 2021-08-06 思杰系统有限公司 Providing virtual desktops within a computing environment

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101489301B1 (en) * 2008-03-20 2015-02-06 삼성전자주식회사 Virtual environment system and operating method of the system
CN109522070B (en) * 2018-10-29 2021-07-16 联想(北京)有限公司 Display processing method and system
CN112486609B (en) * 2020-11-25 2022-09-16 湖南麒麟信安科技股份有限公司 Virtual display card implementation method and device based on cloud desktop
CN112965771B (en) * 2021-03-02 2024-02-23 北京深之度科技有限公司 Virtual screen construction method, computing device and storage medium
CN113885758B (en) * 2021-12-08 2022-02-25 统信软件技术有限公司 Virtual screen generation method, computing device and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447723A (en) * 2010-10-12 2012-05-09 运软网络科技(上海)有限公司 Client-side virtualization framework
CN102508695A (en) * 2011-10-14 2012-06-20 深圳市京华科讯科技有限公司 Screen virtualization method and system
CN113228561A (en) * 2018-10-22 2021-08-06 思杰系统有限公司 Providing virtual desktops within a computing environment
CN111836092A (en) * 2019-04-15 2020-10-27 深信服科技股份有限公司 Data processing method and device of virtual desktop and related components

Also Published As

Publication number Publication date
CN114489421A (en) 2022-05-13
CN113885758A (en) 2022-01-04
CN114489421B (en) 2024-07-23

Similar Documents

Publication Publication Date Title
EP2962191B1 (en) System and method for virtual displays
US9389884B2 (en) Method and apparatus for providing adaptive wallpaper display for a device having multiple operating system environments
US8610938B2 (en) Remote print preview generation
CN112000417B (en) Control method for window display effect and computing device
CN109683841B (en) Control display method and computing device in multi-display environment
WO2022183742A1 (en) Virtual screen construction method, computing device, and storage medium
US9679408B2 (en) Techniques for enhancing multiple view performance in a three dimensional pipeline
CN111930283B (en) Message display method and computing device
CN113885758B (en) Virtual screen generation method, computing device and storage medium
CN114880072A (en) Application window display method of virtual machine, computing equipment and storage medium
JP2009217321A (en) Information processor and information processing program
US20140082558A1 (en) Method and Apparatus For Providing a User Interface For a File System
CN114691226A (en) Multi-operating-system switching operation method, computing device and storage medium
CN113961086B (en) Shortcut key implementation method, computing device and storage medium
US8793342B2 (en) Interpreting web application content
CN113504861B (en) Desktop management method and device and computing equipment
CN114510307A (en) Dynamic wallpaper implementation method, computing device and storage medium
WO2023284625A1 (en) Cross-platform display method for application, and readable medium and electronic device
US6934742B2 (en) Efficiently handling client requests in a server farm
US8477353B2 (en) Information processing apparatus, printing method, printing system, and non-transitory computer-readable storage medium
CN114281457A (en) Application window display method, computing device and storage medium
CN111338739A (en) Page content processing method, page content display method and page content display system
CN118377451A (en) Screen expansion method and device and computing equipment
CN114281456A (en) Application window display method, computing device and storage medium
CN114237535A (en) Split screen display implementation method and device and computing equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant