CN105573816A - Virtual input method, device and system - Google Patents
Virtual input method, device and system Download PDFInfo
- Publication number
- CN105573816A CN105573816A CN201510921140.7A CN201510921140A CN105573816A CN 105573816 A CN105573816 A CN 105573816A CN 201510921140 A CN201510921140 A CN 201510921140A CN 105573816 A CN105573816 A CN 105573816A
- Authority
- CN
- China
- Prior art keywords
- virtual
- operating system
- host operating
- input
- virtual opetrating
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45545—Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a virtual input method, device and system. The method comprises the steps as follows: communication connection between a host operation system and a virtual operation system is built; a user-defined keyboard interface is provided in the host operation system; a user-defined corresponding relation between key information and a control command is received and stored; the host operation system determines the control command corresponding to the key information input by a user according to the corresponding relation after receiving the key information input by the user; the host operation system provides a control command-based input control message to the virtual operation system through the communication connection; and the virtual operation system processes the input control message. Obviously, the virtual input method, device and system provide a user-defined keyboard to the user and can facilitate operation of the user, so that the user is permitted to carry out virtual input according to personal habits; and the user experience is improved.
Description
Technical field
The present invention relates to communication technical field, be specifically related to a kind of method, Apparatus and system of virtual input.
Background technology
Universal along with mobile intelligent terminal in recent years, expedited the emergence of the develop rapidly of mobile Internet, application of a great variety and colourful now allows mobile intelligent terminal can meet the various demands of people.But due to technical bottleneck in some aspects, the flying power of such as battery, the size of screen and user inevitably limit to when using mobile device (precision etc. as operation), all can affect the experience of user.If the running environment of mobile terminal therefore can be simulated on PC, and give full play to the advantage of PC, the accurate operation etc. of the electric power such as continued, the gorgeous picture effect of giant-screen, keyboard and mouse, can meet the experience that user cannot obtain on mobile intelligent terminal to a great extent.
Such as, for many game players, the interface that hand is swum is transplanted on the PC of larger display, better gaming experience can be obtained.But, be limited to the input restriction of PC, only manipulate by the keyboard of PC or mouse opponent trip, and the operating habit of each user be different, if limited subscriber only can use keyboard specific keys to manipulate, very inconvenient.
Summary of the invention
In view of the above problems, the present invention is proposed to provide a kind of method, the Apparatus and system of virtual input that overcome the problems referred to above or solve the problem at least in part.
According to one aspect of the present invention, provide a kind of method of virtual input, for inputting the virtual opetrating system parasitizing host operating system, described method comprises:
Set up the communication connection between described host operating system and described virtual opetrating system;
User Defined keyboard interface is provided in described host operating system, receives and store the corresponding relation of user-defined key information and control command;
After described host operating system receives the key information of user's input, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
By described communication connection, described host operating system provides the input control message based on described control command to described virtual opetrating system, is processed input control message by described virtual opetrating system.
Preferably, described communication connection of setting up between described host operating system and described virtual opetrating system, comprising:
Described virtual opetrating system is started by the analogue enlargement program in described host operating system;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation;
Described host operating system, according to the IP address of described virtual opetrating system, sets up the connection between described analogue enlargement program and described virtual input service processes.
Preferably,
After described host operating system determines the control command that key information that user inputs is corresponding, also comprise: described host operating system is translated according to described control command and obtained input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Describedly by described virtual opetrating system, process is carried out to input control message and comprise: described virtual opetrating system carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system.
Preferably, described translating according to described control command obtains input control message, comprising:
Described analogue enlargement program is translated described control command and controling parameters, generates described input control message.
Preferably, described virtual input service processes carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system, comprising:
Decipher is carried out to the described input control message that described virtual input service processes receives, obtains described control command;
Hardware abstraction layer HAL conversion is carried out to the control command that decipher obtains, obtains the discernible input control signal of described virtual opetrating system.
Preferably,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
Preferably, described virtual machine is VirtualBox virtual machine;
Describedly start described virtual opetrating system by the analogue enlargement program in described host operating system, comprise: by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
Preferably, described virtual machine is VirtualBox virtual machine;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, comprising:
Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine;
Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
Preferably,
Described by the virtual input service processes of described basic process initiation, comprising: by init process initiation vinput process;
Described connection of setting up between described analogue enlargement program and described virtual input service processes, comprising: at the designated port of described virtual opetrating system, and described vinput process sets up the connection with described analogue enlargement program.
Preferably, before starting described virtual opetrating system by the analogue enlargement program in described host operating system, also comprise: described host operating system configures a virtual network being used for specially communicating with described virtual opetrating system and is connected, and host operating system and virtual opetrating system are communicated with in described virtual network is connected.
Preferably, described host operating system comprises Windows operating system, Mac operating system or (SuSE) Linux OS; Described virtual opetrating system comprises Android operation system.
A device for virtual input, for inputting the virtual opetrating system parasitizing host operating system, described device comprises:
Host's virtual communication unit, for setting up the communication connection between described host operating system and described virtual opetrating system;
Self-defined unit, for providing User Defined keyboard interface in described host operating system, receiving and storing the corresponding relation of user-defined key information and control command;
Control command determining unit, for receive user's input at described host operating system key information after, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
Control command processing unit, for by described communication connection, provides input control message based on described control command, so that described virtual opetrating system processes input control message by described host operating system to described virtual opetrating system.
Preferably, described host's virtual communication unit specifically comprises:
Start virtual controlling subelement, start described virtual opetrating system for the analogue enlargement program controlled in described host operating system;
Virtual ip address obtains subelement, for obtaining the IP address of described virtual opetrating system;
Virtual link sets up subelement, for the IP address according to described virtual opetrating system, sets up the connection between virtual input service processes in described analogue enlargement program and virtual opetrating system.
Preferably, described control command processing unit specifically for, described control command and controling parameters are translated, generate described input control message.
Preferably,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
Preferably, described virtual machine is VirtualBox virtual machine; Described startup virtual controlling subelement specifically for, by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
Preferably, described virtual machine is VirtualBox virtual machine; Described virtual ip address obtain subelement specifically for, read the client properties of described VirtualBox virtual machine, obtain the IP address of described virtual opetrating system.
Preferably, described virtual link set up subelement specifically for, at the designated port of described virtual opetrating system, the vinput process of described analogue enlargement program and described virtual opetrating system connects.
Preferably, also comprise:
Virtual network configuration unit, is connected for configuring a virtual network being used for specially communicating with described virtual opetrating system at described host operating system, host operating system and virtual opetrating system is communicated with in described virtual network is connected.
A system for virtual input, for inputting the virtual opetrating system parasitizing host operating system, described system comprises:
Host operating system, for setting up the communication connection between described virtual opetrating system, and provides User Defined keyboard interface, receives and stores the corresponding relation of user-defined key information and control command; Receive the key information of user's input, and according to described corresponding relation, determine the control command that key information that user inputs is corresponding; By described communication connection, provide the input control message based on described control command to described virtual opetrating system,
Virtual opetrating system, for setting up the communication connection between described host operating system, and after the input control message receiving host operating system, processes input control message.
Preferably,
Described host operating system also for, set up and be connected with the network of described virtual opetrating system, and start described virtual opetrating system by analogue enlargement program, and, according to the IP address of the described virtual opetrating system obtained, set up the connection between the input service processes in described analogue enlargement program and described virtual opetrating system; Further, after determining control command, translate according to described control command and obtain input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Described virtual opetrating system also for, predefine script is loaded by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation, and, the input control message that described analogue enlargement program sends is received by described virtual input service processes, and, decipher is carried out to the described input control message that described virtual input service processes receives, obtains the discernible input control signal of described virtual opetrating system.
Preferably,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
Preferably, described virtual machine is VirtualBox virtual machine; Described host operating system specifically for, by analogue enlargement programmed control VirtualBox virtual machine, by virtual opetrating system described in VirtualBox virtual machine activation.
Preferably, described virtual machine is VirtualBox virtual machine; Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine; Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
Preferably, described virtual opetrating system is by init process initiation vinput process; At the designated port of described virtual opetrating system, described vinput process sets up the connection with described analogue enlargement program.
Preferably, described host operating system specifically for, described control command and controling parameters are translated, generate described input control message.
Preferably, described virtual opetrating system specifically for, the described input control message controlled described virtual input service processes receives carries out decipher, obtains control command; And hardware abstraction layer HAL conversion is carried out to described control command; Obtain the discernible input control signal of described virtual opetrating system.
Preferably, described host operating system configures a virtual network being used for specially communicating with described virtual opetrating system and is connected, and host operating system and virtual opetrating system are communicated with in described virtual network is connected.
Preferably, described host operating system comprises Windows operating system, Mac operating system or (SuSE) Linux OS; Described virtual opetrating system comprises Android operation system.
Visible, by method provided by the invention, the interface of user's customizing keyboard can be supplied on host operating system, by the corresponding relation of User Defined key information and control command, and after user's input key information, the control command of its correspondence is supplied to virtual opetrating system after treatment, is undertaken processing by virtual opetrating system and perform display etc.Visible, by User Defined keyboard, can be user-friendly, thus allow user to carry out virtual input according to personal habits, promote user's impression.
In a preferred embodiment of the invention, the input control program running on host operating system can get the IP address of virtual opetrating system, and host operating system sets up communication connection by this IP address and virtual opetrating system.Such as, the window that the simulator that can be implemented in host operating system represents is seen the image of android system actual motion, and on simulator window, carrying out input control by User Defined keyboard, the Android that user input data is sent to PC virtual by simulator environmentally shows.Mode of the present invention will no longer rely on representing and input control mode of VirtualBox, so would not affect by its drawback.The present invention's proposition is input control mode is be entirely Android customization, and can reach very smooth experience, therefore, the present invention effectively can improve fluency and the accuracy of input control.
Above-mentioned explanation is only the general introduction of technical solution of the present invention, in order to technological means of the present invention can be better understood, and can be implemented according to the content of instructions, and can become apparent, below especially exemplified by the specific embodiment of the present invention to allow above and other objects of the present invention, feature and advantage.
Accompanying drawing explanation
By reading hereafter detailed description of the preferred embodiment, various other advantage and benefit will become cheer and bright for those of ordinary skill in the art.Accompanying drawing only for illustrating the object of preferred implementation, and does not think limitation of the present invention.And in whole accompanying drawing, represent identical parts by identical reference symbol.In the accompanying drawings:
Fig. 1 shows the process flow diagram of the method for virtual according to an embodiment of the invention input;
Fig. 2 shows and a kind ofly in the method for virtual according to an embodiment of the invention input sets up the process flow diagram be connected between host operating system with virtual opetrating system;
Fig. 3 shows a kind of according to an embodiment of the invention host operating system and virtual opetrating system schematic layout pattern;
Fig. 4 shows another kind of according to an embodiment of the invention host operating system and virtual opetrating system schematic layout pattern;
Fig. 5 shows another host operating system and virtual opetrating system schematic layout pattern according to an embodiment of the invention;
Fig. 6 shows another kind in the method for virtual according to an embodiment of the invention input and sets up the process flow diagram be connected between host operating system with virtual opetrating system;
Fig. 7 shows the apparatus structure schematic diagram of virtual according to an embodiment of the invention input.
Embodiment
Below with reference to accompanying drawings exemplary embodiment of the present disclosure is described in more detail.Although show exemplary embodiment of the present disclosure in accompanying drawing, however should be appreciated that can realize the disclosure in a variety of manners and not should limit by the embodiment set forth here.On the contrary, provide these embodiments to be in order to more thoroughly the disclosure can be understood, and complete for the scope of the present disclosure can be conveyed to those skilled in the art.
In order to realize the running environment simulating mobile terminal on PC, Android (android) simulator arises at the historic moment.Android simulator is the simulator of an energy in windows platform simulation Android mobile phone system, and Android simulator can simulate Android mobile phone running environment on computers, and Android simulator allows user also can experience Android game and application on computers.Relatively more conventional Android simulator has: AndroidSDK, BlueStacks, can run in PC system and apple iOS system, famous vmware virtual machine and VirtualBox virtual machine also can simulate Android system, and these simulator softwares all may operate at the Windows operating system platform of Microsoft at present.
It will be appreciated by those skilled in the art that operating system divides two classes, a class is primary, and a class is parasitic.Host operating system, belongs to primary type operating system, such as windows, linux etc.In the present invention, host operating system, also referred to as HostOS, Host system or Host end, such as, runs the operating system of VirtualBox virtual machine.Virtual opetrating system, belongs to the operating system of Parasita, colonizes in the operating system of primary class.In the present invention, virtual opetrating system, also referred to as GustOS, Gust system or Gust end, such as, runs on the operating system in VirtualBox virtual machine environment, especially, the present invention preferably refers to the android system run in VirtualBox virtual machine environment.Wherein, VirtualBox is a software virtual machine of increasing income, user can install on VirtualBox and the systems such as Solaris, Windows, DOS, Linux, OS/2Warp, BSD that perform as client operating system.In the present invention, host operating system includes but not limited to Windows operating system, Mac operating system or (SuSE) Linux OS; Virtual opetrating system includes but not limited to Android operation system.
The present invention is in order to solve in prior art the problem utilizing the mouse-keyboard of PC to virtual opetrating system manipulation inconvenience, a kind of method of virtual input is proposed, by providing User Defined keyboard interface on host operating system, receive the corresponding relation of User Defined key information and control command, then realize the mapping of key information to control command according to this corresponding relation, thus realize user according to the input control of oneself custom to virtual opetrating system.
See Fig. 1, the method comprises:
S101: set up the communication connection between host operating system and virtual opetrating system.
Communication connection between host operating system and virtual opetrating system realizes prerequisite steps of the present invention, only establish a communications link on basis at the two, user's input that host operating system can be realized to receive is supplied to virtual opetrating system, thus shows in virtual opetrating system.
Mode is set up in communication connection between host operating system and virtual opetrating system, can adopt and existingly in host operating system, run the virtual machines such as virtualbox, mode by virtual opetrating systems such as virtual machine activation android, but, the present invention proposes the mode that a kind of minimizing communicates to connect the foundation that virtual machine relies on therebetween, mainly refer to the communication connection passage between the Player program in host operating system of setting up and the vinput process in virtual opetrating system, hereinafter can be described in detail by composition graphs 2-6.
S102: provide User Defined keyboard interface in host operating system, receives and stores the corresponding relation of user-defined key information and control command.
There is provided customizing keyboard interface to user, this interface can show in advance some control command set (such as advance, retreat, be moved to the left, move right), select corresponding with which key information for user.Such as, it is corresponding with order " moving right " that user arranges button " R ", etc.By this interface, user can complete the correspondence setting of key information and control command, is preserved by host operating system.In specific implementation, " customizing keyboard interface " function can be realized by application programs such as similar Android simulators.
S103: after host operating system receives the key information of user's input, according to corresponding relation, determines the control command that key information that user inputs is corresponding.
S104: by communication connection, host operating system provides the input control message based on control command to virtual opetrating system, is processed input control message by virtual opetrating system.
After the control command that host operating system determination key information is corresponding, correlation parameter in conjunction with this control command (specifically describes the parameter of control command, such as, the positional information etc. that mouse is clicked), translate and generate input control signal, then, by Player program, the communication connection passage set up with vinput process before input control Information Pull is sent to vinput process.
Then, the input control signal that virtual opetrating system can receive vinput process carries out decipher, obtains control command, then carries out hardware abstraction layer HAL (HardwareAbstractionLayer) conversion to control command; After HAL conversion, obtain the discernible input control signal of virtual opetrating system.Wherein, HAL (HardwareAbstractionLayer, hardware abstraction layer), the effect of HAL is that the remainder of operating system is expressed as abstract hardware device, particularly eliminate flaw and speciality that real hardware is rich in, these equipment show as the form (function call and grand) of the other parts of operating system and the operable machine-independent service of equipment.By using HAL conversion and indirect hardware address, when being transplanted on new hardware, driver and core only need do little change.It is direct for transplanting HAL itself, because all machine dependent codes all concentrate on a place, and the target of transplanting is fully definition, namely realizes all HAL services.In the present invention, the outside input of control commands received from communication connection is transformed into the intelligible input of android system by HAL conversion by vinput, and this is the innovation and application to prior art in Android.
Visible, by method provided by the invention, the interface of user's customizing keyboard can be supplied on host operating system, by the corresponding relation of User Defined key information and control command, and after user's input key information, the control command of its correspondence is supplied to virtual opetrating system after treatment, is undertaken processing by virtual opetrating system and perform display etc.Visible, by User Defined keyboard, can be user-friendly, thus carry out virtual input according to personal habits, promote user's impression.
As previously mentioned, above-mentioned steps S101 " establishes a communications link between host operating system and virtual opetrating system " is the prerequisite that the present invention realizes.In the prior art, generally rely on VirtualBox completely to realize being communicated with between host operating system with virtual opetrating system, but, realize virtual Android system by VirtualBox and at least there is following problem: first, because VirtualBox virtual machine is plug-in not customizable, therefore this for one wish oneself customization outward appearance product be in fact exactly unacceptable.Secondly, if there is no extra input control optimization component, VirtualBox the mouse movable scope of user can be locked on current virtual machine window, and in fact not smooth for the input control of the such Guest system of android yet.Namely, the scope of activities of mouse is locked in current window by VirtualBox can affect Consumer's Experience to a great extent, and can not ensure the smooth and easy of input control for different Guest systems.The scope of activities of mouse is locked in caused by the product strategy that current window is VirtualBox by VirtualBox.In addition, because VirtualBox is a general purpose virtual machine software of increasing income, the operating system that can run thereon is also not limited only to Android, although VirtualBox can provide input control for the Guest system run wherein, but because Guest system kind is a lot, so each very good effect can not be reached.Himself is just smooth not to the input control of Android.Therefore, the invention provides a kind of host operating system and the new paragon be connected between virtual opetrating system.
The a kind of of the present invention's proposition sets up the mode be connected between host operating system with virtual opetrating system, reduce the dependence to VirtualBox virtual machine as far as possible, while effectively improving Consumer's Experience, ensure good compatibility, and there is extraordinary extensibility technically.
See Fig. 2, show the flow process of the communication connection of setting up between host operating system and virtual opetrating system.
S201: start virtual opetrating system by the analogue enlargement program in host operating system.
Before startup virtual opetrating system, host operating system and virtual opetrating system need to set up network in advance and are connected, can be configured network connection by host system, such as, the virtual network being used for specially communicating by configuration (increase) connects, and host system and virtual system are communicated with in this virtual network is connected.Network between host operating system with virtual opetrating system is connected, is described as follows: 1) this virtual network connects can be provided by VirtualBox; 2) carrying out before startup virtual system virtual network configuration, is the routine operation before each startup, to ensure host and virtual system network-in-dialing; 3) strategy is, if this virtual link does not exist, then by virtual link that the virtual machine creating one of such as VirtualBox is new; If virtual link has created or existed, Connecting quantity (IP address, gateway etc.) is configured, to ensure that host is communicated with virtual system.
Set up after network is connected in host operating system and virtual opetrating system, start virtual opetrating system by the analogue enlargement program in host operating system.
In the present invention, analogue enlargement program, also referred to as player, in specific implementation, can realize this program at Android simulator.Foregoing, virtual opetrating system generally operates in the virtual machine as VirtualBox, therefore, in specific implementation, the player programmed control VirtualBox virtual machine in host operating system can be passed through, by VirtualBox virtual machine activation virtual opetrating system.
S202: virtual opetrating system loads predefine script by basic process, thus the IP address of virtual opetrating system is supplied to host operating system, and, by the virtual input service processes of basic process initiation.
Such as, virtual machine is VirtualBox virtual machine, and virtual opetrating system refers to android system.Specific implementation process is as follows, first, Android system loads predefine script (shell script) by its basic process (init process), run the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of Android system write VirtualBox virtual machine; Then, host operating system reads the client properties of VirtualBox virtual machine, obtains the IP address of Android system.
It will be appreciated by those skilled in the art that in Android system, kernel starts voluntarily (is written into internal memory, bring into operation, and the device driver that initialization is all and data structure etc.) after, just by the mode of a startup user class program init, complete boot process.So init is first process (its process numbering is always 1) all the time.The present invention utilizes init process to load the shell script of a predefine function, realizes the control of the client extensions assembly to VirtualBox virtual machine.
Wherein, Shell script (ShellScript) is similar to the batch processing under Windows/Dos, namely put in a file in advance with all kinds of order, facilitate a program file of disposable execution, owing to employing the order under Linux/Unix, therefore shell script is more powerful than the batch processing under Windows, than higher by the program efficiency of other programs editor.
The client extensions assembly (VirtualBoxGuestAdditions) of VirtualBox virtual machine, strengthen bag also referred to as client, Main Function is to increase: the virtual display of Shared Folders, seamless window, 3D.Client extensions assembly is the set of a pile software package, operates in VirtualBox virtual machine, its object is to, and promotes the performance of virtual machine, increases the interactivity between Host and communication.Visible, in order to better realize the interaction between Host and Guest, VirtualBox provides Guest extension element.Therefore, in the present invention, before communication connection is set up, Host is passed in the IP address of Guest by client properties (guestproperty) mechanism provided by Guest extension element.
IP address, except by loading shell script, is supplied to outside Host by init process, and the virtual input service processes that also startup one is crucial in Android system, also referred to as Vinput process in the present invention.Vinput be in the present invention in order to reach control GuestAndroid system input, and and the critical processes be positioned in android system.By the mode that init controls, make while Android system starts, ensure that vinput process is also activated.
S203: host operating system, according to the IP address of virtual opetrating system, sets up the connection between analogue enlargement program and virtual input service processes.
Concrete, at the designated port of virtual opetrating system, can be set up by vinput process and establish a communications link with Player program.
By the scheme shown in above-mentioned Fig. 2, the simulator (i.e. Player) running on Host system has got the IP address of android system, Host sets up communication connection by the vinput process in this IP address and Android, the window that actual user represents at the simulator of Host system is seen the image of android system actual motion, and inputted on simulator window by keyboard/mouse, after the user input data obtained through and conversion by simulator, by communicating to connect the vinput process be sent in android system, vinput process then transfers these input data to working control to android system.
Foregoing, in prior art, the scope of activities of mouse is locked in current window by VirtualBox can affect Consumer's Experience to a great extent, and can not ensure the smooth and easy of input control for different Guest systems, the scope of activities of mouse is locked in caused by the product strategy that current window is VirtualBox by VirtualBox.And mode of the present invention no longer will rely on representing and input control mode of VirtualBox, so would not affect by its drawback.In addition, because VirtualBox is a general purpose virtual machine software of increasing income, the operating system that can run thereon is also not limited only to Android, although VirtualBox can provide input control for the Guest system run wherein, but because Guest system kind is a lot, so each very good effect can not be reached, himself is just smooth not to the input control of Android, and the present invention proposes to be input control mode to be entirely Android customization, very smooth experience can be reached.
Those skilled in the art understand, although technology above describes all premised on Host and Guest is on same physical machine, but because the Player that runs on Host and the actual only link of Android that runs on Guest are communication connections, as long as so this communication connection can be set up just can use technology of the present invention.Therefore, even if Player and Android runs on different physical machines, also virtual input control can be carried out.
Therefore, when specific implementation, above method includes but not limited to that virtual opetrating system and host operating system run on the situation of same operability or Same Physical PC, is equally applicable to the situation that virtual opetrating system runs on other operating system or other physics PC; In like manner, above method includes but not limited to the situation that virtual opetrating system is run with virtual machine form be equally applicable to the situation that virtual opetrating system runs on actual physical device.
For virtual opetrating system operation situation on a virtual machine, refer to Fig. 3 and Fig. 4.Wherein, Fig. 3 shows virtual machine and operates in situation on the physical equipment at host operating system place, namely, virtual machine operates on the equipment of host operating system place, virtual opetrating system operates in again on this virtual machine, such as, Guest operates on VirtualBox, VirtualBox operates on Host.Fig. 4 shows virtual machine and operates in situation on another physical equipment different from host operating system place physical equipment, such as, host operating system operates on the first equipment (as: PC1), virtual machine operates on the second equipment (e.g., PC2), virtual opetrating system operates in again on this virtual machine.
Virtual machine do not relied on for virtual opetrating system and operates in and the situation in host operating system place physical equipment phase independently another physical equipment, referring to Fig. 5.Fig. 5 shows virtual opetrating system and runs directly in situation on another physical equipment different from host operating system place physical equipment, such as, host operating system operates on the first equipment (as: PC), virtual opetrating system operates on the second equipment (e.g., mobile phone).Herein, require that the second equipment is can the equipment of direct operation system, such as smart mobile phone.
Visible, host operating system provided by the invention possesses with the scheme be connected between virtual opetrating system the ability implemented under distributed environment.
Below from the angle that palyer program, VirtualBox, Android tripartite are mutual, the flow process communicated to connect between host operating system and virtual opetrating system of setting up that another embodiment of the present invention provides is described.Be appreciated that, what this another embodiment was taked is the layout shown in Fig. 3, namely, VirtualBox operates in Host end, Android (Guest end) operates in VirtualBox again, and wherein, palyer program realizes at Host end, coordinate with the vinput in Android the program realizing major function of the present invention, can realize in Android simulator.
Therefore, realization of the present invention comprises the analogue enlargement program Player operating in host operating system (Host) and the reception program vinput running virtual Android system (Guest), and operates in the Android system of virtual machine itself.
(1) logic of Player program
Player starts android system by calling VirtualBox; The IP address obtaining android system is attempted afterwards by the guestproperty mechanism of VirtualBox; After the IP address getting android system, establish a communications link with the vinput run in android system; Just the user that Player receives can be inputted the android system of transmission afterwards.
In above-mentioned prior art, run android system (not by the palyer program process control VirtualBox in Android simulator) by VirtualBox, normally can run Android, but owing to being limited to above-mentioned drawback, can not commercialization.Major premise of the present invention is the overall plan of Android simulator, although still need VirtualBox to run android system, but the work of whole VirtualBox is all backstage, sightless, and is presented to user and is: Android simulator (i.e. above-mentioned Player).Visible, the VirtualBox at running background is directly controlled by Android simulator, and have employed some new technologies and instead of the work originally needing VirtualBox to carry out, comprise taken over image play up work, and the present invention describe taken over input control work.
(2) android system logic
Android system starts, first be that linux kernel starts, start Android basis process init afterwards, this process meeting loading configuration file init.rc which describes init needs complete operation, comprises file system operation, control of authority and service processes etc.In this process, the present invention makes init process load a shell script especially, complete a key operations, namely, the IP address of current system is written to guestproperty by the Guest extension element (VirtualBoxGuestAdditions) by VirtualBox, with the IP address making outside Player can get current Android.Subsequently, the virtual input service processes of init process initiation is made, that is, vinput process.This process will to be set up with Player program at specific port waits and communicate.Once connect with Player program, the control command that the user constantly receiving the transmission of Player program inputs by vinput process on mobile phone, control command carries out processing and showing by virtual A ndroid system.
See Fig. 6, show the process flow diagram set up in accordance with another embodiment of the present invention and communicate to connect between host operating system and virtual opetrating system.
S601:player programmed control VirtualBox virtual machine activation android;
S602:android starts, comprise: linux kernel starts->android basis process init startup-> loading init.rc-> and runs virtual input service processes vinput, and wait and outside connect;
S603:Player program obtains the ip address of Android system, comprising: android runs init.vbox.sh and writes IP address to guestproperty, player from the guestproperty of VirtualBox reading IP address;
S604:Player program is set up tcp with the vinput process of android inside and is connected, and completes initialization;
S605:Player program determines the control command that key information that user inputs is corresponding;
Control command is sent to the vinput process of Android system by the communication port set up before by S606:Player program;
S607:Android system shows the control command that vinput process receives.
Corresponding with said method, the present invention also provides a kind of device of virtual input, for inputting the virtual opetrating system parasitizing host operating system.Preferably, this device is positioned at host operating system side, such as, can realize its function by application programs such as Android simulators.
See Fig. 7, this device comprises:
Host's virtual communication unit 701, for setting up the communication connection between described host operating system and described virtual opetrating system;
Self-defined unit 702, for providing User Defined keyboard interface in described host operating system, receiving and storing the corresponding relation of user-defined key information and control command;
Control command determining unit 703, for receive user's input at described host operating system key information after, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
Control command processing unit 704, for by described communication connection, provides input control message based on described control command, so that described virtual opetrating system processes input control message by described host operating system to described virtual opetrating system.
Preferably, host's virtual communication unit 701 specifically comprises:
Start virtual controlling subelement 7011, start described virtual opetrating system for the analogue enlargement program controlled in described host operating system;
Virtual ip address obtains subelement 7012, for obtaining the IP address of described virtual opetrating system;
Virtual link sets up subelement 7013, for the IP address according to described virtual opetrating system, sets up the connection between virtual input service processes in described analogue enlargement program and virtual opetrating system.
Preferably, described control command processing unit 704 specifically for, described control command and controling parameters are translated, generate described input control message.
Preferably,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
Preferably, described virtual machine is VirtualBox virtual machine; Described startup virtual controlling subelement 7011 specifically for, by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
Preferably, described virtual machine is VirtualBox virtual machine; Described virtual ip address obtain subelement 7012 specifically for, read the client properties of described VirtualBox virtual machine, obtain the IP address of described virtual opetrating system.
Preferably, described virtual link set up subelement 7013 specifically for, at the designated port of described virtual opetrating system, the vinput process of described analogue enlargement program and described virtual opetrating system connects.
Preferably, this device also comprises:
Virtual network configuration unit 700, is connected for configuring a virtual network being used for specially communicating with described virtual opetrating system at described host operating system, host operating system and virtual opetrating system is communicated with in described virtual network is connected.
Corresponding with said method, device, the present invention also provides a kind of system of virtual input, and for inputting the virtual opetrating system parasitizing host operating system, described system comprises:
Host operating system, for setting up the communication connection between described virtual opetrating system, and provides User Defined keyboard interface, receives and stores the corresponding relation of user-defined key information and control command; Receive the key information of user's input, and according to described corresponding relation, determine the control command that key information that user inputs is corresponding; By described communication connection, provide the input control message based on described control command to described virtual opetrating system,
Virtual opetrating system, for setting up the communication connection between described host operating system, and after the input control message receiving host operating system, processes input control message.
Preferably,
Described host operating system also for, set up and be connected with the network of described virtual opetrating system, and start described virtual opetrating system by analogue enlargement program, and, according to the IP address of the described virtual opetrating system obtained, set up the connection between the input service processes in described analogue enlargement program and described virtual opetrating system; Further, after determining control command, translate according to described control command and obtain input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Described virtual opetrating system also for, predefine script is loaded by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation, and, the input control message that described analogue enlargement program sends is received by described virtual input service processes, and, decipher is carried out to the described input control message that described virtual input service processes receives, obtains the discernible input control signal of described virtual opetrating system.
Preferably,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
Preferably, described virtual machine is VirtualBox virtual machine; Described host operating system specifically for, by analogue enlargement programmed control VirtualBox virtual machine, by virtual opetrating system described in VirtualBox virtual machine activation.
Preferably, described virtual machine is VirtualBox virtual machine; Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine; Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
Preferably, described virtual opetrating system is by init process initiation vinput process; At the designated port of described virtual opetrating system, described vinput process sets up the connection with described analogue enlargement program.
Preferably, described host operating system specifically for, described control command and controling parameters are translated, generate described input control message.
Preferably, described virtual opetrating system specifically for, the described input control message controlled described virtual input service processes receives carries out decipher, obtains control command; And hardware abstraction layer HAL conversion is carried out to described control command; Obtain the discernible input control signal of described virtual opetrating system.
Preferably, described host operating system configures a virtual network being used for specially communicating with described virtual opetrating system and is connected, and host operating system and virtual opetrating system are communicated with in described virtual network is connected.
Preferably, described host operating system comprises Windows operating system, Mac operating system or (SuSE) Linux OS; Described virtual opetrating system comprises Android operation system.
Intrinsic not relevant to any certain computer, virtual system or miscellaneous equipment with display at this algorithm provided.Various general-purpose system also can with use based on together with this teaching.According to description above, the structure constructed required by this type systematic is apparent.In addition, the present invention is not also for any certain programmed language.It should be understood that and various programming language can be utilized to realize content of the present invention described here, and the description done language-specific is above to disclose preferred forms of the present invention.
In instructions provided herein, describe a large amount of detail.But can understand, embodiments of the invention can be put into practice when not having these details.In some instances, be not shown specifically known method, structure and technology, so that not fuzzy understanding of this description.
Similarly, be to be understood that, in order to simplify the disclosure and to help to understand in each inventive aspect one or more, in the description above to exemplary embodiment of the present invention, each feature of the present invention is grouped together in single embodiment, figure or the description to it sometimes.But, the method for the disclosure should be construed to the following intention of reflection: namely the present invention for required protection requires feature more more than the feature clearly recorded in each claim.Or rather, as claims below reflect, all features of disclosed single embodiment before inventive aspect is to be less than.Therefore, the claims following embodiment are incorporated to this embodiment thus clearly, and wherein each claim itself is as independent embodiment of the present invention.
Those skilled in the art are appreciated that and adaptively can change the module in the equipment in embodiment and they are arranged in one or more equipment different from this embodiment.Module in embodiment or unit or assembly can be combined into a module or unit or assembly, and multiple submodule or subelement or sub-component can be put them in addition.Except at least some in such feature and/or process or unit be mutually repel except, any combination can be adopted to combine all processes of all features disclosed in this instructions (comprising adjoint claim, summary and accompanying drawing) and so disclosed any method or equipment or unit.Unless expressly stated otherwise, each feature disclosed in this instructions (comprising adjoint claim, summary and accompanying drawing) can by providing identical, alternative features that is equivalent or similar object replaces.
In addition, those skilled in the art can understand, although embodiments more described herein to comprise in other embodiment some included feature instead of further feature, the combination of the feature of different embodiment means and to be within scope of the present invention and to form different embodiments.Such as, in the following claims, the one of any of embodiment required for protection can use with arbitrary array mode.
All parts embodiment of the present invention with hardware implementing, or can realize with the software module run on one or more processor, or realizes with their combination.It will be understood by those of skill in the art that the some or all functions that microprocessor or digital signal processor (DSP) can be used in practice to realize according to the some or all parts in the device of the virtual input of the embodiment of the present invention.The present invention can also be embodied as part or all equipment for performing method as described herein or device program (such as, computer program and computer program).Realizing program of the present invention and can store on a computer-readable medium like this, or the form of one or more signal can be had.Such signal can be downloaded from internet website and obtain, or provides on carrier signal, or provides with any other form.
The present invention will be described instead of limit the invention to it should be noted above-described embodiment, and those skilled in the art can design alternative embodiment when not departing from the scope of claims.In the claims, any reference symbol between bracket should be configured to limitations on claims.Word " comprises " not to be got rid of existence and does not arrange element in the claims or step.Word "a" or "an" before being positioned at element is not got rid of and be there is multiple such element.The present invention can by means of including the hardware of some different elements and realizing by means of the computing machine of suitably programming.In the unit claim listing some devices, several in these devices can be carry out imbody by same hardware branch.Word first, second and third-class use do not represent any order.Can be title by these word explanations.
Visible, the invention provides following scheme:
A kind of method of A1, virtual input, for inputting the virtual opetrating system parasitizing host operating system, described method comprises:
Set up the communication connection between described host operating system and described virtual opetrating system;
User Defined keyboard interface is provided in described host operating system, receives and store the corresponding relation of user-defined key information and control command;
After described host operating system receives the key information of user's input, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
By described communication connection, described host operating system provides the input control message based on described control command to described virtual opetrating system, is processed input control message by described virtual opetrating system.
A2, method as described in A1, described communication connection of setting up between described host operating system and described virtual opetrating system, comprising:
Described virtual opetrating system is started by the analogue enlargement program in described host operating system;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation;
Described host operating system, according to the IP address of described virtual opetrating system, sets up the connection between described analogue enlargement program and described virtual input service processes.
A3, method as described in A2,
After described host operating system determines the control command that key information that user inputs is corresponding, also comprise: described host operating system is translated according to described control command and obtained input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Describedly by described virtual opetrating system, process is carried out to input control message and comprise: described virtual opetrating system carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system.
A4, method as described in A3, described translating according to described control command obtains input control message, comprising:
Described analogue enlargement program is translated described control command and controling parameters, generates described input control message.
A5, method as described in A3, described virtual input service processes carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system, comprising:
Decipher is carried out to the described input control message that described virtual input service processes receives, obtains described control command;
Hardware abstraction layer HAL conversion is carried out to the control command that decipher obtains, obtains the discernible input control signal of described virtual opetrating system.
A6, method as described in A2,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
A7, method as described in A6, described virtual machine is VirtualBox virtual machine;
Describedly start described virtual opetrating system by the analogue enlargement program in described host operating system, comprise: by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
A8, method as described in A6, described virtual machine is VirtualBox virtual machine;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, comprising:
Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine;
Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
A9, method as described in A2,
Described by the virtual input service processes of described basic process initiation, comprising: by init process initiation vinput process;
Described connection of setting up between described analogue enlargement program and described virtual input service processes, comprising: at the designated port of described virtual opetrating system, and described vinput process sets up the connection with described analogue enlargement program.
A10, method as described in A2, before starting described virtual opetrating system by the analogue enlargement program in described host operating system, also comprise: described host operating system configures a virtual network being used for specially communicating with described virtual opetrating system and is connected, and host operating system and virtual opetrating system are communicated with in described virtual network is connected.
A11, method as described in any one of A1-A10, described host operating system comprises Windows operating system, Mac operating system or (SuSE) Linux OS; Described virtual opetrating system comprises Android operation system.
The device of B12, a kind of virtual input, for inputting the virtual opetrating system parasitizing host operating system, described device comprises:
Host's virtual communication unit, for setting up the communication connection between described host operating system and described virtual opetrating system;
Self-defined unit, for providing User Defined keyboard interface in described host operating system, receiving and storing the corresponding relation of user-defined key information and control command;
Control command determining unit, for receive user's input at described host operating system key information after, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
Control command processing unit, for by described communication connection, provides input control message based on described control command, so that described virtual opetrating system processes input control message by described host operating system to described virtual opetrating system.
B13, device as described in B12, described host's virtual communication unit specifically comprises:
Start virtual controlling subelement, start described virtual opetrating system for the analogue enlargement program controlled in described host operating system;
Virtual ip address obtains subelement, for obtaining the IP address of described virtual opetrating system;
Virtual link sets up subelement, for the IP address according to described virtual opetrating system, sets up the connection between virtual input service processes in described analogue enlargement program and virtual opetrating system.
B14, device as described in B13, described control command processing unit specifically for, described control command and controling parameters are translated, generate described input control message.
B15, device as described in B13,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
B16, device as described in B15, described virtual machine is VirtualBox virtual machine; Described startup virtual controlling subelement specifically for, by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
B17, device as described in B15, described virtual machine is VirtualBox virtual machine; Described virtual ip address obtain subelement specifically for, read the client properties of described VirtualBox virtual machine, obtain the IP address of described virtual opetrating system.
B18, device as described in B15, described virtual link set up subelement specifically for, at the designated port of described virtual opetrating system, the vinput process of described analogue enlargement program and described virtual opetrating system connects.
B19, device as described in B13, also comprise:
Virtual network configuration unit, is connected for configuring a virtual network being used for specially communicating with described virtual opetrating system at described host operating system, host operating system and virtual opetrating system is communicated with in described virtual network is connected.
The system of C20, a kind of virtual input, for inputting the virtual opetrating system parasitizing host operating system, described system comprises:
Host operating system, for setting up the communication connection between described virtual opetrating system, and provides User Defined keyboard interface, receives and stores the corresponding relation of user-defined key information and control command; Receive the key information of user's input, and according to described corresponding relation, determine the control command that key information that user inputs is corresponding; By described communication connection, provide the input control message based on described control command to described virtual opetrating system,
Virtual opetrating system, for setting up the communication connection between described host operating system, and after the input control message receiving host operating system, processes input control message.
The system of C21, virtual input as described in C20,
Described host operating system also for, set up and be connected with the network of described virtual opetrating system, and start described virtual opetrating system by analogue enlargement program, and, according to the IP address of the described virtual opetrating system obtained, set up the connection between the input service processes in described analogue enlargement program and described virtual opetrating system; Further, after determining control command, translate according to described control command and obtain input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Described virtual opetrating system also for, predefine script is loaded by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation, and, the input control message that described analogue enlargement program sends is received by described virtual input service processes, and, decipher is carried out to the described input control message that described virtual input service processes receives, obtains the discernible input control signal of described virtual opetrating system.
The system of C22, virtual input as described in C21,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
The system of C23, virtual input as described in C22, described virtual machine is VirtualBox virtual machine; Described host operating system specifically for, by analogue enlargement programmed control VirtualBox virtual machine, by virtual opetrating system described in VirtualBox virtual machine activation.
The system of C24, virtual input as described in C22, described virtual machine is VirtualBox virtual machine; Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine; Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
The system of C25, virtual input as described in C21, described virtual opetrating system is by init process initiation vinput process; At the designated port of described virtual opetrating system, described vinput process sets up the connection with described analogue enlargement program.
The system of C26, virtual input as described in C21, described host operating system specifically for, described control command and controling parameters are translated, generate described input control message.
The system of C27, virtual input control as described in C21, described virtual opetrating system specifically for, the described input control message controlled described virtual input service processes receives carries out decipher, obtains control command; And hardware abstraction layer HAL conversion is carried out to described control command; Obtain the discernible input control signal of described virtual opetrating system.
The system of C28, virtual input control as described in C21, described host operating system configures a virtual network being used for specially communicating with described virtual opetrating system and is connected, and host operating system and virtual opetrating system are communicated with in described virtual network is connected.
The system of C29, virtual input control as described in any one of C20-C28, described host operating system comprises Windows operating system, Mac operating system or (SuSE) Linux OS; Described virtual opetrating system comprises Android operation system.
Claims (10)
1. a method for virtual input, is characterized in that, for inputting the virtual opetrating system parasitizing host operating system, described method comprises:
Set up the communication connection between described host operating system and described virtual opetrating system;
User Defined keyboard interface is provided in described host operating system, receives and store the corresponding relation of user-defined key information and control command;
After described host operating system receives the key information of user's input, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
By described communication connection, described host operating system provides the input control message based on described control command to described virtual opetrating system, is processed input control message by described virtual opetrating system.
2. the method for claim 1, is characterized in that, described communication connection of setting up between described host operating system and described virtual opetrating system, comprising:
Described virtual opetrating system is started by the analogue enlargement program in described host operating system;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, and, by the virtual input service processes of described basic process initiation;
Described host operating system, according to the IP address of described virtual opetrating system, sets up the connection between described analogue enlargement program and described virtual input service processes.
3. method as claimed in claim 2, is characterized in that,
After described host operating system determines the control command that key information that user inputs is corresponding, also comprise: described host operating system is translated according to described control command and obtained input control message, by described analogue enlargement program, described input control message is sent to described virtual input service processes;
Describedly by described virtual opetrating system, process is carried out to input control message and comprise: described virtual opetrating system carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system.
4. method as claimed in claim 3, it is characterized in that, described translating according to described control command obtains input control message, comprising:
Described analogue enlargement program is translated described control command and controling parameters, generates described input control message.
5. method as claimed in claim 3, it is characterized in that, described virtual input service processes carries out decipher to described input control message, obtains the discernible input control signal of described virtual opetrating system, comprising:
Decipher is carried out to the described input control message that described virtual input service processes receives, obtains described control command;
Hardware abstraction layer HAL conversion is carried out to the control command that decipher obtains, obtains the discernible input control signal of described virtual opetrating system.
6. method as claimed in claim 2, is characterized in that,
Described virtual opetrating system operates in in described host operating system place physical equipment phase independently another physical equipment; Or,
Described virtual opetrating system is run on a virtual machine, wherein, described virtual machine operates on the physical equipment at described host operating system place, or described virtual machine operates on another physical equipment different from described host operating system place physical equipment.
7. method as claimed in claim 6, it is characterized in that, described virtual machine is VirtualBox virtual machine;
Describedly start described virtual opetrating system by the analogue enlargement program in described host operating system, comprise: by the analogue enlargement programmed control VirtualBox virtual machine in described host operating system, by virtual opetrating system described in VirtualBox virtual machine activation.
8. method as claimed in claim 6, it is characterized in that, described virtual machine is VirtualBox virtual machine;
Described virtual opetrating system loads predefine script by basic process, thus the IP address of described virtual opetrating system is supplied to described host operating system, comprising:
Described virtual opetrating system loads predefine script by init process, runs the client extensions assembly of VirtualBox virtual machine, by the client properties of the IP address of described virtual opetrating system write VirtualBox virtual machine;
Described host operating system reads the client properties of described VirtualBox virtual machine, obtains the IP address of described virtual opetrating system.
9. a device for virtual input, is characterized in that, for inputting the virtual opetrating system parasitizing host operating system, described device comprises:
Host's virtual communication unit, for setting up the communication connection between described host operating system and described virtual opetrating system;
Self-defined unit, for providing User Defined keyboard interface in described host operating system, receiving and storing the corresponding relation of user-defined key information and control command;
Control command determining unit, for receive user's input at described host operating system key information after, according to described corresponding relation, determine the control command that key information that user inputs is corresponding;
Control command processing unit, for by described communication connection, provides input control message based on described control command, so that described virtual opetrating system processes input control message by described host operating system to described virtual opetrating system.
10. a system for virtual input, is characterized in that, for inputting the virtual opetrating system parasitizing host operating system, described system comprises:
Host operating system, for setting up the communication connection between described virtual opetrating system, and provides User Defined keyboard interface, receives and stores the corresponding relation of user-defined key information and control command; Receive the key information of user's input, and according to described corresponding relation, determine the control command that key information that user inputs is corresponding; By described communication connection, provide the input control message based on described control command to described virtual opetrating system,
Virtual opetrating system, for setting up the communication connection between described host operating system, and after the input control message receiving host operating system, processes input control message.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510921140.7A CN105573816B (en) | 2015-12-11 | 2015-12-11 | The method, apparatus and system virtually inputted |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510921140.7A CN105573816B (en) | 2015-12-11 | 2015-12-11 | The method, apparatus and system virtually inputted |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105573816A true CN105573816A (en) | 2016-05-11 |
CN105573816B CN105573816B (en) | 2018-12-21 |
Family
ID=55883988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510921140.7A Active CN105573816B (en) | 2015-12-11 | 2015-12-11 | The method, apparatus and system virtually inputted |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105573816B (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528099A (en) * | 2016-10-21 | 2017-03-22 | 合肥联宝信息技术有限公司 | Method and device for recognizing operation command based on different operation systems |
CN107278294A (en) * | 2017-05-12 | 2017-10-20 | 深圳前海达闼云端智能科技有限公司 | Input equipment implementation method and its realize device |
CN110649997A (en) * | 2018-06-26 | 2020-01-03 | 电信科学技术研究院有限公司 | Data processing method and device |
CN111200535A (en) * | 2018-11-16 | 2020-05-26 | 阿里巴巴集团控股有限公司 | Simulation system and method for equipment |
CN112799521A (en) * | 2021-03-29 | 2021-05-14 | 上海捷勃特机器人有限公司 | Electronic device and method for operating electronic device |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6003050A (en) * | 1997-04-02 | 1999-12-14 | Microsoft Corporation | Method for integrating a virtual machine with input method editors |
US6004049A (en) * | 1998-10-29 | 1999-12-21 | Sun Microsystems, Inc. | Method and apparatus for dynamic configuration of an input device |
US20030093258A1 (en) * | 2001-11-14 | 2003-05-15 | Roman Fishstein | Method and apparatus for efficient simulation of memory mapped device access |
CN102331927A (en) * | 2011-06-24 | 2012-01-25 | 浙大网新科技股份有限公司 | Method for integrating soft keyboard input of Wine and Android mobile phone |
CN102364434A (en) * | 2011-06-24 | 2012-02-29 | 浙大网新科技股份有限公司 | Method for integrating Wine and Android mouse input |
CN103064724A (en) * | 2012-12-14 | 2013-04-24 | 北京伸得纬科技有限公司 | Virtual mechanism constructing method and device |
CN103177212A (en) * | 2013-03-08 | 2013-06-26 | 湘潭大学 | Computer security input system and method based on lightweight virtual machine monitor unit |
CN103389884A (en) * | 2013-07-29 | 2013-11-13 | 华为技术有限公司 | Method for processing input/output request, host, server and virtual machine |
CN103593185A (en) * | 2013-11-04 | 2014-02-19 | 浙江大学 | Single-Linux-inner-core-based method for multiple Android systems to share input equipment and display equipment |
US8863113B1 (en) * | 2007-07-10 | 2014-10-14 | Parallels IP Holdings GmbH | Method and system for unattended installation of guest operating system |
-
2015
- 2015-12-11 CN CN201510921140.7A patent/CN105573816B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6003050A (en) * | 1997-04-02 | 1999-12-14 | Microsoft Corporation | Method for integrating a virtual machine with input method editors |
US6004049A (en) * | 1998-10-29 | 1999-12-21 | Sun Microsystems, Inc. | Method and apparatus for dynamic configuration of an input device |
US20030093258A1 (en) * | 2001-11-14 | 2003-05-15 | Roman Fishstein | Method and apparatus for efficient simulation of memory mapped device access |
US8863113B1 (en) * | 2007-07-10 | 2014-10-14 | Parallels IP Holdings GmbH | Method and system for unattended installation of guest operating system |
CN102331927A (en) * | 2011-06-24 | 2012-01-25 | 浙大网新科技股份有限公司 | Method for integrating soft keyboard input of Wine and Android mobile phone |
CN102364434A (en) * | 2011-06-24 | 2012-02-29 | 浙大网新科技股份有限公司 | Method for integrating Wine and Android mouse input |
CN103064724A (en) * | 2012-12-14 | 2013-04-24 | 北京伸得纬科技有限公司 | Virtual mechanism constructing method and device |
CN103177212A (en) * | 2013-03-08 | 2013-06-26 | 湘潭大学 | Computer security input system and method based on lightweight virtual machine monitor unit |
CN103389884A (en) * | 2013-07-29 | 2013-11-13 | 华为技术有限公司 | Method for processing input/output request, host, server and virtual machine |
CN103593185A (en) * | 2013-11-04 | 2014-02-19 | 浙江大学 | Single-Linux-inner-core-based method for multiple Android systems to share input equipment and display equipment |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528099A (en) * | 2016-10-21 | 2017-03-22 | 合肥联宝信息技术有限公司 | Method and device for recognizing operation command based on different operation systems |
CN107278294A (en) * | 2017-05-12 | 2017-10-20 | 深圳前海达闼云端智能科技有限公司 | Input equipment implementation method and its realize device |
CN110649997A (en) * | 2018-06-26 | 2020-01-03 | 电信科学技术研究院有限公司 | Data processing method and device |
CN110649997B (en) * | 2018-06-26 | 2021-07-20 | 大唐移动通信设备有限公司 | Data processing method and device |
CN111200535A (en) * | 2018-11-16 | 2020-05-26 | 阿里巴巴集团控股有限公司 | Simulation system and method for equipment |
CN112799521A (en) * | 2021-03-29 | 2021-05-14 | 上海捷勃特机器人有限公司 | Electronic device and method for operating electronic device |
CN112799521B (en) * | 2021-03-29 | 2021-08-27 | 上海捷勃特机器人有限公司 | Electronic device and method for operating electronic device |
Also Published As
Publication number | Publication date |
---|---|
CN105573816B (en) | 2018-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105573816A (en) | Virtual input method, device and system | |
CN102576253B (en) | For the system and method for the unified context mapping between physical input device control piece and application action | |
CN105477854B (en) | Applied to the handle control method of intelligent terminal, apparatus and system | |
US7055026B2 (en) | Method and system for a portable adaptable operating environment identity | |
US20090100129A1 (en) | Thin terminal computer architecture utilizing roaming keyboard files | |
US20170192646A1 (en) | Method and electronic device for hiding application icons and mobile phone | |
CN105739983A (en) | Script program edition device and realization method thereof | |
CN105550017A (en) | Method, apparatus and system for performing virtual input control for application | |
CN107408052A (en) | Binary Conversion in shared object level | |
CN105521603A (en) | Virtual input control method, apparatus and system for running games | |
CN109800135A (en) | A kind of information processing method and terminal | |
CN106200898A (en) | Virtual reality software platform system | |
CN112131147A (en) | Controller verification method, device and system, electronic equipment and storage medium | |
US10809988B2 (en) | Processor emulation using multiple translations | |
CN105573817A (en) | Virtual input control method, device and system | |
US11977919B2 (en) | Apparatus and method of securely and efficiently interfacing with a cloud computing service | |
CN105550046A (en) | Virtual control method, device and system | |
CN105740012A (en) | Method for updating BIOS (Basic Input Output System) program of computer | |
CN112206525B (en) | Information processing method and device for hand-twisting virtual article in UE4 engine | |
CN106527916A (en) | Operating method and device based on virtual reality equipment, and operating equipment | |
Meike et al. | Inside the android OS: building, customizing, managing and operating android system services | |
CN105550045A (en) | Method, device and system for controlling virtual input by mobile terminal | |
CN115120966A (en) | Rendering method and device of fluid effect | |
CN115040866A (en) | Cloud game image processing method, device, equipment and computer readable storage medium | |
JP2022101466A (en) | Transaction processing method of ethereum virtual machine, device, apparatus, program, and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220729 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |