CN108279963B - Single Linux kernel multi-Android system intelligent terminal display virtualization method - Google Patents

Single Linux kernel multi-Android system intelligent terminal display virtualization method Download PDF

Info

Publication number
CN108279963B
CN108279963B CN201810010116.1A CN201810010116A CN108279963B CN 108279963 B CN108279963 B CN 108279963B CN 201810010116 A CN201810010116 A CN 201810010116A CN 108279963 B CN108279963 B CN 108279963B
Authority
CN
China
Prior art keywords
service
android
layer
value
intelligent terminal
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
CN201810010116.1A
Other languages
Chinese (zh)
Other versions
CN108279963A (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.)
Zhengzhou Xinda Jiean Information Technology Co Ltd
Original Assignee
Zhengzhou Xinda Jiean Information 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 Zhengzhou Xinda Jiean Information Technology Co Ltd filed Critical Zhengzhou Xinda Jiean Information Technology Co Ltd
Priority to CN201810010116.1A priority Critical patent/CN108279963B/en
Publication of CN108279963A publication Critical patent/CN108279963A/en
Application granted granted Critical
Publication of CN108279963B publication Critical patent/CN108279963B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/543Local

Abstract

The invention provides an intelligent terminal display virtualization method of a single Linux kernel and multiple Android systems, which comprises an intelligent terminal, wherein the intelligent terminal is internally provided with multiple Android systems, each Android system is internally provided with a Windows manager service and a plurality of application program APPs, one Android system is selected as a main system, and the main system is internally provided with a SurfaceFlinger service; the method has the advantages that the reformed SurfaceFlinger service is shared among all android systems of the intelligent terminal, each Layer of all the android systems is subjected to unified mapping management, the fact that a plurality of android systems share the same physical display screen is achieved, the switching of the pictures of the plurality of android systems is achieved by modifying the Layer mapping relation of all the android systems, accordingly, the functions of virtualization display and system picture switching are achieved, and the method has high universality and portability.

Description

Single Linux kernel multi-Android system intelligent terminal display virtualization method
Technical Field
The invention relates to the field of mobile virtualization and the field of mobile security, in particular to an intelligent terminal display virtualization method of a single Linux kernel and a multi-Android system.
Background
With the popularization of smart phones and the development of mobile internet, mobile payment, office work and financial management become more and more common, the information security of the mobile phones becomes more and more important, and the android system faces far more information security risks than other systems due to the characteristics of openness and the like of the android system. Various viruses and trojan horses emerge endlessly. On the other hand, the demand of mobile office is also increasing, and in order to prevent sensitive information leakage of enterprises and reduce enterprise cost, a mobile phone supporting dual systems, one for work and one for life, is urgently needed.
At present, a mobile phone with dual systems has multiple technical schemes, a plurality of hardware modules are isolated, and a plurality of systems are realized based on a software virtualization technology. Compared with a technical scheme of hardware isolation, the software virtualization scheme has the advantages of low cost, high performance, low power consumption, good user experience, software management and control and the like.
In any case, the problems of virtualization and reuse of shared hardware resources must be faced. How to enable one physical display screen to display the pictures of different systems in time according to needs becomes a problem which needs to be solved in order to realize multiple systems.
In order to solve the above problems, people are always seeking an ideal technical solution.
Disclosure of Invention
The invention aims to overcome the defects of the prior art, and provides a method for virtualizing the display of an intelligent terminal of a single Linux kernel and multiple Android systems, so that multiple systems can share the same display equipment and display pictures can be switched back and forth.
In order to achieve the purpose, the invention adopts the technical scheme that: the utility model provides a single Linux kernel many Android systems's intelligent terminal shows virtualization method, includes intelligent terminal, be provided with a plurality of Android systems in the intelligent terminal, all be provided with windows manager service and a plurality of application APP in every Android system, select an Android system as the main system, be provided with surface flag service in the main system, include the following step:
step 1, modifying the SurfaceFlinger service to enable the SurfaceFlinger service to be shared among a plurality of android systems;
step 2, each application program App initiates a window display request to a WindowManager service in the current android system, the WindowManager service initiates a Layer creation request to a SurfaceFlinger service after receiving the window display request, and the SurfaceFlinger service creates a Layer for the application program App;
step 3, the WindowManager service calculates the Z value of the Layer of each application program App according to the running states of all the application programs App in the current android system and the Layer information of other application programs App, and sets the Z value into the SurfaceFlinger service; each application program APP corresponds to an independent Z value;
step 4, the SurfaceFlinger service adds a base value to the Z values of all Layer layers of each android system according to a window display request, and different android systems correspond to different base values;
and 5, calculating the superposed visible area of the Layer by the SurfaceFlinger service from top to bottom according to the Z value, combining the layers, and sending the combined Layer of the visible area to a display screen for display.
Based on the above, the surfaceFlinger service further modifies the base value of each android system Layer added on the Z value according to the window display request, so as to realize the switching of the display pictures of the plurality of android systems.
Based on the above, the android system of the window to be displayed has the largest base value added on the Z value.
The invention has prominent substantive features and remarkable progress: the invention realizes that a plurality of android systems share the same physical display screen by sharing the improved SurfaceFlinger service among the android systems of the intelligent terminal and carrying out uniform mapping management on each Layer of all the android systems. Furthermore, the switching of a plurality of android system pictures is realized by modifying the Layer mapping relation of each android system, so that the functions of display virtualization and system picture switching are achieved, the display problem is solved for one intelligent terminal to operate a plurality of android systems, the difference of different hardware platforms is shielded, and the universality and the portability are high. The whole process does not change the operation mechanism of the original android, and is stable, reliable and efficient.
Drawings
Fig. 1 is a native Android system display diagram.
Fig. 2 is a schematic diagram of displaying a system 2 picture when two Android systems are running.
Fig. 3 is a schematic diagram of the present invention when a screen of the system 1 is displayed when two Android systems are running.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in fig. 1, an application App requests a WindowManager service to display or create a window, the WindowManager service initiates a Layer creation request to a surfefinger service according to the request of the application App, and creates a Layer;
the WindowManager service calculates a proper Z value according to the running state of the application in the native Android system and the Layer information of other applications, the proper Z value is set in the SurfaceFlinger service, and the value determines the position of the Layer on the Z axis, so that the final visible area of all the layers can be influenced. And calculating the visible area merged layers after the layers are overlapped from top to bottom according to the Z value by the SurfaceFlinger service, and sending the merged layers to a display screen for displaying.
Based on the principle, the technical scheme of the invention is as follows:
the utility model provides a single Linux kernel many Android systems's intelligent terminal shows virtualization method, includes intelligent terminal, be provided with a plurality of Android systems in the intelligent terminal, all be provided with windows manager service and a plurality of application APP in every Android system, select an Android system as the main system, be provided with surface flag service in the main system, it includes following step:
step 1, modifying the SurfaceFlinger service to enable the SurfaceFlinger service to be shared among a plurality of android systems;
step 2, each application program App initiates a window display request to a WindowManager service in the current android system, the WindowManager service initiates a Layer creation request to a SurfaceFlinger service after receiving the window display request, and the SurfaceFlinger service creates a Layer for the application program App;
step 3, the WindowManager service calculates the Z value of the Layer of each application program App according to the running states of all the application programs App in the current android system and the Layer information of other application programs App, and sets the Z value into the SurfaceFlinger service; each application program APP corresponds to an independent Z value;
step 4, the SurfaceFlinger service adds a base value to the Z values of all Layer layers of each android system according to the window display request, and different android systems correspond to different base values;
and 5, calculating the superposed visible area of the Layer by the SurfaceFlinger service from top to bottom according to the Z value, combining the layers, and sending the combined Layer of the visible area to a display screen for display.
Preferably, the surfafinger service may further modify a base value, which is added to the Z value, of each android system Layer according to the window display request, so as to implement switching of a plurality of android system display screens. Specifically, the android system to be displayed has the largest base value added on the Z value.
In order to further understand the technical scheme of the invention, the following examples are given:
the Android systems in the intelligent terminal are assumed to be a system 1 and a system 2 respectively, and one of the systems is selected as a main system to share the SurfaceFlinger service; each system is provided with a unique identification code, and the SurfaceFlinger service can identify which system the creation layer request comes from according to the identification code.
As the Z value corresponding to the android system of the window to be displayed is the largest, as shown in fig. 2, if the window of the system 2 is to be displayed, the Z value of the system 2 needs to be greater than the Z value of the system 1, that is:
when all Layer layers in the system 1 set the z value to the surfefinger service, the surfefinger service will add a fixed offset value of 10000000 to the z value, and at this time, for the surfefinger service, all Layer layers in the system 1 are pushed 10000000 positions in the z-axis direction.
When all Layer layers in the system 2 set the z value to the surface flag service, the surface flag service will add a fixed offset value of 20000000 to the z value, and at this time, for the surface flag service, all Layer layers in the system 2 are pushed 20000000 positions in the z-axis direction.
Therefore, in the surface flinger service, the layer of the system 2 is located above the system 1, and the image displayed after merging is the image of the system 2, and the system 1 can perform drawing according to its own execution flow without being affected.
As shown in fig. 3, if the window of the system 1 is to be displayed, the Z value of the system 1 needs to be greater than the Z value of the system 2, that is:
when all Layer layers in the system 1 set the z value to the surface flag service, the surface flag service will add a fixed offset value of 20000000 to the z value, and at this time, for the surface flag service, all Layer layers in the system 1 are pushed 20000000 positions in the z-axis direction.
When all Layer layers in the system 2 set the z value to the surfefinger service, the surfefinger service will add a fixed offset value of 10000000 to the z value, and at this time, for the surfefinger service, all Layer layers in the system 2 are pushed 10000000 positions in the z-axis direction.
Therefore, in the surface flicker service, the layer of the system 1 is located above the system 2, the combined and displayed picture is the picture of the system 1, and the system 2 can perform drawing according to its own execution flow without being affected.
Finally, it should be noted that the above examples are only used to illustrate the technical solutions of the present invention and not to limit the same; although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art will understand that: modifications to the specific embodiments of the invention or equivalent substitutions for parts of the technical features may be made; without departing from the spirit of the present invention, it is intended to cover all aspects of the invention as defined by the appended claims.

Claims (3)

1. The utility model provides a single Linux kernel many Android systems's intelligent terminal shows virtualization method, includes intelligent terminal, be provided with a plurality of Android systems in the intelligent terminal, all be provided with windows manager service and a plurality of application APP in every Android system, select an Android system as the main system, be provided with surface flag service in the main system, its characterized in that includes following steps:
step 1, modifying the SurfaceFlinger service to enable the SurfaceFlinger service to be shared among a plurality of android systems;
step 2, each application program App initiates a window display request to a WindowManager service in the current android system, the WindowManager service initiates a Layer creation request to a SurfaceFlinger service after receiving the window display request, and the SurfaceFlinger service creates a Layer for the application program App;
step 3, the WindowManager service calculates the Z value of the Layer of each application program App according to the running states of all the application programs App in the current android system and the Layer information of other application programs App, and sets the Z value into the SurfaceFlinger service; each application program APP corresponds to an independent Z value;
step 4, the SurfaceFlinger service adds a base value to the Z values of all Layer layers of each android system according to the window display request, and different android systems correspond to different base values;
and 5, calculating the superposed visible area of the Layer by the SurfaceFlinger service from top to bottom according to the Z value, combining the layers, and sending the combined Layer of the visible area to a display screen for display.
2. The method for virtualizing the display of the intelligent terminal with the single Linux kernel and the multiple Android systems according to claim 1, wherein the method comprises the following steps: and the SurfaceFlinger service also modifies the base value of each android system Layer added on the Z value according to the window display request so as to realize the switching of a plurality of android system display pictures.
3. The method for virtualizing the display of the intelligent terminal with the single Linux kernel and the multiple Android systems according to claim 1 or 2, wherein the method comprises the following steps: and the android system of the window to be displayed has the maximum base value added on the Z value.
CN201810010116.1A 2018-01-05 2018-01-05 Single Linux kernel multi-Android system intelligent terminal display virtualization method Active CN108279963B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810010116.1A CN108279963B (en) 2018-01-05 2018-01-05 Single Linux kernel multi-Android system intelligent terminal display virtualization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810010116.1A CN108279963B (en) 2018-01-05 2018-01-05 Single Linux kernel multi-Android system intelligent terminal display virtualization method

Publications (2)

Publication Number Publication Date
CN108279963A CN108279963A (en) 2018-07-13
CN108279963B true CN108279963B (en) 2020-11-20

Family

ID=62803196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810010116.1A Active CN108279963B (en) 2018-01-05 2018-01-05 Single Linux kernel multi-Android system intelligent terminal display virtualization method

Country Status (1)

Country Link
CN (1) CN108279963B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110018894A (en) * 2019-04-09 2019-07-16 西安外事学院 A kind of multisystem based on Android container and single system switching method and device
CN112114916B (en) * 2020-08-31 2021-06-08 北京技德系统技术有限公司 Method and device for compatibly running Android application on Linux operating system
WO2022134179A1 (en) * 2020-12-25 2022-06-30 安徽鸿程光电有限公司 Target area setting method and apparatus, electronic device and storage medium
CN112860364A (en) * 2021-02-07 2021-05-28 麒麟软件有限公司 Android graph display method based on Linux kernel
CN113641437B (en) * 2021-08-16 2023-06-16 深圳技德智能科技研究院有限公司 Android-compatible application interface rotation method and device for Linux

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US9077731B2 (en) * 2010-10-01 2015-07-07 Z124 Extended graphics context with common compositing
CN105404547A (en) * 2014-09-12 2016-03-16 阿里巴巴集团控股有限公司 Fusion method and device of operating system
CN105677315A (en) * 2015-12-28 2016-06-15 北京元心科技有限公司 interface display method of multiple operating systems and intelligent terminal
WO2016101810A1 (en) * 2014-12-23 2016-06-30 阿里巴巴集团控股有限公司 Method for switching display object in multi-window system and device thereof
CN105872711A (en) * 2016-04-21 2016-08-17 北京元心科技有限公司 Switching animation display method and device during multi-system switching
CN106843796A (en) * 2017-03-01 2017-06-13 北京海杭通讯科技有限公司 A kind of single-screen shows the display methods of dual system picture
CN106951249A (en) * 2017-03-16 2017-07-14 北京元心科技有限公司 Method for managing windows in multi-system terminal equipment and multi-system terminal equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9077731B2 (en) * 2010-10-01 2015-07-07 Z124 Extended graphics context with common compositing
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
CN105404547A (en) * 2014-09-12 2016-03-16 阿里巴巴集团控股有限公司 Fusion method and device of operating system
WO2016101810A1 (en) * 2014-12-23 2016-06-30 阿里巴巴集团控股有限公司 Method for switching display object in multi-window system and device thereof
CN105677315A (en) * 2015-12-28 2016-06-15 北京元心科技有限公司 interface display method of multiple operating systems and intelligent terminal
CN105872711A (en) * 2016-04-21 2016-08-17 北京元心科技有限公司 Switching animation display method and device during multi-system switching
CN106843796A (en) * 2017-03-01 2017-06-13 北京海杭通讯科技有限公司 A kind of single-screen shows the display methods of dual system picture
CN106951249A (en) * 2017-03-16 2017-07-14 北京元心科技有限公司 Method for managing windows in multi-system terminal equipment and multi-system terminal equipment

Also Published As

Publication number Publication date
CN108279963A (en) 2018-07-13

Similar Documents

Publication Publication Date Title
CN108279963B (en) Single Linux kernel multi-Android system intelligent terminal display virtualization method
US10650484B2 (en) Dynamic and application-specific virtualized graphics processing
AU2012294598B2 (en) Lock screens to access work environments on a personal mobile device
US9465633B2 (en) Displaying applications of a virtual mobile device in a user interface of a mobile device
WO2015176448A1 (en) Method and apparatus for intelligent screen splitting of terminal
CN104137482A (en) Disaster recovery data center configuration method and device under cloud computing framework
CN104915115A (en) Application program switching method and device for terminal
CN105580392A (en) Seamless call transitions
US9552186B2 (en) Data processing method and electronic device
US20110219373A1 (en) Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform
CN111800462A (en) Micro-service instance processing method and device, computer equipment and storage medium
CN107102853B (en) Method for customizing mobile operating system to be compatible with Android application
CN104571870A (en) Method and device for processing application information
WO2013066575A1 (en) Optimization of distribution of over the -air (ota) updates to portable computing devices
CN103106007A (en) Icon display method and device
WO2015117445A1 (en) Method and device for processing task window
CN109271211A (en) Method, apparatus of attending to anything else, equipment and the medium of application program
CN104243602A (en) User information synchronizing device, system and method
CN105072193A (en) Cloud sea OS (Operating System) deployment method under multi-data centre
CN104598309A (en) Multi-mode OS (operating system) based on OS virtualization and creating and switching method thereof
CN104133671A (en) Hardware interface shielding device and method of digital processing equipment
CN111158820B (en) Control click event processing method and device, electronic equipment and storage medium
CN110879754A (en) Method and equipment for realizing virtualization
CN106250212A (en) Resource access method and device
US9225818B2 (en) Mobile terminal

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