WO2015014013A1 - 终端、用户界面的显示控制方法和显示控制系统 - Google Patents

终端、用户界面的显示控制方法和显示控制系统 Download PDF

Info

Publication number
WO2015014013A1
WO2015014013A1 PCT/CN2013/084351 CN2013084351W WO2015014013A1 WO 2015014013 A1 WO2015014013 A1 WO 2015014013A1 CN 2013084351 W CN2013084351 W CN 2013084351W WO 2015014013 A1 WO2015014013 A1 WO 2015014013A1
Authority
WO
WIPO (PCT)
Prior art keywords
user interface
processor
application
processing unit
cpu
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.)
Ceased
Application number
PCT/CN2013/084351
Other languages
English (en)
French (fr)
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.)
Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Original Assignee
Yulong Computer Telecommunication Scientific Shenzhen 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
Priority claimed from CN201310327039XA external-priority patent/CN103402018A/zh
Priority claimed from CN2013103257662A external-priority patent/CN103400085A/zh
Priority claimed from CN201310326704.3A external-priority patent/CN103400081B/zh
Priority claimed from CN201310325657.0A external-priority patent/CN103400088B/zh
Application filed by Yulong Computer Telecommunication Scientific Shenzhen Co Ltd filed Critical Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Publication of WO2015014013A1 publication Critical patent/WO2015014013A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Definitions

  • Terminal user interface display control method and display control system
  • the present invention relates to the field of data security technologies, and in particular to a terminal, a display control method for a user interface, and a display control system. Background technique
  • a number of peripherals are installed in the terminal, such as a display screen, a touch screen, a camera, a button, a communication module, a sensor module, and the like.
  • the processor can transmit data to any peripheral device under the control of any application, and can also receive any peripheral device.
  • Data when there are some applications with excessive permissions in the terminal, especially third-party applications with uncertain sources, these applications can easily control the only processor in the terminal to call any data in it. , including important, private data, and even arbitrarily uploaded to other terminals or servers.
  • the present invention is based on at least one of the above problems, and proposes a new technical solution, which enables different types of data in a terminal to be processed by different processors, and the processors are physically isolated. And different types of data are physically isolated and stored, which effectively improves the security of the terminal.
  • the present invention provides a terminal, including: a first processor and a second processor, respectively configured to process different types of data in the terminal; the first memory is only connected to the first a processor, configured to store data processed by the first processor; and a second memory connected only to the second processor, configured to store data processed by the second processor.
  • first processor and the second processor are not used to limit the number of processors in the terminal to two, and it is obvious that more processors can be included in the terminal.
  • first and second represent the relationship between any two processors in the terminal, and are used to distinguish any two processors that are compared.
  • processor 1 and processor 2 when processor 1 and processor 2 are selected for comparison, either processor 1 and processor 2 may be referred to as “first processor” and the other is “"Secondprocessor”; and when processor 2 and processor 3 are selected for comparison, either processor 2 and processor 3 may be referred to as “first processor” and the other as “second processor”” , So on and so forth.
  • processors can be used to process the same type of data, and the multiple processors should be treated as one processor group, then the "first processor” and the "second processor". It is also possible to actually represent a processor group for processing the same type of data, each processor group containing one or more processors. At the same time, in order to correspond to more types of data, it is obvious that there may be more processor groups in the terminal, such as "third processor group", "fourth processor group,” and the like.
  • the first processor is further configured to: when performing data interaction with an external device of the terminal, send an interrupt signal to the second processor to interrupt the second Data interaction between the processor and an external device of the terminal.
  • the first processing may be prioritized by sending an interrupt signal to the second processor. Interacting with the external device, thereby avoiding the first processor and the second processor simultaneously interacting with the external device, thereby reducing the possibility of causing data security problems; on the other hand, when the first processor is The business data that needs to be processed is more urgent, or the data processed by the first processor is more important or more private, and the processing can be prioritized to ensure that data processing is not delayed.
  • the first processor is further configured to: when completing a data interaction operation with an external device of the terminal, send a recovery signal to the second processor to restore the A data interaction operation between the second processor and an external device of the terminal.
  • the data processing process in which the second processor is interrupted is restored in time, so that the data processing process that needs to be performed by the first processor and the second processor can be arranged in an orderly manner.
  • the impact on the processing of the second processor can be reduced as much as possible.
  • the sending of the interrupt signal and the resume signal may also be sent by the second processor to the first processor, as long as the preset data importance level, data processing order, and the like are met.
  • the method further includes: a line switching device, one end is connected to the external device of the terminal, and the other end is respectively connected to the first processor and the second processor, for implementing Holding or disconnecting a path between the first processor or the second processor and an external device of the terminal; wherein, when the external device interacts with the first processor, the line The switching device disconnects the path between the external device and the second processor, and when the external device interacts with the second processor, the line switching device disconnects the external device from the The path between the first processors.
  • the line switching device is configured to control the interaction between the first processor and the second processor and the external device by the physical switching device, and physically isolate the interaction between different types of data and the external device, Avoid the problem that data, especially important or private data, is easily acquired and leaked when interacting at the same time.
  • control port of the line switching device is connected to the first processor, and the line switching device is further configured to: receive, by the control port, the In the case of the first switching instruction of the first processor, determining that the first processor needs to interact with the external device, and receiving a second switching instruction from the first processor through the control port In the case that the second processor needs to interact with the external device, where the first processor needs to perform data interaction with an external device of the terminal, sending the first switching instruction, and receiving And transmitting the second switching instruction to a handover request from the second processor and accepting the handover request.
  • the control port is used to directly control the line switching action of the line switching device.
  • the first processor can be any processor in the terminal, and by connecting the connection relationship between any processor and the control port, the first processor can realize the connection between the physical lines of all the processors and the external device. Switch control.
  • the first processor may also be a processor in the terminal for processing important, private types of data, such that the first processor is a "secure processor" relative to other processors within the terminal, by the first processor
  • the processor or the like controls the line switching device to prevent the data processed by the first processor from being acquired by the illegal application.
  • the line switching device is further configured to: determine, when the data that the external device needs to transmit is the data type corresponding to the first processor, determine the external The device needs to interact with the first processor; if it is detected that the data that the external device needs to transmit is the data type corresponding to the second processor, determining that the external device needs to be related to the second processing The device interacts.
  • the line switching device directly switches the line by performing type identification on the data that the external device needs to transmit, thereby realizing control of the data transmission direction, and ensuring the data type and the specific transmission to the processor. Corresponding to each other, avoiding security problems such as data being stolen due to incorrect transmission of data to an uncorresponding processor.
  • the second processor is further configured to: when receiving an interrupt signal from the first processor, set a port that is itself connected to the external device to a high impedance status.
  • the second processor sets the port level, controls the physical connection relationship with the external device, and physically isolates the interaction between the first processor and the external device, thereby avoiding multiple processes due to multiple processes.
  • the device is in a line connection state with the external device, which causes the data to be easily acquired and leaked.
  • the first memory is further configured to: store a first desktop launcher or a first operating system; the second memory is further configured to: store a second desktop launcher or second An operating system; wherein the first processor performs a user interface interaction by running the first desktop launcher or the first user interface displayed after the first operating system; The second user interface displayed after the second desktop launcher or the second operating system performs user interface interaction.
  • first desktop launcher or the first operating system By storing the first desktop launcher or the first operating system in the first storage unit, storing the second desktop launcher or the second operating system in the second storage unit, so that only the first processing unit can directly invoke the first desktop boot Or the first operating system, only the second processing unit can directly invoke the second desktop launcher or the second operating system to ensure the security of the application (desktop launcher) and the system (operating system) to avoid damage or tampering.
  • the second processing unit invokes the second desktop launcher or the second operating system, so that the first processing unit processes the service and the second processing unit processes
  • the business can independently implement independent control requirements and UI interactions, and also help to meet their data privacy requirements, thereby improving the security of the terminal and the convenience in use.
  • the first processor is further configured to: when the user interface interaction is required, detect a currently displayed user interface, and if the first user interface is If the second user interface is, sending an interface switching instruction to the second processor, and after the second processor turns off or puts the second desktop initiator or the second operating system into the background, Running the first desktop launcher or the first operating system; and the second processor is further configured to: when the user interface interaction is required, detect the currently displayed user interface, if the second user interface is Directly performing an interaction, if the first user interface is, sending an interface switching instruction to the first processor, and turning off or placing the first desktop initiator or the first operating system at the first processor After the background, the second desktop launcher or the second operating system is run.
  • the second processing unit can still switch to the first user interface (or by the first user) by sending an interface switching instruction during the UI interaction using the corresponding second user interface.
  • the interface is switched to the second user interface, which is not described here.
  • the first processor is further configured to: receive an interface from the second processor when interacting with the first application by using the first user interface a switching instruction, where the interface switching instruction indicates that the second processor wishes to interact with the second application by using the second user interface, and the priority of the first application is higher than the second application In the case of continuing the interaction until the interaction is completed, if the priority of the first application is lower than the second application, the first desktop initiator or the first operating system is Closed or placed in the background to enable the second user interface by the second processor;
  • the second processor is further configured to: when receiving an interface switching instruction from the first processor when interacting with the third application by using the second user interface, the interface switching instruction indicates the The first processor hopes to interact with the fourth application through the first user interface, and if the priority of the third application is higher than the fourth application, continue to perform the interaction until the interaction is completed. In a case where the priority of the third application is lower than the fourth application, the second desktop launcher or the second operating system is turned off or placed in the background to be booted by the first processor The first user interface.
  • the priority of the application (or data service) that needs to be processed by the first processing unit and the second processing unit is determined, and the application with higher priority is preferentially processed, so that there are multiple In the case of a processing unit and multiple user interfaces, it is possible to effectively communicate and coordinate the sequence of processing tasks, so that important data can be prioritized and better terminal operation management can be realized.
  • the second processor is further configured to: if the first processor has a lower priority than the second application in the first application, interrupting The interaction of the first application, after completing the interaction with the second application, sending a resume instruction to the first processor, so that the first processor continues to pass the first user interface. Interacting with the first application; and
  • the first processor is further configured to: if the second processor interrupts interaction with the third application when the priority of the third application is lower than the fourth application, After the interaction with the fourth application is completed, a resume instruction is further sent to the second processor, so that the second processor continues to interact with the third application through the second user interface.
  • the first processor is further configured to: shut down the first desktop initiator or the first operating system according to an interface switching command received by the first user interface Putting in the background; the second processor is further configured to: run the second desktop launcher or the second operating system according to the interface switching command received by the first user interface; and the second processing The device is further configured to: shut down or put the second desktop launcher or the second operating system into the background according to the interface switching command received by the second user interface; the first processor is further configured to: The interface switching command received by the second user interface is executed to run the first desktop initiator or the first operating system.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the first processor is configured to process private data in the terminal
  • the second processor is configured to process non-private data in the terminal.
  • the private data and the second processing unit are processed by the first processing unit to process the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding use only in the terminal.
  • any application can easily obtain private data from the single processor only through privilege cracking or the like.
  • the private data processed by the first processing unit and the second storage unit are stored by the first storage unit to store the non-private data processed by the second processing unit, so that the private data and the non-private data are also physically stored and invoked. Isolation, resulting in better data security.
  • private data refers to data that is private to the user, such as passwords, account numbers, short message content, mail content, financial data, etc., rather than private data means that the data is not personal privacy for the user.
  • Data such as downloaded music, e-books, radio data, web news, and more.
  • the invention also provides a display control method for a user interface, comprising: passing the first processing unit and the second processing list Processing the different types of data in the terminal; storing the processed data by the first processing unit and the second processing unit by using the first storage unit and the second storage unit, respectively, and the first storage unit a first desktop launcher or a first operating system is further stored, the second storage unit further stores a second desktop launcher or a second operating system, wherein the first processor runs the first desktop a first user interface displayed after the initiator or the first operating system, performing user interface interaction; and displaying, by the second processor, after running the second desktop launcher or the second operating system Two user interfaces, performing user interface interaction.
  • first desktop launcher or the first operating system By storing the first desktop launcher or the first operating system in the first storage unit, storing the second desktop launcher or the second operating system in the second storage unit, so that only the first processing unit can directly invoke the first desktop boot Or the first operating system, only the second processing unit can directly invoke the second desktop launcher or the second operating system to ensure the security of the application (desktop launcher) and the system (operating system) to avoid damage or tampering.
  • the second processing unit invokes the second desktop launcher or the second operating system, so that the first processing unit processes the service and the second processing unit processes
  • the business can independently implement independent control requirements and UI interactions, and also help to meet their data privacy requirements, thereby improving the security of the terminal and the convenience in use.
  • the first processing unit detects a currently displayed user interface when a user interface interaction is required, and if the first user interface is, directly performs an interaction, if The second user interface sends an interface switching instruction to the second processing unit, and after the second processing unit turns off or puts the second desktop initiator or the second operating system into the background, a desktop launcher or a first operating system; and the second processing unit detects a currently displayed user interface when a user interface interaction is required, and if the second user interface, directly performs an interaction, if The first user interface sends an interface switching instruction to the first processing unit, and after the first processing unit turns off or puts the first desktop initiator or the first operating system into the background, Two desktop launchers or a second operating system.
  • the second processing unit can still switch to the first user interface (or by the first user) by sending an interface switching instruction during the UI interaction using the corresponding second user interface.
  • the interface is switched to the second user interface, which is not described here.
  • the method further includes: when the first processing unit interacts with the first application by using the first user interface, if receiving an interface switch from the second processing unit An instruction that the interface switching instruction indicates that the second processing unit desires to interact with the second application by using the second user interface, and the first processing unit has a higher priority than the first application.
  • the interaction is continued until the interaction is completed, and the first desktop launcher or the first operation is performed if the priority of the first application is lower than the second application
  • the system is turned off or placed in the background to enable the second user interface by the second processor;
  • the second processing unit when interacting with the third application by the second user interface, if receiving an interface switching instruction from the first processing unit, the interface switching instruction indicating the first processing unit Desiring to interact with the fourth application through the first user interface, the second processing unit continues to perform the interaction until the completion of the third application is higher than the fourth application Interacting, in a case where the priority of the third application is lower than the fourth application, the second desktop launcher or the second operating system is closed or placed in the background to be processed by the first The first user interface is launched.
  • the priority of the application (or data service) that needs to be processed by the first processing unit and the second processing unit is determined, and the application with higher priority is preferentially processed, so that there are multiple In the case of a processing unit and multiple user interfaces, it is possible to effectively communicate and coordinate the sequence of processing tasks, so that important data can be prioritized and better terminal operation management can be realized.
  • the method further includes: if the first processing unit is in the first application If the priority is lower than the second application, the interaction with the first application is interrupted, and after the second processing unit completes the interaction with the second application, the second processing unit further a processing unit transmitting a resume instruction, causing the first processing unit to continue to interact with the first application through the first user interface; and if a priority of the second processing unit in the third application If the interaction with the third application is interrupted, the first processing unit further performs the second processing after completing the interaction with the fourth application. The unit sends a resume instruction to cause the second processing unit to continue to interact with the third application through the second user interface.
  • the method further includes: according to the interface switching command received by the first user interface, the first processing unit turns off or puts the first desktop initiator or the first operating system Up to the background, and the second processing unit runs the second desktop launcher or the second operating system; and according to the interface switching command received by the second user interface, the second processing unit uses the second The desktop launcher or the second operating system is shut down or placed in the background, and the first processing unit runs the first desktop launcher or the first operating system.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the method further includes: setting the first user interface or the second user interface as a default interface; each time the power is turned on, the corresponding first desktop launcher is operated by default or The first operating system or the second desktop launcher or the second operating system.
  • the terminal by setting a default interface, the terminal only needs to run a specified desktop initiator or operating system when booting, and it is not necessary to run all desktop initiators or operating systems at the same time, thereby helping to reduce the terminal.
  • the terminal can also not set the default interface.
  • booting all the desktop launchers or operating systems are started at the same time, but only one of the user interfaces is displayed, and the others are placed in the background, when the user needs to switch to other
  • the user interface it is not necessary to start the corresponding desktop launcher or operating system in real time, and the switching can be directly performed, which helps to shorten the waiting time of the user and enhance the user experience.
  • the method further includes: the first processor is configured to process private data in the terminal, and the second processor is configured to process non-private data in the terminal. .
  • the private data and the second processing unit are processed by the first processing unit to process the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding use only in the terminal.
  • any application can easily obtain private data from the single processor only through privilege cracking or the like.
  • the private data processed by the first processing unit and the second storage unit are stored by the first storage unit to store the non-private data processed by the second processing unit, so that the private data and the non-private data are also physically stored and invoked. Isolation, resulting in better data security.
  • private data refers to data that is private to the user, such as passwords, account numbers, short message content, mail content, financial data, etc., rather than private data means that the data is not personal privacy for the user.
  • Data such as downloaded music, e-books, radio data, web news, and more.
  • the present invention also provides a display control system for a user interface, including: a first processing unit and a second processing unit, respectively configured to process different types of data in the terminal; the first storage unit and the second storage unit, respectively And storing the data processed by the first processing unit and the second processing unit, and the first storage unit is further configured to store a first desktop initiator or a first operating system, the second storage The unit is also used to store the second desktop launcher or the second operation
  • the first processor is further configured to: perform a user interface interaction by running the first desktop launcher or the first user interface displayed after the first operating system; the second processing The device is further configured to: perform a user interface interaction by running the second desktop launcher or the second user interface displayed after the second operating system.
  • first desktop launcher or the first operating system By storing the first desktop launcher or the first operating system in the first storage unit, storing the second desktop launcher or the second operating system in the second storage unit, so that only the first processing unit can directly invoke the first desktop boot Or the first operating system, only the second processing unit can directly invoke the second desktop launcher or the second operating system to ensure the security of the application (desktop launcher) and the system (operating system) to avoid damage or tampering.
  • the second processing unit invokes the second desktop launcher or the second operating system, so that the first processing unit processes the service and the second processing unit processes
  • the business can independently implement independent control requirements and UI interactions, and also help to meet their data privacy requirements, thereby improving the security of the terminal and the convenience in use.
  • the first processing unit is further configured to: when the user interface interaction is required, detect the currently displayed user interface, and if the first user interface is, perform the interaction directly, if The second user interface sends an interface switching instruction to the second processing unit, and after the second processing unit closes or puts the second desktop initiator or the second operating system into the background, The first desktop launcher or the first operating system; and the second processing unit is further configured to: when the user interface interaction is required, detect the currently displayed user interface, and if the second user interface is directly executed Interacting, if the first user interface is, sending an interface switching instruction to the first processing unit, and closing or placing the first desktop launcher or the first operating system in the background in the first processing unit Thereafter, the second desktop launcher or the second operating system is run.
  • the second processing unit can still switch to the first user interface (or by the first user) by sending an interface switching instruction during the UI interaction using the corresponding second user interface.
  • the interface is switched to the second user interface, which is not described here.
  • the first processing unit is further configured to: receive an interface from the second processing unit when interacting with the first application by using the first user interface a switching instruction, where the interface switching instruction indicates that the second processing unit wishes to interact with the second application by using the second user interface, and the first processing unit has a higher priority in the first application In the case of the second application, the interaction is continued until the interaction is completed, and in the case where the priority of the first application is lower than the second application, the first desktop launcher or the first The operating system is shut down or placed in the background to initiate the second user interface by the second processor;
  • the second processing unit is further configured to: when interacting with the third application through the second user interface, if receiving an interface switching instruction from the first processing unit, the interface switching instruction indicates the The first processing unit wishes to interact with the fourth application through the first user interface, and the second processing unit continues if the priority of the third application is higher than the fourth application Performing an interaction until the interaction is completed, in a case where the priority of the third application is lower than the fourth application, the second desktop launcher or the second operating system is closed or placed in the background to The first processor starts the first user interface.
  • the priority of the application (or data service) that needs to be processed by the first processing unit and the second processing unit is determined, and the application with higher priority is preferentially processed, so that there are multiple In the case of a processing unit and multiple user interfaces, it is possible to effectively communicate and coordinate the sequence of processing tasks, so that important data can be prioritized and better terminal operation management can be realized.
  • the first processing unit is further configured to: if the second processing unit has a lower priority than the fourth application in the third application, Interrupting the interaction with the third application, the first processing unit, after completing the interaction with the fourth application, further sending a resume instruction to the second processing unit, to enable the second processing unit Continue to communicate with the third application through the second user interface
  • the second processing unit is further configured to: if the first processing unit is in a lower priority than the second application, the first processing unit is interrupted with the first After the interaction of the application, the second processing unit further sends a resume instruction to the first processing unit after completing the interaction with the second application, so that the first processing unit continues to pass the first A user interface interacts with the first application.
  • the first processing unit is further configured to: shut down the first desktop initiator or the first operating system according to the interface switching command received by the first user interface Putting in the background to run the second desktop launcher or the second operating system by the second processing unit; and, the second processing unit is further configured to: switch according to the interface received by the second user interface And stopping or placing the second desktop launcher or the second operating system to the background to run the first desktop launcher or the first operating system by the first processing unit.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the method further includes: a setting unit, configured to set the first user interface or the second user interface as a default interface; wherein, each time the device is powered on, the default is A processing unit runs the corresponding first desktop launcher or the first operating system, or the second processing unit runs the corresponding second desktop launcher or the second operating system.
  • a setting unit configured to set the first user interface or the second user interface as a default interface; wherein, each time the device is powered on, the default is A processing unit runs the corresponding first desktop launcher or the first operating system, or the second processing unit runs the corresponding second desktop launcher or the second operating system.
  • the terminal by setting a default interface, the terminal only needs to run a specified desktop initiator or operating system when booting, and it is not necessary to run all desktop initiators or operating systems at the same time, thereby helping to reduce the terminal.
  • the terminal can also not set the default interface.
  • booting all the desktop launchers or operating systems are started at the same time, but only one of the user interfaces is displayed, and the others are placed in the background, when the user needs to switch to other
  • the user interface it is not necessary to start the corresponding desktop launcher or operating system in real time, and the switching can be directly performed, which helps to shorten the waiting time of the user and enhance the user experience.
  • the first processing unit is configured to process private data in the terminal
  • the second processing unit is configured to process non-private data in the terminal.
  • the private data and the second processing unit are processed by the first processing unit to process the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding use only in the terminal.
  • any application can easily obtain private data from the single processor only through privilege cracking or the like.
  • the private data processed by the first processing unit and the second storage unit are stored by the first storage unit to store the non-private data processed by the second processing unit, so that the private data and the non-private data are also physically stored and invoked. Isolation, resulting in better data security.
  • private data refers to data that is private to the user, such as passwords, account numbers, short message content, mail content, financial data, etc., rather than private data means that the data is not personal privacy for the user.
  • Data such as downloaded music, e-books, radio data, web news, and more.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention may be employed in one or more computers having computer usable program code embodied therein A form of computer program product embodied on a storage medium, including but not limited to disk storage, CD-ROM, optical storage, and the like.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • FIG. 1 is a schematic structural diagram of a terminal in the related art
  • FIG. 2 is a block diagram showing the structure of a terminal according to an embodiment of the present invention.
  • 3A shows a flow chart of a data processing method in accordance with one embodiment of the present invention
  • FIG. 3B illustrates a flow chart of a data processing method in accordance with another embodiment of the present invention
  • FIG. 4 shows a flow chart of a data processing method in accordance with an embodiment of the present invention
  • FIG. 5 is a block diagram showing a structure of a terminal for performing on-off control of a line between a processor and an external device according to an embodiment of the embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of a terminal according to another embodiment of the present invention.
  • FIG. 7A is a schematic structural diagram of a terminal in a specific implementation manner of the embodiment shown in FIG. 6;
  • FIG. 7B is a schematic structural diagram of a terminal in another specific implementation manner of the embodiment shown in FIG. 6;
  • FIG. 8 is a schematic structural diagram of a terminal including two or more processors in an embodiment of the embodiment shown in FIG. 6; FIG.
  • FIG. 9 is a schematic diagram of a terminal structure including two or more processors in another specific embodiment of the embodiment shown in FIG. 6; FIG.
  • FIG. 10 is a schematic structural diagram of a terminal in a specific implementation manner of the embodiment shown in FIG. 9; FIG.
  • FIG. 11 is a block diagram showing a structure of a terminal for performing on-off control of a line between a processor and an external device according to another embodiment of the embodiment of the present invention.
  • FIG. 12 is a schematic diagram of a terminal structure including two or more processors in an embodiment of the embodiment shown in FIG.
  • FIG. 13 is a schematic diagram of a terminal structure including two or more processors in another specific embodiment of the embodiment shown in FIG.
  • FIG. 14 is a schematic structural diagram of a terminal in a specific implementation manner of the embodiment shown in FIG. 13; FIG.
  • FIG. 15 is a block diagram showing a structure of a terminal for performing on-off control of a line between a processor and an external device according to still another embodiment of the embodiment of the present invention.
  • 16 is a schematic structural diagram of a terminal including two or more processors in an embodiment of the embodiment shown in FIG. 15; 17 is a schematic structural diagram of a terminal including two or more processors in another specific implementation manner of the embodiment shown in FIG. 15;
  • FIG. 18 is a schematic structural diagram of a terminal in a specific implementation manner of the embodiment shown in FIG. 17;
  • FIG. 19 is a schematic diagram showing a connection structure of a single communication module and a processor according to an embodiment of the present invention
  • FIG. 20 is a schematic diagram showing a connection structure of a plurality of communication modules and a processor according to an embodiment of the present invention
  • 21 is a schematic diagram of a connection structure of each communication module and two or more processors in the embodiment shown in FIG. 19 or FIG. 20;
  • Figure 22 is a diagram showing another connection structure of each communication module and two or more processors of the embodiment shown in Figure 19 or Figure 20;
  • FIG. 23 is a schematic diagram of a connection structure in a specific embodiment of the embodiment shown in FIG. 22;
  • FIG. 24 is a schematic diagram showing a connection structure of a single communication module and a processor according to another embodiment of the present invention
  • FIG. 25 is a schematic diagram showing a connection structure of a plurality of communication modules and a processor according to another embodiment of the present invention
  • 26 is a schematic diagram showing a connection structure of each communication module and two or more processors in the embodiment shown in FIG. 24 or FIG. 25;
  • Figure 27 is a diagram showing another connection structure of each communication module and two or more processors in the embodiment shown in Figure 24 or Figure 25;
  • FIG. 28 is a schematic view showing a connection structure in a specific embodiment of the embodiment shown in FIG. 27.
  • FIG. 29 is a block diagram showing the structure of a terminal according to still another embodiment of the present invention.
  • Figure 30 is a schematic structural view of an embodiment of the terminal shown in Figure 29;
  • Figure 31 is a schematic structural view of another embodiment of the terminal shown in Figure 29;
  • Figure 32 is a schematic structural view of still another embodiment of the terminal shown in Figure 29;
  • FIG. 33 is a flowchart showing a CPU 1 performing user interface switching control according to an embodiment of the present invention.
  • FIG. 34 shows a flowchart of the CPU 2 performing user interface switching control according to an embodiment of the present invention
  • Figure 35 shows a schematic block diagram of a display control system of a user interface in accordance with an embodiment of the present invention. detailed description
  • FIG. 2 shows a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • the present invention provides a terminal, including: a first processor (such as the CPU 1 shown in FIG. 2) and a second processor (such as the CPU 2 shown in FIG. 2) for respectively Processing different types of data in the terminal; the first memory (such as RAM1, EMMC1, etc. shown in FIG. 2) is only connected to the first processor for storing data processed by the first processor; A memory (such as RAM2, EMMC2, etc. shown in FIG. 2) is only connected to the second processor for storing data processed by the second processor.
  • a first processor such as the CPU 1 shown in FIG. 2
  • a second processor such as the CPU 2 shown in FIG. 2 for respectively Processing different types of data in the terminal
  • the first memory such as RAM1, EMMC1, etc. shown in FIG. 2
  • a memory such as RAM2, EMMC2, etc. shown in FIG. 2 is only connected to the second processor for storing data processed by the second processor.
  • first processor and the second processor are not used to limit the number of processors in the terminal to two, and It is obvious that more terminals can be included in the terminal.
  • first and second represent the relationship between any two processors in the terminal, and are used to distinguish any two processors that are compared.
  • processor 1 and processor 2 when processor 1 and processor 2 are selected for comparison, either processor 1 and processor 2 may be referred to as “first processor” and the other is “"Secondprocessor”; and when processor 2 and processor 3 are selected for comparison, either processor 2 and processor 3 may be referred to as “first processor” and the other as “second processor”” , So on and so forth.
  • processors can be used to process the same type of data, and the multiple processors should be treated as one processor group, then the "first processor” and the "second processor". It is also possible to actually represent a processor group for processing the same type of data, each processor group containing one or more processors. At the same time, in order to respond to more types of data, there may obviously be more processor groups in the terminal, such as "third processor group", "fourth processor group,” and the like.
  • the first processor and the second processor are respectively used to process different types of data in the terminal, and thus relate to classifying data in the terminal. For example, according to the importance of the data, the data is divided into core data and non-core data; or according to the privacy of the data, the data is divided into private data and non-private data; or according to the data transmission direction, the data is divided into Send data and received data, and so on.
  • Each classification can be preset by the manufacturer, or it can be determined by the user according to his actual situation.
  • data associated with certain applications can be used as private data or non-private data, such as "address book” and "call record”.
  • Application-related data such as ",” “short message”, “mail”, whether read or written, is counted as private data, or data related to a game application is treated as non-private data;
  • a certain type of data may be used as private data or non-private data, such as interactive data with online banking as private data, and software update package data as non-private data, etc., and may also include other The way to distinguish, not here - enumeration.
  • the first processor is further configured to: when performing data interaction with an external device of the terminal, send an interrupt signal to the second processor to interrupt the second Data interaction between the processor and an external device of the terminal.
  • the first processing may be prioritized by sending an interrupt signal to the second processor. Interacting with the external device, thereby avoiding the first processor and the second processor simultaneously interacting with the external device, thereby reducing the possibility of causing data security problems; on the other hand, when the first processor is The business data that needs to be processed is more urgent, or the data processed by the first processor is more important or more private, and the processing can be prioritized to ensure that data processing is not delayed.
  • the first processor is further configured to: when completing a data interaction operation with an external device of the terminal, send a recovery signal to the second processor to restore the A data interaction operation between the second processor and an external device of the terminal.
  • the data processing process in which the second processor is interrupted is restored in time, so that the data processing process that needs to be performed by the first processor and the second processor can be arranged in an orderly manner.
  • the impact on the processing of the second processor can be reduced as much as possible.
  • the sending of the interrupt signal and the resume signal may also be sent by the second processor to the first processor, as long as the preset data importance level, data processing order, and the like are met.
  • Step 302 Determine whether the current service needs the CPU1 to interact with the external device of the terminal. It is assumed that the current user terminal receives an incoming call, and the incoming call belongs to the private data of the user, so it is processed by the CPU1 to determine that the CPU1 needs to be audio when processing the incoming call data. Processing devices such as speakers interact. If the current service does not require CPU1 to interact with the external device of the terminal, the process ends.
  • Step 304 Determine whether the CPU1 is currently connected to the audio processing device, if not connected to the audio processing device.
  • Step 306 the CPU 1 sends an interrupt signal to the CPU 2 to cause the CPU 2 to disconnect from the audio processing device.
  • Step 308 the CPU 1 is connected to the audio processing device.
  • the connection between the CPU 2 and the audio processing device can be interrupted, so that the CPU 1 can be connected to the audio processing device, even if The audio processing device is occupied by the CPU 2, and the incoming call can be received in time.
  • the CPU 2 can be notified to continue the unfinished business, for example, to continue playing music.
  • a processing mechanism it is possible to conduct business in an orderly manner in the case where a plurality of processors coexist, without affecting the normal use of the user, and since the plurality of processors are respectively used to process different data, the data processing is not only improved. Speed also further enhances data security.
  • FIG. 3B a processing flow chart of the CPU 2 with respect to the CPU 1 shown in Fig. 3A is shown.
  • Step 310 Determine whether the CPU 2 receives the interrupt signal from the CPU 1, and if yes, proceeds to step 312, otherwise proceeds to step 314.
  • step 312 the CPU 2 disconnects from the peripheral device, and if the CPU 2 is processing the player application data, disconnects the audio processing device.
  • Step 314 Determine whether the current service to be processed by the CPU 2 needs to use the peripheral device. For example, the picture needs to be sent to another terminal through Bluetooth. If yes, the process proceeds to step 316, otherwise the process ends.
  • Step 316 the CPU 2 is connected to the Bluetooth.
  • the above step 312 further includes continuing to connect to the audio device and continuing to play music upon receiving the notification that the CPU 1 has completed the business process.
  • CPU1 wants to connect with the display
  • CPU1 sends to CPU2.
  • the interrupt signal, CPU2 interrupts the playback of the video A, and when it is determined that the CPU 2 is disconnected from the display, the CPU 1 establishes a connection with the display. After the video call ends, the CPU 1 notifies the CPU 2 that the video A can continue to be played. After receiving the notification, the CPU 2 establishes a connection with the display screen and continues to display the video A.
  • the display screen is taken as an example, but in practical applications, connection switching of peripheral devices such as a touch screen and a speaker is also involved.
  • the processor that processes the new service can control the connection of other processors that are processing other services to the corresponding external device.
  • the other processor can be notified to continue to connect with the corresponding external device to continue the unfinished business.
  • FIG. 4 shows a flow chart of a data processing method in accordance with an embodiment of the present invention.
  • a terminal adopting the data processing method includes a first processing unit and a second processing unit, where the first processing unit is configured to process private data, The second processing unit is configured to process the non-private data.
  • the method may include: Step 402: When the first processing unit needs to interact with the external device of the terminal according to the private data, send an interrupt signal to the second processing unit, and interrupt the second processing. Data interaction between the unit and the external device; Step 404, when the first processing unit completes the interaction with the external device, sending a feedback signal to the second processing unit, notifying the second processing unit to continue with the external device Data interaction.
  • the terminal is configured with multiple processors, and some of the processors are designated to process the user's private data, and the remaining processors are used to process the user's non-private data, thereby enabling the plurality of data to be divided into multiple types. Processing can not only speed up the response, but also ensure the security of the data and improve the stability of the system.
  • the terminal since the terminal is configured with multiple processors, the interaction between the processor and the external device becomes relatively complicated. In order to coordinate the interaction process and sequence of the multiple processors with the external device, it is provided in the technical solution.
  • the second processing unit that processes the non-private data interrupts the service data being processed, and is in a waiting state, and is completed in the first processing unit.
  • the second processing unit is notified to continue the uncompleted data interaction.
  • Private data refers to data that the user belongs to personal privacy, such as passwords, account numbers, short message content, email content, financial data, etc.
  • non-private data refers to data that is not personal privacy for the user. For example, downloaded music, e-books, radio data, web news, etc.
  • An external device refers to a terminal other than a processor and a communication unit, such as a screen, a sensor, a Bluetooth, a WIFI, a camera, and the like.
  • the method further includes: when the first processing unit needs to interact with the external device according to the private data, sending an inquiry signal to the second processing unit, determining the Whether the second processing unit is interacting with the external device, and transmitting the interrupt signal to the second processing unit when determining that the second processing unit is interacting with the external device.
  • the first processing unit sends an interrupt signal to the second processing unit in the case of determining that the other processor is interacting with the external device, otherwise, the interrupt is not required to be sent to the second processing unit. signal.
  • the method further includes: when the second processing unit needs to interact with the external device according to the non-private data, sending an interrupt signal to the first processing unit, interrupting Data interaction between the first processing unit and the external device, and when the second processing unit completes data interaction with the external device, sending a feedback signal to the first processing unit, notifying The first processing unit continues with data interaction with the external device.
  • the second processing unit when the second processing unit needs to interact with the external device, it also needs to send an interrupt signal to the first processing unit to ensure that the most urgent and recent service data can be preferentially processed.
  • the method further includes: sending, by the second processing unit, the query signal to the first processing unit when the second processing unit needs to interact with the external device according to the non-private data, determining Whether the first processing unit is interacting with the external device, and transmitting the interrupt signal to the first processing unit when determining that the first processing unit is interacting with the external device.
  • the private data received from the outside is received by the first communication unit connected to the first processing unit, and received by the second communication unit connected to the second processing unit The non-private data of the outside.
  • the terminal is a multi-standby terminal, and the plurality of communication units are respectively connected to different processors, and different communication units process different service data.
  • the first communication unit can only process voice services
  • the second communication unit can only process Data business.
  • the method further includes: a line switching device 104, one end of which is connected to the external device 102 of the terminal, and the other end is respectively connected to the CPU1 (ie, a first processor) and a CPU 2 (ie, a second processor) for implementing a path between the CPU 1 or the CPU 2 and the external device 102 of the terminal Holding or disconnecting; wherein, when the external device 102 interacts with the CPU 1, the line switching device 104 disconnects the path between the external device 102 and the CPU 2, when the external device 102 interacts with the CPU 2 The line switching device 104 disconnects the path between the external device 102 and the CPU 1.
  • the external device 102 including a plurality of hardware devices preset in the terminal, except for the display screen (such as LCD, Liquid Crystal Display, liquid crystal display), touch screen (TW: Touch Window), camera (CAMERA) shown in FIG. 5,
  • the display screen such as LCD, Liquid Crystal Display, liquid crystal display
  • touch screen TW: Touch Window
  • camera CAMERA
  • buttons etc.
  • it can also include, for example, a communication module for wireless mobile communication, a sensor (SENSOR), a WIFI (Wireless Fidelity) module, a Bluetooth (BT) module, and a GPS (Global Position System). , Global Positioning System module, NFC ( Near Field Communication) module, Audio Codec (AUDIO CODEC), etc.
  • connection structure and data transmission mode between each external device 102 and the CPU 1, CPU 2 are actually similar, so that the specific connection structure and data can be described more clearly.
  • Transmission strategy the following will be described in detail with an external device 102 as an example. It should be clear to those skilled in the art that the following connection structure and data transmission strategy based on "External Device 102" actually shows that it can be applied to any external device 102 in the terminal.
  • the external device 102 is connected to the line switching device 104, and then connected to the CPU 1 and the CPU 2 by the line switching device 104, respectively, forming two lines with the line switching device 104 as "transfer": the external device 102 and the CPU 1 , external device 102 and CPU 2.
  • the type of data that the external device 102 needs to transmit is detected by the line switching device 104.
  • the line switching device 104 keeps the line between the CPU 1 and the external device 102 closed, and the line between the CPU 2 and the external device 102 Keep disconnected;
  • the line switching device 104 keeps the line between the CPU 2 and the external device 102 closed, and the CPU 1 and the external device 102 The line between them remains disconnected.
  • the line switching device 104 directly switches the line by performing type identification on the data to be transmitted by the external device 102, thereby realizing control of the data transmission direction, ensuring that the private data is processed by the CPU1, and the private data is not processed by the CPU2. .
  • the line switching device 104 does not type-recognize data from the external device 102, but instead transmits all data to the CPU 1 by default. That is, regardless of whether the current CPU1 or the line between the CPU 2 and the external device 102 is connected, the circuit is switched such that the line between the CPU 1 and the external device 102 is closed, and then the data is transmitted to the CPU 1, and the type of data is recognized by the CPU 1. If it is a private type, the CPU 1 directly processes it. If it is a non-private type, the CPU 1 forwards it to the CPU 2, and the CPU 2 processes it.
  • the line switching device 104 does not perform type identification on the data from the external device 102, all data is transmitted to the CPU 1, and the CPU 1 performs type identification and data distribution, and the CPU 1 is dedicated to processing private data, with respect to the CPU 2 , a more secure processor, so that all data is sent to CPU1, even if the non-private data is obtained and utilized by other applications (relative to the application that should be sent to), it will not lead to private information. Leakage; As long as it can ensure that private data will not be processed by CPU2, it can physically isolate the illegal application based on CPU2's access to and utilization of private data, thus ensuring the data security of the terminal.
  • the line switching device 104 still does not type-recognize data from the external device 102, but instead transmits directly. Specifically, the line switching device 104 needs to view it before the CPU1 and CPU2.
  • the line connection relationship when the path between the current and CPU1 is closed and the path between the CPU and the CPU 2 is open, the data is directly transmitted to the CPU 1; when the current path with the CPU 2 is closed, In the case where the path between the CPUs 1 is open, the data is transferred to the CPU 2 to be forwarded by the CPU 2 to the CPU 1; wherein the CPU 1 processes the private type of data and forwards the non-private type of data to the CPU 2.
  • the type identification of the data is actually performed by the CPU 1.
  • the line switching device 104 can transmit data by directly using the line currently processing the connected state, thereby reducing the requirement for the line switching device 104, which is advantageous for Control of manufacturing costs. Since the data transmitted by the external device 102 is not directly processed by the CPU 2 under any circumstances, the private data that may exist is transmitted to the CPU 2 even if it is initially processed, and is ensured that it is directly forwarded to the CPU 1 without being processed by the CPU 2. It enables the terminal to have high security even in a low configuration.
  • the line switching device 104 has functions such as autonomous line switching, data type identification, etc.; however, in practice, the operation of the line switching device 104 can be controlled by other devices.
  • the line switching device 104 can be controlled by the CPU 1 as described in Fig. 7A. Specifically, when a control line 106A is established between the control port of the line switching device 104 and the CPU 1, the CPU 1 can send a control command to the line switching device 104 via the control line 106A to implement a specific line switching operation.
  • the line corresponding to the CPU 1 can be directly closed by the control of the line switching device 104, and the line corresponding to the CPU 2 can be disconnected; when the CPU 2 needs to interact with the external device 102, It is necessary to first transmit a switching request to the CPU 1, and when the CPU 1 can accept the switching request, the CPU 1 controls the line switching device 104 to close the line corresponding to the CPU 2, and disconnects the line corresponding to the CPU 1 (the control line 106A is always kept closed).
  • control port is used to directly control the line switching action of the line switching device 104. Since the CPU 1 is a "secure processor" with respect to the CPU 2, when the CPU 1 controls the line switching device 104, it is possible to complete the data transmission and secure the data security of the terminal, thereby physically preventing the illegal application from passing. The CPU 2 controls the line switching device 104 to prevent private data from being acquired by an illegal application.
  • control port of the line switching device 104 can also be connected to the CPU 2 to constitute the control line 106B.
  • the line corresponding to the CPU 2 can be directly closed by the control of the line switching device 104, and the line corresponding to the CPU 1 can be disconnected; when the CPU 1 needs to interact with the external device 102, It is necessary to first transmit a switching request to the CPU 2, and when the CPU 2 can accept the switching request, the CPU 2 controls the line switching device 104 to close the line corresponding to the CPU 1, and disconnects the line corresponding to the CPU 2 (the control line 106A is always kept closed).
  • the terminal can include a larger number of CPU1 and / Or a larger number of CPUs 2, the following includes a processor for private data processing such as CPU1, CPU1A, and CPU1B, and a processor for non-private data processing such as CPU2, CPU2A, and CPU2B, for example, for more
  • a processor for private data processing such as CPU1, CPU1A, and CPU1B
  • a processor for non-private data processing such as CPU2, CPU2A, and CPU2B
  • a certain CPU is used as a "relay" with the external device 102, and other CPUs perform interaction with the external device 102 through the "relay".
  • the CPU 2 For the "parallel" mode: When the CPU 2 needs to interact with the external device 102, the CPU 2 directly performs data interaction with the external device 102; when the CPU 2A needs to interact with the external device 102, the CPU 2 performs data forwarding; when the CPU 2B needs to be external When the device 102 interacts, the CPU 2 also performs data forwarding.
  • CPUs used for private data processing can also use “parallel” connection, and even partially use “series” and partially “parallel” connections; CPUs for non-private data processing can also use “series”. It is obvious that the connection method is even partially “series” and partially “parallel”.
  • data forwarding by other CPUs may also be required when interacting with multiple CPUs.
  • CPU1 interacts with CPU2 or CPU1A, it can directly interact; when CPU1 interacts with CPU1B, it needs CPU1A to forward; when CPU2 interacts with CPU1, CPU2A or CPU2B, it can directly interact;
  • CPU 2A interacts with the CPU 2B, the CPU 2 is required to perform the transfer.
  • each CPU is "parallel" to the external device 102 and directly interacts with the external device 102 without requiring other CPUs to be “relayed”.
  • the CPU 1, CPU 1A, and CPU 1B for processing private data are respectively connected to the external device 102 (indirect connection is implemented by the line switching device 104), and at the same time, the CPU 2, the CPU 2A for processing non-private data, The CPU 2B is also connected to the external device 102, respectively.
  • FIG. 7 shows: CPU1, CPU1A, and CPU1B for processing private data adopt “cascade” mode, and CPU2, CPU2A, and CPU2B for processing non-private data adopt “parallel connection.” " the way.
  • the CPU for one processing function may need to interact with the CPU of another processing function.
  • the external device 102 transmits data to the CPU 1A: In the first case, the CPU 1A finds that the data is non-private data, but it is not clear which CPU is processed; in the second case, the CPU 1A finds the data as non-private data. And know which CPU should be processed.
  • CPU1A can directly transfer data to any CPU for processing non-private data.
  • CPU2A determines the specific target CPU; for the second case, CPU1A can directly transfer data to the target CPU, such as CPU2A.
  • each CPU can only interact directly with an adjacent CPU.
  • CPU1A can only interact directly with CPU1 and CPU1B, then CPU1A can send data to CPU1, which is sent by CPU1 to CPU2.
  • CPU2 forwards to the target CPU.
  • each CPU can interact with other CPUs of the specified type in addition to direct interaction with adjacent CPUs.
  • CPU1 is adjacent to CPU1A and can directly interact with each other.
  • the CPU 1 can also directly interact with the CPU 2; similarly, the CPU 1A can directly interact with the adjacent CPU 1 and CPU IB, and can also directly interact with the CPU 2A, and when the CPU 1A receives the non-transmission from the external device 102
  • Private data can be transferred indirectly to a CPU for processing non-private data via an adjacent CPU such as CPU1, or directly to CPU2A and determined by CPU2A and transferred to the final target CPU.
  • the present invention provides a terminal, including: a CPU 1 configured to process private data in the terminal; a CPU 2 configured to process non-private data in the terminal; and an external device 102 connected to each other To CPU1 and CPU2, and interact with CPU1 and CPU2; wherein, when the external device 102 interacts with the CPU 1/CPU2, the CPU 2/CPU1 sets the port itself connected to the external device 102 to a high impedance state. .
  • CPU2 makes physical separation between private data and non-private data, so as to avoid using only a single processor in the terminal (such as the case shown in Figure 1), only through privilege cracking, etc. Almost make arbitrary applications get private data from this single processor.
  • the CPU1 or the CPU2 controls the interaction between the private data and the non-private data through the setting of the port level, so as to avoid the interaction between the private data and the non-private data. The problem of being acquired and leaked.
  • the external device 102 transmits all data that needs to be transmitted to a corresponding processor in a connected state. Specifically, if the processor in the connected state is the CPU 1, the CPU 1 processes the private data from the external device 102, and forwards the non-private data from the external device 102 to the CPU 2; The processor is CPU2, then the CPU 2 directly forwards data from the external device 102 to the CPU 1, and the CPU 1 processes the private data from the CPU 2 and forwards the non-private data from the CPU 2 to the CPU 2.
  • the type identification of the data by the CPU 1 eliminates the need to add another hardware device to perform type identification on the data, which is advantageous for controlling the manufacturing cost. Since the data transmitted by the external device 102 is not directly processed by the CPU 2 under any circumstances, the private data that may exist is transmitted to the CPU 2 even if it is initially processed, and is ensured that it is directly forwarded to the CPU 1 without being processed by the CPU 2. It enables the terminal to have high security even in a low configuration.
  • cooperation between the CPU 1 and the CPU 2 can be achieved by the interaction of instructions.
  • the CPU 1 when the CPU 1 needs to transmit data to the external device, and sends an interrupt instruction to the CPU 2 to cause the CPU 2 to set the port connected to the external device 102 to a high-impedance state, the CPU 1 can connect the port connected to the external device 102.
  • the CPU 2 after the CPU 2 finishes transmitting data to the external device 102, it sends a resume instruction to the CPU 1 to cause the CPU 1 to restore the port connected to the external device 102 to the connected state.
  • the CPU 1 is for processing private data, which is a "secure processor" with respect to the CPU 2, in order to ensure that the CPU 1 can preferentially implement the interaction with the external device 102, the CPU 2 is unnecessary and external. In the case where the device 102 performs data interaction, the connection with the external device 102 is actively disconnected, so that the CPU 1 restores the connection with the external device 102 in time.
  • CPU1 and CPU2 interact with interrupt instructions
  • when CPU1 or CPU2 receives an interrupt instruction it is highly likely that the current operation needs to be suspended, so that the sender of the interrupt instruction performs the operation first, even if CPU1 sends
  • the interrupt instruction after the CPU1 completes the operation, can also send a resume instruction to the CPU 2, so that the CPU 2 can perform the suspended operation in time.
  • the terminal can include a larger number of CPU1 and / Or a larger number of CPUs 2, which will be combined with FIG. 12-14, including a processor for private data processing such as CPU1, CPU1A, and CPU1B, and CPU2, CPU2A, and CPU2B for non-private data processing.
  • a processor for private data processing such as CPU1, CPU1A, and CPU1B
  • CPU2A, and CPU2B for non-private data processing.
  • the terminal structure and processing strategy in the case of a larger number of processors will be described.
  • connection structure and data transmission mode between the CPUs are actually similar. Therefore, in order to more clearly describe the specific connection structure and data transmission strategy, the following embodiments will use an external device 102 as an example. Detailed description. It should be clear to those skilled in the art that the following connection structure and data transmission strategy based on "external device 102" actually shows that it can be applied to any external device 102 in the terminal.
  • the various line switching control modes mentioned in the above technical solutions can be applied to the following various technical solutions, and the type judging device 108 realizes the interactive control of the CPU and the external device 102.
  • a certain CPU is used as a "relay" with the external device 102, and other CPUs perform interaction with the external device 102 through the "relay".
  • the CPU 2 For the "parallel" mode: When the CPU 2 needs to interact with the external device 102, the CPU 2 directly performs data interaction with the external device 102; when the CPU 2A needs to interact with the external device 102, the CPU 2 performs data forwarding; when the CPU 2B needs to be external When the device 102 interacts, the CPU 2 also performs data forwarding.
  • CPUs used for private data processing can also use “parallel” connection, and even partially use “series” and partially “parallel” connections; CPUs for non-private data processing can also use “series”. It is obvious that the connection method is even partially “series” and partially “parallel”.
  • data forwarding by other CPUs may also be required when interacting with multiple CPUs.
  • CPU1 interacts with CPU2 or CPU1A, it can directly interact; when CPU1 interacts with CPU1B, it needs CPU1A to forward; when CPU2 interacts with CPU1, CPU2A or CPU2B, it can directly interact;
  • CPU 2A interacts with the CPU 2B, the CPU 2 is required to perform the transfer.
  • Embodiment 2 In a plurality of CPUs for processing private data/non-private data, each CPU is "parallel" to the external device 102 and directly interacts with the external device 102 without requiring other CPUs as "relays".
  • the CPU 1, CPU 1A, and CPU IB for processing private data are respectively connected to the external device 102, and at the same time, the CPU 2, the CPU 2A, and the CPU 2B for processing non-private data are also connected to the external device 102, respectively.
  • FIG. 4 shows that CPU1, CPU1A, and CPU IB for processing private data adopt a "series" mode, and CPU2, CPU2A, and CPU2B for processing non-private data are adopted. Parallel" way.
  • the CPU for one processing function may need to interact with the CPU of another processing function.
  • the external device 102 transmits data to the CPU 1A: In the first case, the CPU 1A finds that the data is non-private data, but it is not clear which CPU is processed; in the second case, the CPU 1A finds the data as non-private data. And know which CPU should be processed.
  • CPU1A can directly transfer data to any CPU for processing non-private data.
  • CPU2A determines the specific target CPU; for the second case, CPU1A can directly transfer data to the target CPU, such as CPU2A.
  • each CPU can only interact directly with an adjacent CPU.
  • CPU1A can only interact directly with CPU1 and CPU1B, CPU1A can send data to CPU1, CPU1 sends to CPU2, and CPU2 Forward to the target CPU.
  • each CPU can interact with other CPUs of the specified type in addition to direct interaction with adjacent CPUs.
  • CPU1 is adjacent to CPU1A and can directly interact with each other.
  • the CPU 1 can also directly interact with the CPU 2; similarly, the CPU 1A can directly interact with the adjacent CPU 1 and CPU IB, and can also directly interact with the CPU 2A, and when the CPU 1A receives the non-transmission from the external device 102
  • Private data can be transferred indirectly to a CPU for processing non-private data via an adjacent CPU such as CPU1, or directly to CPU2A and determined by CPU2A and transferred to the final target CPU.
  • the external device 102 is directly connected to the CPU, and the CPU itself configures its port connected to the external device 102 to control the on/off of its connection line.
  • a type judging means 108 is further provided between the external device 102 and the CPU.
  • the terminal may further include: a type determining device 108, disposed on the path between the external device 102 and the CPU1 and the CPU2, for performing type determination on the data from the external device 102, if If it is determined to be private data, it is transmitted to the CPU 1, and if it is determined to be non-private data, it is transmitted to the CPU 2.
  • a type determining device 108 disposed on the path between the external device 102 and the CPU1 and the CPU2
  • the terminal may further include: a type determining device 108, disposed on the path between the external device 102 and the CPU1 and the CPU2, for performing type determination on the data from the external device 102, if If it is determined to be private data, it is transmitted to the CPU 1, and if it is determined to be non-private data, it is transmitted to the CPU 2.
  • the type judging device 108 performs type identification on the data from the external device 102 without the CPU 1 or the CPU 2 performing the type recognizing operation, thereby contributing to lowering the requirement for the CPU 1 or the CPU 2, so that the CPU 1 or the CPU 2 is lowered.
  • the type judging device 108 is further configured to: if the data from the external device 102 is private data, if the path between the external device 102 and the CPU 1 is in communication The state and the path between the CPU 2 and the CPU 2 are in a high-impedance state, and the data is directly transmitted to the CPU 1; if the path between the external device 102 and the CPU 1 is in a high-impedance state and the path between the CPU 2 and the CPU 2 is in a connected state, then The CPU 2 transmits an interrupt instruction and a resume instruction to execute the interrupt instruction, and forwards the resume instruction to the CPU 1; if it is determined that the data from the external device 102 is non-private data, if the external device 102 and The path between CPU1 is connected When the pass state and the path between the CPU 2 and the CPU 2 are in a high-impedance state, an interrupt command and a resume command are sent to the CPU 1 to execute the interrupt command, and the resume command is forwarded to the CPU 2; if the data from the external device 102
  • the type judging device 108 performs type identification on the data from the external device 102, and controls its line switching operation with the CPU 1 and the CPU 2 so that it is accurately transmitted to the corresponding processor according to the data type. Avoid CPU2's "contact” (direct processing or forwarding operations) on private data as much as possible to help improve the data security of the terminal.
  • the type judging device 108 when the type judging device 108 is provided in the terminal, there may be a case where a plurality of processors exist, and the various line switching control modes shown in FIG. 15 can be applied. In the respective technical solutions described below in connection with Figs. 16-18, the type judging means 108 performs interactive control of the CPU and the external device 102.
  • a certain CPU is used as a "relay" with the external device 102, and other CPUs perform interaction with the external device 102 through the "relay".
  • the CPU 2 For the "parallel" mode: When the CPU 2 needs to interact with the external device 102, the CPU 2 directly performs data interaction with the external device 102; when the CPU 2A needs to interact with the external device 102, the CPU 2 performs data forwarding; when the CPU 2B needs to be external When the device 102 interacts, the CPU 2 also performs data forwarding.
  • CPUs used for private data processing can also use “parallel” connection, and even partially use “series” and partially “parallel” connections; CPUs for non-private data processing can also use “series”. It is obvious that the connection method is even partially “series” and partially “parallel”.
  • data forwarding by other CPUs may also be required when interacting with multiple CPUs.
  • CPU1 interacts with CPU2 or CPU1A, it can directly interact; when CPU1 interacts with CPU1B, it needs CPU1A to forward; when CPU2 interacts with CPU1, CPU2A or CPU2B, it can directly interact;
  • CPU 2A interacts with the CPU 2B, the CPU 2 is required to perform the transfer.
  • each CPU is "parallel" to the external device 102 and directly interacts with the external device 102 without requiring other CPUs to be “relayed”.
  • the CPU 1, CPU 1A, and CPU IB for processing private data are respectively connected to the external device 102 (indirect connection by the type judging device 108), and at the same time, the CPU 2, CPU 2A for processing non-private data.
  • the CPU 2B is also connected to the external device 102, respectively.
  • FIG. 17 shows that: CPU1, CPU1A, and CPU IB for processing private data adopt "cascade" mode, and CPU2, CPU2A, and CPU2B for processing non-private data are adopted. Parallel" way.
  • the CPU for one processing function may need to interact with the CPU of another processing function.
  • the external device 102 transmits data to the CPU 1A: In the first case, the CPU 1A finds that the data is non-private data, but it is not clear which CPU is processed; in the second case, the CPU 1A finds the data as non-private data. And know which CPU should be processed.
  • CPU1A can directly transfer data to any CPU for processing non-private data.
  • CPU2A determines the specific target CPU; for the second case, CPU1A can directly transfer data to the target CPU, such as CPU2A.
  • CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only interact directly with an adjacent CPU, as shown in Figure 17, CPU1A can only
  • CPU1A can send data to CPU1, send it to CPU2 by CPU1, and forward it to CPU2 by CPU2.
  • each CPU can interact with other CPUs of the specified type in addition to direct interaction with adjacent CPUs.
  • CPU1 is adjacent to CPU1A and can directly interact with each other.
  • the CPU 1 can also directly interact with the CPU 2; similarly, the CPU 1A can directly interact with the adjacent CPU 1 and CPU IB, and can also directly interact with the CPU 2A, and when the CPU 1A receives the non-transmission from the external device 102
  • Private data can be transferred indirectly to a CPU for processing non-private data via an adjacent CPU such as CPU1, or directly to CPU2A and determined by CPU2A and transferred to the final target CPU.
  • the CPU 1 is used to process private data
  • the CPU 2 is used to process non-private data
  • the communication module 1 10 is used for transmitting and receiving of uplink and downlink data.
  • the communication module 1 10 since the communication module 1 10 is connected to the CPU 1 and the CPU 2, respectively, the data from the CPU 1 is private data, the data from the CPU 2 is non-private data; and for the downlink data, the communication module 1 10 directly receives the received data.
  • the data is type-recognized. If it is private data, it is directly transmitted to CPU1. If it is non-private data, it is directly transmitted to CPU2.
  • the type identification of the data is performed by the communication module 1 10, so that the private data and the non-private data are respectively allocated to the CPU 1 and the CPU 2 to implement physical data isolation, which helps to improve the security of the terminal.
  • a line switching module (such as the line switching device 104 shown in FIG. 5-10) is added between the communication module 1 10 and the CPU 1 and the CPU 2, and is controlled by the line switching module itself or the CPU 1 and the CPU 2 to realize When the communication module 1 10 interacts with the CPU 1, the connection with the CPU 2 is cut off, and when the communication module 10 interacts with the CPU 2, the connection with the CPU 1 is cut off.
  • the physical isolation of private data and non-private data helps to further enhance the security of the terminal.
  • a communication module 1 10A and a communication module 1 10B both of which are respectively connected to the CPU 1 and the CPU 2, and then to the communication module 1 10A or the communication module 1 10B
  • the processing strategy corresponding to the communication module 110 shown in FIG. 19 can be borrowed and used, and thus will not be described herein.
  • the communication module 1 10 described in FIGS. 19-20 (for example, the communication module 1 10A is the same as the communication module 1 10B), and the above plurality of CPUs can adopt the following strategies.
  • the CPU for processing private data here includes CPU1, CPU1A, and CPU1B, and the CPU for processing non-private data includes CPU2, CPU2A, and CPU2B as an example for description.
  • Embodiment 1 The CPU for processing private data here includes CPU1, CPU1A, and CPU1B, and the CPU for processing non-private data includes CPU2, CPU2A, and CPU2B as an example for description.
  • the communication module 1 10 is only connected to a CPU for processing private data and a CPU for processing non-private data, such as to CPU1 and CPU2.
  • CPU1/CPU2 directly transfers the private data/non-private data to the communication module 1 10, and the CPU 1A, CPU IB needs to transmit the private data to the CPU 1 and forward it to the communication module 1 10 by the CPU 1;
  • the CPU 2A and the CPU 2B need to transfer the non-private data to the CPU 2 and forward it to the communication module 110 by the CPU 2.
  • the communication module 1 10 When the data is downlinked, the communication module 1 10 sends all the private data to the CPU 1 , and sends all the non-private data to the CPU 2 , wherein in the first case, the communication module 1 10 can analyze the data and the like. Knowing the target CPU for processing the data, the communication module 10 may add a corresponding identifier on the data, so that after the CPU 1 or the CPU 2 receives the data, the corresponding target CPU may be determined according to the added identifier. In the second case, if the communication module 1 10 cannot know the target CPU of the received data, the communication module 110 directly transmits it to the CPU 1 or the CPU 2, and the CPU 1 or the CPU 2 determines the corresponding target CPU by itself. .
  • CPU1A and CPU1B are in "series” mode.
  • CPU2A and CPU2B are in "parallel” mode.
  • CPU1B needs to send uplink data or receive downlink data, it needs to pass CPU1A.
  • Two-stage transmission with CPU1 can be realized; for CPU2A and CPU2B, only one level of transmission of CPU2 is required.
  • the communication module 1 10 can also be connected to all the CPUs respectively, and for the uplink data, each CPU can be directly transmitted to the communication module 1 10 without performing forwarding by other CPUs, which is advantageous for reducing data transmission. Delay.
  • the communication module 1 10 can know the specific target CPU, it can directly transmit to the target CPU; if the communication module 1 10 cannot know the specific target CPU, the following method is adopted:
  • the communication module 1 10 performs type identification on the downlink data, and according to the recognition result, transmits the data to a default or arbitrary CPU for processing the same type of data, for example, transmitting the private data to the CPU 1 by default.
  • Non-private data is transferred to CPU2 by default, or private data is arbitrarily transferred to CPU1, CPU1A or CPU1B, and non-private data is arbitrarily transferred to CPU2, CPU2A or CPU2B, and then further determined and forwarded to the specific CPU by the CPU receiving the downlink data.
  • Target CPU is
  • the communication module 1 10 does not perform type identification on the downlink data
  • the downlink data is directly transmitted to a certain default or arbitrary CPU, and the CPU directly performs type identification or forwards to other CPUs for type identification, and then According to the recognition result, it is sent to the target CPU.
  • the CPU 1 performs type identification (or specifies that all downlink data is type-recognized by the CPU 1A, and then needs to be transmitted to the CPU 1A for type identification), and transmits the downlink data to the specific one according to the recognition result.
  • Target CPU the type identification (or specifies that all downlink data is type-recognized by the CPU 1A, and then needs to be transmitted to the CPU 1A for type identification), and transmits the downlink data to the specific one according to the recognition result.
  • each CPU can directly interact with any other CPU (the specific connection is not shown in the figure). Assuming that CPU1A receives non-private data, if CPU1A does not know the target CPU corresponding to the data, it can directly transfer the data to any CPU for processing non-private data, such as CPU2A, and then CPU2A determines the specific target CPU; If CPU1A knows the target CPU corresponding to the data, it can directly transfer the data to the target CPU, such as CPU2A.
  • CPU1A can only interact directly with CPU1 and CPU1B, CPU1A can send data to CPU1, which is sent by CPU1 to CPU2, and is forwarded by CPU2 to the target CPU.
  • each CPU can interact with other CPUs of the specified type in addition to direct interaction with adjacent CPUs.
  • CPU1 is adjacent to CPU1A and can directly interact as the same type of CPU.
  • the CPU 1 can also directly interact with the CPU 2; similarly, the CPU 1A can directly interact with the adjacent CPU 1 and CPU IB, and can also directly interact with the CPU 2A, and when the CPU 1A receives the transmission from the communication module 1 10
  • Non-private data can be transferred indirectly to a CPU for processing non-private data by an adjacent CPU such as CPU1, or directly to CPU2A and determined by CPU2A and transmitted to the final target CPU.
  • the communication module 110 is respectively connected to a CPU for processing private data and a CPU for processing non-private data; and in the following FIGS. 24-28, each communication module 1 10 (or communication module 1 10A and communication module 1 10B shown in FIG. 25) are only connected to one type of CPU, such as only to a CPU for processing private data, or only to handle non-processing CPU for private data.
  • the communication module 1 10 is only connected to the CPU 1.
  • the CPU 1 can directly interact with the communication module 110, and the CPU 2 needs the CPU 1 as a relay and indirectly with the communication module 110. Interaction.
  • the communication module 1 10 can perform type identification on the downlink data, and add an identifier to the downlink data according to the identification result, and then all send to the CPU1, and the CPU1 determines to handle the downlink according to the identifier on the downlink data. , or sent to the CPU2 for processing; in the second case, the communication module 1 10 does not perform type identification on the downlink data, after the CPU1 performs type identification, directly processes the private data, and forwards the non-private data to The CPU 2 performs processing.
  • the communication module 1 10 can also be connected to the CPU 2, and the CPU 2 directly interacts with the communication module 1 10, and the CPU 1 must indirectly implement the interaction with the communication module 1 10 by using the CPU 2 as a "relay".
  • CPU2 since CPU2 is used to process non-private data, it is an insecure CPU compared to CPU1, because private data will flow through CPU2, which may result in illegal applications stealing from it. Therefore, in order to get a safer application environment, it is more inclined to connect the communication module 1 10 directly to the CPU 1.
  • the communication module 1 10 is connected to the CPU 1 as an example, but based on the above description, this is obviously not a limitation or limitation.
  • the communication module 1 10A and the communication module are included.
  • the communication module 110A or the communication module 1 10B is connected to CPU1. Then, the communication module 110A or the communication module 1 10B is the same as the communication module 1 10 shown in FIG. 23, and the corresponding connection mode or processing policy may be adopted, and details are not described herein again.
  • the communication module described in Figure 24-25 1 10 (for example, the communication module 1 10A and the communication module 1 10B are the same), the above multiple CPUs can adopt the following strategies.
  • the CPU for processing private data here includes CPU1, CPU1A, and CPU1B, and the CPU for processing non-private data includes CPU2, CPU2A, and CPU2B as an example for description.
  • the communication module 1 10 is only connected to a CPU for processing private data or a CPU for processing non-private data, such as to CPU1.
  • the CPU 1 directly interacts with the communication module 1 10, and all other CPUs need to directly or indirectly transmit the data to be transmitted to the CPU 1 , and the CPU 1 forwards the data to the communication module 1 10 to implement data uplink. send.
  • the communication module 110 can add a corresponding identifier to the data, thereby After the CPU1 receives the data, the corresponding target CPU may be determined according to the added identifier to implement forwarding; in the second case, if the communication module 1 10 cannot know the target CPU of the received data, the communication module 1 10 The CPU1 directly transmits it to the CPU1, and the CPU1 determines the corresponding target CPU by itself.
  • the communication module 10 can identify the type of the data and determine whether it is private data or non-private data before being sent to the CPU1, or the communication module 1 10 does not execute class
  • the type recognition operation is directly sent to the CPU 1, and the CPU 1 performs type identification on the received data.
  • data is transferred between CPUs based on different connection methods between multiple CPUs. For example, as shown in Figure 26, CPU1, CPU1A and CPU1B are in "series” mode. CPU2, CPU2A and CPU2B are in "parallel” mode. When CPU1B needs to send uplink data or receive downlink data, it needs to pass CPU1A. Two-stage transmission with CPU1 can be realized; for CPU2A and CPU2B, only one level of transmission of CPU2 is required.
  • the communication module 110 can also be connected to all CPUs of the same type, for example, to all CPUs for processing private data (specifically, CPU1, CPU1A and CPU1B in the figure).
  • each CPU for processing the private data can be directly transmitted to the communication module 1 10 without performing forwarding by other CPUs, which is advantageous for reducing the data transmission delay, and the CPU for processing the non-private data. , you still need to forward the data to a CPU that processes private data, such as CPU1, to enable data to be sent upstream.
  • the communication module 1 10 can know the specific target CPU, if the data is private data, it can be directly transmitted to the target CPU, and if the data is non-private data, the identifier is added to the non-private data. After that, it is directly transferred to a connected CPU (the CPU can be default or arbitrary, for example, it is sent to CPU1 by default, or a connected CPU is randomly selected). If it is assumed to be CPU1, it is determined by CPU1 according to the identifier on the data.
  • the communication module 1 10 performs type identification on the downlink data, and according to the recognition result, Data is transferred to a default or arbitrary CPU for processing the same type of data, such as transferring private data to CPU1 by default, adding the corresponding type identifier to non-private data, and then transferring it to CPU1 by default, or transferring private data to CPU1.
  • a default or arbitrary CPU for processing the same type of data, such as transferring private data to CPU1 by default, adding the corresponding type identifier to non-private data, and then transferring it to CPU1 by default, or transferring private data to CPU1.
  • CPU1A or CPU1B add non-private data to the corresponding type identifier and transfer it to CPU1, CPU1A or The CPU 1B is then further determined and forwarded to the specific target CPU by the CPU that received the downlink data.
  • the communication module 1 10 does not perform type identification on the downlink data
  • the downlink data is directly transmitted to a certain default or arbitrary CPU, and the CPU directly performs type identification or forwards to other CPUs for type identification, and then According to the recognition result, it is sent to the target CPU.
  • the CPU 1 performs type identification (or specifies that all downlink data is type-recognized by the CPU 1A, and then needs to be transmitted to the CPU 1A for type identification), and transmits the downlink data to the specific one according to the recognition result.
  • Target CPU the type identification (or specifies that all downlink data is type-recognized by the CPU 1A, and then needs to be transmitted to the CPU 1A for type identification), and transmits the downlink data to the specific one according to the recognition result.
  • each CPU can directly interact with any other CPU (the specific connection is not shown in the figure). Assuming that CPU1A receives non-private data, if CPU1A does not know the target CPU corresponding to the data, it can directly transfer the data to any CPU for processing non-private data, such as CPU2A, and then CPU2A determines the specific target CPU; If CPU1A knows the target CPU corresponding to the data, it can directly transfer the data to the target CPU, such as CPU2A.
  • CPU1A can only interact directly with CPU1 and CPU1B, CPU1A can send data to CPU1, CPU1 sends to CPU2, and CPU2 Forward to the target CPU.
  • CPU1 is adjacent to CPU1A and can directly interact as the same type of CPU.
  • CPU1 can also directly interact with CPU2; similarly, CPU1A can directly interact with The neighboring CPU1 and CPU IB interact directly and can also directly interact with the CPU2A.
  • the CPU1A receives the non-private data sent by the communication module 1 10, it can be indirectly transmitted to the CPU for processing non-private data through an adjacent CPU such as CPU1. It can also be transferred directly to CPU2A and determined by CPU2A and transferred to the final target CPU.
  • Fig. 29 is a block diagram showing the structure of a terminal according to an embodiment of the present invention.
  • a terminal includes: a CPU 1 configured to process private data in the terminal; and a CPU 2 configured to process non-private data in the terminal; a storage unit, connected to the CPU1, configured to store the private data processed by the CPU1, and the first storage unit further stores a first desktop initiator or a first operating system; a unit, connected to the CPU 2, for storing the non-private data processed by the CPU2, and storing, in the second storage unit, a second desktop launcher or a second operating system;
  • the CPU 1 performs user interface interaction by running the first desktop launcher or the first user interface displayed after the first operating system; the CPU 2 runs the second desktop launcher or the second operation The second user interface displayed after the system performs user interface interaction.
  • the private data is processed by the CPU 1 and the CPU 2 processes the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding the use of only a single processor in the terminal.
  • Any application can easily obtain private data from the single processor by means of privilege cracking or the like.
  • CPU1 uses the first storage unit (ie RAMI and EMMC1, etc.), while CPU2 uses the second storage unit (ie RAM2 and EMMC2). Etc.), the storage space used by CPU1 and CPU2 can be physically separated. Since CPU1 and CPU2 physically use phase-separated storage devices, both private data and non-private data are physically isolated during processing and storage, resulting in better data security.
  • first desktop launcher or the first operating system By storing the first desktop launcher or the first operating system in the first storage unit, storing the second desktop launcher or the second operating system in the second storage unit, so that only the CPU 1 can directly invoke the first desktop launcher or the first An operating system, only CPU2 can directly call the second desktop launcher or the second operating system to ensure the security of the application (desktop launcher) and system (operating system) to avoid damage or tampering.
  • CPU1 directly calls the first desktop launcher or the first operating system
  • CPU2 calls the second desktop launcher or the second operating system
  • the private service corresponding to private data
  • CPU1 and the non-private service handled by CPU2 Corresponding to non-private data
  • it can independently implement independent control requirements and UI interactions, and also help to meet their data privacy requirements, thereby improving the security of the terminal and the convenience in use.
  • CPU1 or CPU2 When CPU1 or CPU2 needs to perform a certain data processing task, it may need to be equipped with the corresponding external device. For example, when running the first initiator or the first operating system, it is necessary to display the corresponding screen on the display screen.
  • switching of different user interfaces is achieved by transmitting an interrupt instruction between CPUs. Specifically, for example:
  • the CPU 1 detects the currently displayed user interface, and if it is the first user interface, directly performs an interaction, and if it is the second user interface, sends an interrupt instruction to the CPU 2, and runs the first desktop initiator or The first operating system.
  • the CPU 2 turns off or puts the second desktop launcher or the second operating system into the background according to the received interrupt instruction.
  • the CPU 2 detects the currently displayed user interface, and if it is the second user interface, directly performs an interaction, and if it is the first user interface, sends an interrupt instruction to the CPU1, and runs the second desktop launcher or The second operating system.
  • the CPU 1 turns off the first desktop initiator or the first operating system according to the received interrupt instruction. Or put it in the background.
  • the CPU 2 can still switch to the first user interface (or switch from the first user interface to the second user interface) by sending an interrupt instruction during the UI interaction using the corresponding second user interface. , and will not repeat them here. Through the reasonable switching of the user interface, some potentially more important processing tasks or services can be executed in time.
  • the application also sets different priorities for the applications in the terminal, so as to determine the order in which they are processed according to the priority level. For example: the priority of a private application > the priority of a non-private application; the priority of an application that invokes private data > the priority of an application that does not invoke private data, and so on.
  • private applications, as well as private applications may have different priorities, such as the priority of the private application used for the payment process, the address book, and so on.
  • the interrupt instruction may include information of the second application, or the CPU 2 may express the switch interface by using the interrupt command, and separately send the information of the second application to the CPU1.
  • the comparator compares the priority of the first application currently running by CPU1 with the second application that CPU2 wishes to run: If the priority of the first application is higher than the priority of the second application, CPU1 continues to perform the interaction until After the interaction is completed, the CPU 2 is allowed to perform the switching of the user interface; if the priority of the first application is lower than the priority of the second application, the CPU 1 directly executes the interrupt instruction, and the first user interface is closed or placed in the background, and Allows CPU2 to switch to the second user interface.
  • the interrupt instruction may include information of the fourth application, or the CPU 1 may express the switch interface by using the interrupt instruction, and separately send the information of the fourth application to the CPU 2
  • the comparator compares the priority of the third application currently running by the CPU 2 with the fourth application that the CPU 1 wishes to run: if the priority of the third application is higher than the priority of the fourth application, the CPU 2 continues to perform the interaction until After the interaction is completed, the CPU 1 is allowed to perform the switching of the user interface; if the priority of the third application is lower than the priority of the fourth application, the CPU 2 directly executes the interrupt instruction, and the second user interface is closed or placed in the background, and Allows CPU1 to switch to the first user interface.
  • the device sends an interrupt instruction.
  • the interrupt instruction may include information of a specific application, or the CPU 1 or the CPU 2 may express the desire to switch the application interface only by the interrupt instruction, and separately send the information of the specific application to the comparator.
  • the comparator After receiving the interrupt instruction from CPU1 or CPU2, the comparator determines the corresponding priority according to the information of the specific application, and compares the priority of the application to be run and the running application. If the former has a higher priority, the user interface is switched. Otherwise, the latter interaction process is continued until the interaction is completed, and then the user interface is switched.
  • the processing of the original running application can be resumed by: (1) assuming that the CPU 1 is running the first application, and the CPU 2 needs to run the second application, and the CPU 1 is at the first When the application's priority is lower than the second application, the interaction with the first application is interrupted. Then, after completing the interaction with the second application, the CPU 2 also sends a resume instruction to the CPU 1 to cause the CPU 1 to continue to interact with the first application through the first user interface.
  • the above is the terminal to determine whether to switch the user interface. Because the actual needs of different users are different, the user can manually perform the user interface switching operation according to the actual situation, for example:
  • the user can send an interface switching command to the CPU1 through the first user interface, and the CPU 1 turns off or puts the first desktop initiator or the first operating system into the background; meanwhile, the CPU 2 also switches according to the interface received by the first user interface. Command, run the second desktop launcher or the second operating system.
  • the user can send an interface switching command to the CPU 2 through the second user interface, and the CPU 2 turns off or puts the second desktop initiator or the second operating system into the background; meanwhile, the CPU 1 also switches according to the interface received by the second user interface. Command, run the first desktop launcher or the first operating system.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the CPU 1 is further configured to: if the first user interface is a default interface, run the first desktop launcher or the first operating system each time the terminal is powered on And the CPU 2 is further configured to: if the second user interface is a default interface, run the second desktop launcher or the second operating system each time the terminal is powered on.
  • the terminal by setting a default interface, the terminal only needs to run a specified desktop initiator or operating system when booting, and it is not necessary to run all desktop initiators or operating systems at the same time, thereby helping to reduce the terminal.
  • the terminal can also not set the default interface.
  • booting all the desktop launchers or operating systems are started at the same time, but only one of the user interfaces is displayed, and the others are placed in the background, when the user needs to switch to other
  • the user interface it is not necessary to start the corresponding desktop launcher or operating system in real time, and the switching can be directly performed, which helps to shorten the waiting time of the user and enhance the user experience.
  • FIG 33 is a flow chart showing the CPU 1 performing user interface switching control in accordance with an embodiment of the present invention.
  • Step 3302 it is determined whether the CPU 1 receives the interrupt command sent by the CPU 2, if not, proceeds to step 504, and if received, proceeds to step 3306.
  • the terminal includes CPU1 and CPU2, and CPU1 is used to process private data, and CPU2 is used to process non-private data.
  • the CPU 1 and the CPU 2 respectively correspond to different storage spaces, for example, the CPU 1 corresponds to the first storage unit, and the CPU 2 corresponds to the second storage unit.
  • data of different desktop launchers or operating systems are stored in the first storage unit and the second storage unit, respectively.
  • the same operating system is used (the data of the operating system is stored in the first storage unit or the second storage unit), and the first storage unit is stored in the first storage unit for starting the first a second desktop storage unit is configured to start a second user interface.
  • the first storage unit stores data of the first operating system, and is used to start the first user.
  • the second storage unit is stored in the second storage unit for starting the second user interface.
  • step 3304 it is determined whether the service currently required to be executed by the CPU 1 needs to perform UI interaction. If necessary, the process proceeds to step 3310. Otherwise, the service is normally executed, and the process returns to step 3302.
  • Step 3306 Determine whether the current user interface is the first user interface. If yes, go to step 3308, otherwise go to step 3302.
  • the CPU2 may determine that the error or the error is sent, or the terminal may include other CPUs, such as the CPU3.
  • the CPU 2 can send an interrupt instruction to all other CPUs when detecting that the second user interface is not currently corresponding to itself.
  • step 3308 the first user interface is closed or placed in the background. If the first user interface is closed, it is beneficial to release more storage space and system resources; if placed in the background, it is helpful to switch back to the first user interface in time to shorten the waiting time of the user. After step 3308 is completed, step 3304 or end can be entered.
  • Step 3310 Determine whether the current user interface is the first user interface, and if yes, return to step 3302, otherwise proceed to step 3312.
  • Step 3312 Start the first user interface, specifically, by starting the first desktop launcher, or by starting the first operating system. Meanwhile, if the terminal only includes the CPU 1 and the CPU 2, or the CPU 1 detects that the current user interface is specifically the second user interface, sends an interrupt instruction to the CPU 2 to stop or put the second user interface in the background; if the terminal includes the CPU1 For CPU2 and other CPUs, CPU1 can send interrupt instructions directly to all CPUs except its own.
  • Fig. 34 is a flow chart showing the CPU 2 performing user interface switching control according to an embodiment of the present invention.
  • Step 3402 Determine whether the CPU 2 receives the interrupt instruction sent by the CPU 1, and if not, enters the step.
  • step 3404 it is determined whether the service currently required to be executed by the CPU 2 needs to perform UI interaction. If necessary, the process proceeds to step 3410. Otherwise, the service is normally executed, and the process returns to step 3402.
  • Step 3406 Determine whether the current user interface is the second user interface. If yes, go to step 3408, otherwise go to step 3402.
  • step 3408 the second user interface is closed or placed in the background. After step 3408 is completed, you can proceed to step 3404 or end.
  • Step 3410 Determine whether the current user interface is the second user interface. If yes, return to step 3402, otherwise proceed to step 3412.
  • Step 3412 Start the second user interface, specifically, by starting the second desktop launcher, or by starting the second operating system. Meanwhile, if the terminal only includes the CPU 1 and the CPU 2, or the CPU 2 detects that the current user interface is specifically the first user interface, sends an interrupt instruction to the CPU 1 to stop or put the first user interface in the background; if the terminal includes the CPU1 For CPU 2 and other CPUs, CPU 2 can send interrupt instructions directly to all CPUs before itself.
  • the method further includes: when the CPU1 interacts with the first application by using the first user interface, if receiving an interrupt instruction from the CPU 2, the interrupt instruction indicates the The CPU 2 hopes to interact with the second application through the second user interface, and the CPU 1 continues to perform the interaction until the interaction is completed if the priority of the first application is higher than the second application. Executing the interrupt instruction if the priority of the first application is lower than the second application;
  • the interrupt instruction indicates that the CPU 1 wishes to pass the first user interface and the fourth The application interacts, and the CPU 2 continues to perform the interaction until the interaction is completed, in a case where the priority of the third application is higher than the fourth application, and the priority of the third application is lower than In the case of the fourth application, the interrupt instruction is executed.
  • the priority of the application (or data service) that needs to be processed by the CPU 1 and the CPU 2 is judged, and the application with higher priority is preferentially processed, so that there are multiple processing units and multiple users.
  • the sequence of processing tasks can be effectively communicated and coordinated, so that important data can be prioritized and better terminal operation management can be realized.
  • the method further includes: if the CPU 1 interrupts interaction with the first application when the priority of the first application is lower than the second application, After completing the interaction with the second application, the CPU 2 further sends a resume instruction to the CPU1, so that the CPU1 continues to interact with the first application through the first user interface;
  • the CPU 1 completes the fourth application After the interaction, a recovery instruction is also sent to the CPU 2, so that the CPU 2 continues to interact with the third application through the second user interface.
  • the method further includes: according to the interface switching command received by the first user interface, the CPU1 turns off or puts the first desktop initiator or the first operating system into the background, and The CPU 2 runs the second desktop launcher or the second operating system; and according to the interface switching command received by the second user interface, the CPU 2 turns off or puts the second desktop launcher or the second operating system Up to the background, and the CPU 1 runs the first desktop launcher or the first operating system.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the method further includes: setting the first user interface or the second user interface as a default interface; and each time the power is turned on, the corresponding first desktop launcher or the first one is operated by default An operating system or the second desktop launcher or a second operating system.
  • the terminal only needs to run a specified desktop when booting.
  • the initiator or operating system does not have to run all desktop initiators or operating systems at the same time, which helps to reduce the consumption of operating resources and the loss of power of the terminal.
  • the terminal can also not set the default interface.
  • booting all the desktop launchers or operating systems are started at the same time, but only one of the user interfaces is displayed, and the others are placed in the background, when the user needs to switch to other
  • the user interface it is not necessary to start the corresponding desktop launcher or operating system in real time, and the switching can be directly performed, which helps to shorten the waiting time of the user and enhance the user experience.
  • FIG. 35 shows a display control system of the user interface according to an embodiment of the present invention. Schematic block diagram.
  • the display control system 3500 of the user interface includes: a first processing unit 3502 and a second processing unit 3504, respectively, for processing different types of data in the terminal;
  • the storage unit 3506 and the second storage unit 3508 are configured to store data processed by the first processing unit 3502 and the second processing unit 3504, respectively, and the first storage unit 3506 is further configured to store the first a desktop launcher or a first operating system, the second storage unit 3508 is further configured to store a second desktop launcher or a second operating system, where the first processor is further configured to: run the first desktop The first user interface displayed after the initiator or the first operating system performs user interface interaction; the second processor is further configured to: after running the second desktop launcher or the second operating system The displayed second user interface performs user interface interaction.
  • first desktop launcher or the first operating system By storing the first desktop launcher or the first operating system in the first storage unit 3506, storing the second desktop launcher or the second operating system in the second storage unit 3508, so that only the first processing unit 3502 can directly invoke the first a desktop launcher or the first operating system, only the second processing unit 3504 can directly invoke the second desktop launcher or the second operating system to ensure the security of the application (desktop launcher) and the system (operating system) to avoid Destroy or tamper with.
  • the second processing unit 3504 invokes the second desktop launcher or the second operating system, so that the first processing unit 3502 processes the service and the second
  • the services processed by the processing unit 3504 can implement independent control requirements and UI interactions respectively, and also help to meet the respective data privacy requirements, thereby improving the security of the terminal and the convenience in use.
  • the first processing unit 3502 is further configured to: when the user interface interaction is required, detect a currently displayed user interface, and if the first user interface is, directly perform an interaction, if For the second user interface, sending an interface switching instruction to the second processing unit 3504, and after the second processing unit 3504 closes or puts the second desktop launcher or the second operating system into the background Running the first desktop launcher or the first operating system;
  • the second processing unit 3504 is further configured to: when the user interface interaction is required, detect the currently displayed user interface, and if the second user interface is, perform the interaction directly, if the first user interface is Transmitting an interface switching instruction to the first processing unit 3502, and running the second desktop launcher after the first processing unit 3502 turns off or puts the first desktop launcher or the first operating system into the background Or the second operating system.
  • the first processing unit 3502 can still switch to the first user interface in time by sending an interface switching instruction (or by A user interface is switched to the second user interface, which is not described here. By performing a reasonable switching of the user interface, some potentially more important processing tasks or services are performed in time.
  • the first processing unit 3502 is further configured to: when interacting with the first application by using the first user interface, if receiving from the second processing unit 3504 The interface switching instruction, the interface switching instruction indicates that the second processing unit 3504 desires to interact with the second application by using the second user interface, and the first processing unit 3502 is in the first application. If the priority is higher than the second application, continue to perform the interaction until the interaction is completed, and if the priority of the first application is lower than the second application, the first desktop is started. Or the first operating system is turned off or placed in the background to be booted by the second processor Said second user interface;
  • the second processing unit 3504 is further configured to: when receiving an interface switching instruction from the first processing unit 3502 when interacting with the third application by using the second user interface, the interface switching instruction indicates The first processing unit 3502 hopes to interact with the fourth application through the first user interface, and the second processing unit 3504 has a higher priority in the third application than the fourth application. In case, the interaction is continued until the interaction is completed, and if the priority of the third application is lower than the fourth application, the second desktop launcher or the second operating system is closed or placed in the background.
  • the first user interface is initiated by the first processor.
  • the priority of the application (or data service) that needs to be processed by the first processing unit 3502 and the second processing unit 3504 is determined, and the application with higher priority is preferentially processed, so that the existence exists.
  • the sequence of processing tasks can be effectively communicated and coordinated, so that important data can be prioritized and better terminal operation management can be realized.
  • the first processing unit 3502 is further configured to: if the second processing unit 3504 has a lower priority than the fourth application in the third application After the interaction with the third application is interrupted, the first processing unit 3502 further sends a resume instruction to the second processing unit 3504 after completing the interaction with the fourth application, The second processing unit 3504 continues to interact with the third application through the second user interface; and the second processing unit 3504 is further configured to: if the first processing unit 3502 is in the first application If the priority of the program is lower than the second application, the interaction with the first application is interrupted, and after the second processing unit 3504 completes the interaction with the second application, Sending a resume instruction to the first processing unit 3502, causing the first processing unit 3502 to continue interacting with the first application through the first user interface.
  • the first processing unit 3502 is further configured to: close the first desktop initiator or the first operating system according to the interface switching command received by the first user interface. Or being placed in the background to run the second desktop launcher or the second operating system by the second processing unit 3504; and the second processing unit 3504 is further configured to: receive according to the second user interface The interface switching command is to close or put the second desktop launcher or the second operating system into the background to run the first desktop launcher or the first operating system by the first processing unit 3502.
  • the interface switching may be manually issued.
  • the instruction causes the terminal to preferentially process the corresponding application by switching the user interface.
  • the method further includes: a setting unit 3510, configured to set the first user interface or the second user interface as a default interface; wherein, each time the device is powered on, the default is
  • the first processing unit 3502 runs the corresponding first desktop launcher or the first operating system, or runs the corresponding second desktop launcher or the second operating system by the second processing unit 3504.
  • the terminal by setting a default interface, the terminal only needs to run a specified desktop initiator or operating system when booting, and it is not necessary to run all desktop initiators or operating systems at the same time, thereby helping to reduce the terminal.
  • the terminal can also not set the default interface.
  • booting all the desktop launchers or operating systems are started at the same time, but only one of the user interfaces is displayed, and the others are placed in the background, when the user needs to switch to other
  • the user interface it is not necessary to start the corresponding desktop launcher or operating system in real time, and the switching can be directly performed, which helps to shorten the waiting time of the user and enhance the user experience.
  • the first processing unit 3502 is configured to use the private data in the terminal.
  • the second processing unit 3504 is configured to process non-private data in the terminal.
  • the private data is processed by the first processing unit 3502, and the second processing unit 3504 processes the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding being in the terminal.
  • the second processing unit 3504 processes the non-private data, so that the private data and the non-private data are physically separated from each other, thereby avoiding being in the terminal.
  • the private data processed by the first processing unit 3502 is stored by the first storage unit 3506, and the second storage unit 3508 stores the non-private data processed by the second processing unit 3504 so that the private data and the non-private data are stored and called. Physical isolation is also achieved for better data security.
  • private data refers to data that is private to the user, such as passwords, account numbers, short message content, mail content, financial data, etc., rather than private data means that the data is not personal privacy for the user.
  • Data such as downloaded music, e-books, radio data, web news, and more.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the present invention provides a terminal and a display control method for a user interface, which can enable different types of data in the terminal to be processed by different processors, and the processor Physically isolated, and different types of data are physically isolated, which effectively improves the security of the terminal.
  • first and second are used for descriptive purposes only and are not to be construed as indicating or implying relative importance.
  • the term “plurality” refers to two or more, unless specifically defined otherwise.

Landscapes

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

Abstract

本发明提供了一种终端,包括:第一处理器和第二处理器,分别用于对所述终端内不同类型的数据进行处理;第一存储器,仅连接至所述第一处理器,用于对所述第一处理器处理的数据进行存储;第二存储器,仅连接至所述第二处理器,用于对所述第二处理器处理的数据进行存储。本发明还提出了一种用户界面的显示控制方法。通过本发明的技术方案,可以使终端内不同类型的数据,采用不同的处理器进行处理,并且处理器之间在物理上被隔离处理,以及不同类型的数据在物理上隔离存储,有效提升了终端的安全性。

Description

说 明 书
终端、 用户界面的显示控制方法和显示控制系统 技术领域
本发明涉及数据安全技术领域, 具体而言, 涉及一种终端、 一种用户界面的显示控制方 法以及显示控制系统。 背景技术
如图 1 所示, 终端中安装有很多外设 (即外部设备 102 ) , 比如显示屏、 触摸屏、 照相 机、 按键、 通信模块、 传感器模块等。 在相关技术中, 终端内仅设置有单个处理器 (图 1 中 所示的 CPU ) , 则该处理器能够在任意应用程序的控制下, 向任意外设发送数据, 也可以接 收来自任意外设的数据, 则当终端内存在一些具有过高权限的应用程序时, 尤其是来源不定 的第三方应用程序, 则这些应用程序能够轻易地控制终端中仅有的处理器, 来调用其中的任 意数据, 包括重要的、 私密的数据, 甚至任意上传至其他终端或服务器。 同时, 由于该仅有 的处理器所处理的所有数据都处于相同的存储空间 (图 1 中所示的 RAM和 ROM ) 中, 因而 上述应用程序还极可能通过简单的破解技术, 即可从该存储空间内获取任意数据。 因此, 对 于终端内的应用程序, 特别是当终端内的某些第三方应用程序, 是来自一些别有用心的黑客 或个人信息贩卖者的时候, 将导致终端内的数据, 尤其是用户信息等私密数据, 处于极为不 安全的状态下。
所以, 如何解决单个处理器给终端带来的数据安全问题, 成为目前亟待解决的技术问 题。 发明内容
本发明正是基于上述问题中至少之一, 提出了一种新的技术方案, 可以使终端内不同类 型的数据, 采用不同的处理器进行处理, 并且处理器之间在物理上被隔离处理, 以及不同类 型的数据在物理上隔离存储, 有效提升了终端的安全性。
有鉴于此, 本发明提出了一种终端, 包括: 第一处理器和第二处理器, 分别用于对所述 终端内不同类型的数据进行处理; 第一存储器, 仅连接至所述第一处理器, 用于对所述第一 处理器处理的数据进行存储; 第二存储器, 仅连接至所述第二处理器, 用于对所述第二处理 器处理的数据进行存储。
在该技术方案中, 针对终端内不同类型的数据, 采用不同的处理器对其进行处理, 使得 数据处理过程在物理上被隔离, 有助于提升终端的数据安全性。 而通过使用独立的存储器对 每个处理器处理的数据进行存储, 从而使得不同类型的数据在物理上被隔离存储, 不同处理 器也仅能够从自身对应连接的存储器中获取数据, 避免私有、 重要的数据被不安全的应用程 序通过其他处理器或存储器进行获取, 有助于提升终端的数据安全性。
需要说明的是, 第一处理器和第二处理器并不用于限制终端内的处理器数量为两个, 而 终端内实际上显然可以包含更多的处理器。 其中, "第一" 和 "第二" 代表了终端内的任意 两个处理器之间的相互关系, 用于区分任意两个被进行比较的处理器。 比如对于包含有 3 个 处理器的终端, 当选取处理器 1和处理器 2进行比较时, 可以将处理器 1和处理器 2中的任 一个称为 "第一处理器" , 另一个为 "第二处理器" ; 而当选取处理器 2和处理器 3 进行比 较时, 可以将处理器 2 和处理器 3 中的任一个称为 "第一处理器" , 另一个为 "第二处理 器" , 依此类推。 当然, 为了增强终端的处理能力, 可以使用多个处理器来处理同一类数据, 则这多个处 理器应该被视为一个处理器组, 则 "第一处理器" 和 "第二处理器" 实际上还可以表示用于 处理相同类型的数据的处理器组, 每个处理器组内包含有一个或多个处理器。 同时, 为了对 应于更多类型的数据, 终端内显然还可以存在更多的处理器组, 比如 "第三处理器组" 、 "第四处理器组,' 等。
在上述技术方案中, 优选地, 所述第一处理器还用于: 在需要与所述终端的外部设备执 行数据交互时, 向所述第二处理器发送中断信号, 以中断所述第二处理器与所述终端的外部 设备之间的数据交互操作。
在该技术方案中, 若第二处理器正在与外部设备执行数据交互, 而第一处理器接收到刚 刚发生的业务数据时, 可以通过向第二处理器发送中断信号, 从而优先由第一处理器与外部 设备进行交互, 从而一方面避免了第一处理器和第二处理器同时与外部设备进行交互, 降低 了由此导致数据安全问题的可能性; 另一方面, 当第一处理器所需要处理的业务数据更为紧 急, 或第一处理器所处理的数据更为重要或私密性更强等情况下, 可以优先进行处理, 确保 数据处理不被耽搁。
在上述任一技术方案中, 优选地, 所述第一处理器还用于: 在完成与所述终端的外部设 备的数据交互操作时, 向所述第二处理器发送恢复信号, 以恢复所述第二处理器与所述终端 的外部设备之间的数据交互操作。
在该技术方案中, 通过发送恢复信号, 使得及时恢复第二处理器被中断的数据处理过 程, 从而既可以对第一处理器和第二处理器需要执行的数据处理过程实现了有序的安排, 又 能够尽可能地降低对第二处理器的处理过程造成的影响。
当然, 上述的中断信号和恢复信号的发送, 也可以由第二处理器向第一处理器进行发 送, 只要符合预设的数据重要程度、 数据处理顺序等规则即可。
在上述任一技术方案中, 优选地, 还包括: 线路切换装置, 一端连接至所述终端的外部 设备, 另一端分别连接至所述第一处理器和所述第二处理器, 用于实现所述第一处理器或所 述第二处理器与所述终端的外部设备之间通路的保持或断开; 其中, 当所述外部设备与所述 第一处理器进行交互时, 所述线路切换装置断开所述外部设备与所述第二处理器之间的通 路, 当所述外部设备与所述第二处理器进行交互时, 所述线路切换装置断开所述外部设备与 所述第一处理器之间的通路。
在该技术方案中, 通过线路切换装置, 使得通过物理开关器件来控制第一处理器和第二 处理器与外部设备的交互过程, 在物理上对不同类型的数据与外部设备的交互进行隔离, 避 免同时交互时导致其中的数据、 尤其是重要或私密的数据容易被获取和外泄的问题。
在上述任一技术方案中, 优选地, 所述线路切换装置的控制端口与所述第一处理器相连 接, 则所述线路切换装置还用于: 在通过所述控制端口接收到来自所述第一处理器的第一切 换指令的情况下, 判定所述第一处理器需要与所述外部设备进行交互, 在通过所述控制端口 接收到来自所述第一处理器的第二切换指令的情况下, 判定所述第二处理器需要与所述外部 设备进行交互; 其中, 所述第一处理器需要与所述终端的外部设备执行数据交互时, 发送所 述第一切换指令, 在接收到来自所述第二处理器的切换请求且接受所述切换请求的情况下, 发送所述第二切换指令。
在该技术方案中, 控制端口是用于对线路切换装置的线路切换动作直接进行控制的。 第 —处理器可以为终端内的任一处理器, 通过预设任一处理器与控制端口之间的连接关系, 即 可由该第一处理器实现所有处理器与外部设备的物理线路的连接和切换控制。 或者, 第一处 理器也可以为终端内用于处理重要、 私密类型的数据的处理器, 从而第一处理器是相对于终 端内的其他处理器的 "安全处理器" , 由第一处理器对线路切换装置进行控制时, 既能够完 成数据的传输, 又能够确保终端的数据安全性, 从物理上使得非法应用程序无法通过第二处 理器等对线路切换装置进行控制, 避免第一处理器处理的数据被非法应用程序获取。
在上述任一技术方案中, 优选地, 所述线路切换装置还用于: 在检测到所述外部设备需 要传输的数据为所述第一处理器对应的数据类型的情况下, 判定所述外部设备需要与所述第 一处理器进行交互; 在检测到所述外部设备需要传输的数据为所述第二处理器对应的数据类 型的情况下, 判定所述外部设备需要与所述第二处理器进行交互。
在该技术方案中, 线路切换装置通过对外部设备需要传输的数据进行类型辨识, 直接对 线路进行切换, 从而实现对数据的传输方向进行控制, 确保数据类型与具体被传输至的处理 器之间相互对应, 避免由于数据被错误传输至不对应的处理器而导致数据被窃取等安全问题 的发生。
在上述任一技术方案中, 优选地, 所述第二处理器还用于: 在接收到来自所述第一处理 器的中断信号时, 将自身连接至所述外部设备的端口设置成高阻状态。
在该技术方案中, 通过第二处理器对端口电平的置位, 控制其与外部设备的物理连接关 系, 在物理上与第一处理器和外部设备的交互进行隔离, 避免由于多个处理器同时与外部设 备处于线路连通状态而导致数据容易被获取和外泄的问题。
在上述任一技术方案中, 优选地, 所述第一存储器还用于: 存储第一桌面启动器或第一 操作系统; 所述第二存储器还用于: 存储第二桌面启动器或第二操作系统; 其中, 所述第一 处理器通过运行所述第一桌面启动器或所述第一操作系统后显示出的第一用户界面, 执行用 户界面交互; 所述第二处理器通过运行所述第二桌面启动器或所述第二操作系统后显示出的 第二用户界面, 执行用户界面交互。
通过在第一存储单元中存储第一桌面启动器或第一操作系统、 在第二存储单元中存储第 二桌面启动器或第二操作系统, 使得只有第一处理单元能够直接调用第一桌面启动器或第一 操作系统, 只有第二处理单元能够直接调用第二桌面启动器或第二操作系统, 确保应用 (桌 面启动器) 和系统 (操作系统) 的安全性, 避免遭到破坏或篡改。 同时, 由于第一处理单元 直接调用第一桌面启动器或第一操作系统、 第二处理单元调用第二桌面启动器或第二操作系 统, 使得第一处理单元处理的业务和第二处理单元处理的业务, 能够分别实现独立的控制需 求和 UI交互, 也有助于满足各自的数据隐私需求, 从而提升终端的安全性和使用过程中的便 捷性。
在上述任一技术方案中, 优选地, 所述第一处理器还用于: 在需要进行用户界面交互 时, 检测当前显示的用户界面, 若为所述第一用户界面, 则直接执行交互, 若为所述第二用 户界面, 则向所述第二处理器发送界面切换指令, 并在所述第二处理器将所述第二桌面启动 器或第二操作系统关闭或放至后台之后, 运行所述第一桌面启动器或第一操作系统; 以及 所述第二处理器还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若为 所述第二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理器发送界 面切换指令, 并在所述第一处理器将所述第一桌面启动器或第一操作系统关闭或放至后台之 后, 运行所述第二桌面启动器或第二操作系统。
在该技术方案中, 第二处理单元在使用相应的第二用户界面实现 UI交互的过程中, 第一 处理单元仍可以通过发送界面切换指令, 及时切换至第一用户界面 (或由第一用户界面切换 至第二用户界面, 此处不再赘述) , 通过对用户界面的合理切换, 从而及时执行一些可能更 为重要的处理任务或业务。
在上述任一技术方案中, 优选地, 所述第一处理器还用于: 在通过所述第一用户界面与 第一应用程序进行交互时, 若接收到来自所述第二处理器的界面切换指令, 所述界面切换指 令表示所述第二处理器希望通过所述第二用户界面与第二应用程序进行交互, 则在所述第一 应用程序的优先级高于所述第二应用程序的情况下, 继续执行交互直至完成交互, 在所述第 一应用程序的优先级低于所述第二应用程序的情况下, 将所述第一桌面启动器或第一操作系 统关闭或放至后台, 以由所述第二处理器启动所述第二用户界面; 以及
所述第二处理器还用于: 在通过所述第二用户界面与第三应用程序进行交互时, 若接收 到来自所述第一处理器的界面切换指令, 所述界面切换指令表示所述第一处理器希望通过所 述第一用户界面与第四应用程序进行交互, 则在所述第三应用程序的优先级高于所述第四应 用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程序的优先级低于所述第四 应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或放至后台, 以由所述第一 处理器启动所述第一用户界面。
在该技术方案中, 通过对第一处理单元和第二处理单元需要处理的应用程序 (或数据业 务) 的优先级进行判断, 并使得优先级较高的应用程序被优先处理, 使得存在多个处理单 元、 多个用户界面的情况下, 能够对处理任务的先后顺序进行有效地沟通和协调, 使得重要 数据得以优先处理, 实现更好的终端运行管理。
在上述任一技术方案中, 优选地, 所述第二处理器还用于: 若所述第一处理器在所述第 一应用程序的优先级低于所述第二应用程序时, 中断与所述第一应用程序的交互, 则在完成 与所述第二应用程序的交互之后, 还向所述第一处理器发送恢复指令, 使所述第一处理器继 续通过所述第一用户界面与所述第一应用程序进行交互; 以及
所述第一处理器还用于: 若所述第二处理器在所述第三应用程序的优先级低于所述第四 应用程序时, 中断与所述第三应用程序的交互, 则在完成与所述第四应用程序的交互之后, 还向所述第二处理器发送恢复指令, 使所述第二处理器继续通过所述第二用户界面与所述第 三应用程序进行交互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
在上述任一技术方案中, 优选地, 所述第一处理器还用于: 根据所述第一用户界面接收 到的界面切换命令, 将所述第一桌面启动器或第一操作系统关闭或放至后台; 所述第二处理 器还用于: 根据所述第一用户界面接收到的所述界面切换命令, 运行所述第二桌面启动器或 第二操作系统; 以及所述第二处理器还用于: 根据所述第二用户界面接收到的界面切换命 令, 将所述第二桌面启动器或第二操作系统关闭或放至后台; 所述第一处理器还用于: 根据 所述第二用户界面接收到的所述界面切换命令, 运行所述第一桌面启动器或第一操作系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述任一技术方案中, 优选地, 所述第一处理器用于对所述终端内的私密数据进行处 理, 所述第二处理器用于对所述终端内的非私密数据进行处理。
在该技术方案中, 通过第一处理单元来处理私密数据、 第二处理单元来处理非私密数 据, 使得私密数据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中仅使用单 个处理器时, 仅通过权限上的破解等就可轻易使得任意应用程序从该单个处理器中获取私密 数据。
通过第一存储单元来存储第一处理单元处理的私密数据、 第二存储单元来存储第二处理 单元处理的非私密数据, 使得私密数据和非私密数据在存储和调用的时候, 也实现物理上的 隔离, 从而得到更好的数据安全效果。
此外, 私密数据是指对于用户来讲该数据属于个人隐私的数据, 例如密码、 账号、 短信 内容、 邮件内容、 财务数据等, 而非私密数据是指对于用户来讲该数据不属于个人隐私的数 据, 例如下载的音乐、 电子书、 收音机数据、 网页新闻等。
本发明还提出了一种用户界面的显示控制方法, 包括: 通过第一处理单元和第二处理单 元对终端内不同类型的数据进行处理; 通过第一存储单元和第二存储单元分别对所述第一处 理单元和所述第二处理单元处理后的数据进行存储, 且所述第一存储单元中还存储有第一桌 面启动器或第一操作系统, 所述第二存储单元还存储有第二桌面启动器或第二操作系统; 其 中, 所述第一处理器通过运行所述第一桌面启动器或所述第一操作系统后显示出的第一用户 界面, 执行用户界面交互; 所述第二处理器通过运行所述第二桌面启动器或所述第二操作系 统后显示出的第二用户界面, 执行用户界面交互。
通过在第一存储单元中存储第一桌面启动器或第一操作系统、 在第二存储单元中存储第 二桌面启动器或第二操作系统, 使得只有第一处理单元能够直接调用第一桌面启动器或第一 操作系统, 只有第二处理单元能够直接调用第二桌面启动器或第二操作系统, 确保应用 (桌 面启动器) 和系统 (操作系统) 的安全性, 避免遭到破坏或篡改。 同时, 由于第一处理单元 直接调用第一桌面启动器或第一操作系统、 第二处理单元调用第二桌面启动器或第二操作系 统, 使得第一处理单元处理的业务和第二处理单元处理的业务, 能够分别实现独立的控制需 求和 UI交互, 也有助于满足各自的数据隐私需求, 从而提升终端的安全性和使用过程中的便 捷性。
在上述任一技术方案中, 优选地, 所述第一处理单元在需要进行用户界面交互时, 检测 当前显示的用户界面, 若为所述第一用户界面, 则直接执行交互, 若为所述第二用户界面, 则向所述第二处理单元发送界面切换指令, 并在所述第二处理单元将所述第二桌面启动器或 第二操作系统关闭或放至后台之后, 运行所述第一桌面启动器或第一操作系统; 以及所述第 二处理单元在需要进行用户界面交互时, 检测当前显示的用户界面, 若为所述第二用户界 面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理单元发送界面切换指令, 并在所述第一处理单元将所述第一桌面启动器或第一操作系统关闭或放至后台之后, 运行所 述第二桌面启动器或第二操作系统。
在该技术方案中, 第二处理单元在使用相应的第二用户界面实现 UI交互的过程中, 第一 处理单元仍可以通过发送界面切换指令, 及时切换至第一用户界面 (或由第一用户界面切换 至第二用户界面, 此处不再赘述) , 通过对用户界面的合理切换, 从而及时执行一些可能更 为重要的处理任务或业务。
在上述任一技术方案中, 优选地, 还包括: 所述第一处理单元在通过所述第一用户界面 与第一应用程序进行交互时, 若接收到来自所述第二处理单元的界面切换指令, 所述界面切 换指令表示所述第二处理单元希望通过所述第二用户界面与第二应用程序进行交互, 则所述 第一处理单元在所述第一应用程序的优先级高于所述第二应用程序的情况下, 继续执行交互 直至完成交互, 在所述第一应用程序的优先级低于所述第二应用程序的情况下, 将所述第一 桌面启动器或第一操作系统关闭或放至后台, 以由所述第二处理器启动所述第二用户界面; 以及
所述第二处理单元在通过所述第二用户界面与第三应用程序进行交互时, 若接收到来自 所述第一处理单元的界面切换指令, 所述界面切换指令表示所述第一处理单元希望通过所述 第一用户界面与第四应用程序进行交互, 则所述第二处理单元在所述第三应用程序的优先级 高于所述第四应用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程序的优先 级低于所述第四应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或放至后 台, 以由所述第一处理器启动所述第一用户界面。
在该技术方案中, 通过对第一处理单元和第二处理单元需要处理的应用程序 (或数据业 务) 的优先级进行判断, 并使得优先级较高的应用程序被优先处理, 使得存在多个处理单 元、 多个用户界面的情况下, 能够对处理任务的先后顺序进行有效地沟通和协调, 使得重要 数据得以优先处理, 实现更好的终端运行管理。
在上述任一技术方案中, 优选地, 还包括: 若所述第一处理单元在所述第一应用程序的 优先级低于所述第二应用程序的情况下, 中断与所述第一应用程序的交互, 则所述第二处理 单元在完成与所述第二应用程序的交互之后, 还向所述第一处理单元发送恢复指令, 使所述 第一处理单元继续通过所述第一用户界面与所述第一应用程序进行交互; 以及若所述第二处 理单元在所述第三应用程序的优先级低于所述第四应用程序的情况下, 中断与所述第三应用 程序的交互, 则所述第一处理单元在完成与所述第四应用程序的交互之后, 还向所述第二处 理单元发送恢复指令, 使所述第二处理单元继续通过所述第二用户界面与所述第三应用程序 进行交互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
在上述任一技术方案中, 优选地, 还包括: 根据所述第一用户界面接收到的界面切换命 令, 所述第一处理单元将所述第一桌面启动器或第一操作系统关闭或放至后台, 且所述第二 处理单元运行所述第二桌面启动器或第二操作系统; 以及根据所述第二用户界面接收到的界 面切换命令, 所述第二处理单元将所述第二桌面启动器或第二操作系统关闭或放至后台, 且 所述第一处理单元运行所述第一桌面启动器或第一操作系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述任一技术方案中, 优选地, 还包括: 将所述第一用户界面或所述第二用户界面设 置为默认界面; 每次开机时, 默认运行对应的所述第一桌面启动器或第一操作系统或所述第 二桌面启动器或第二操作系统。
在该技术方案中, 通过设置默认界面, 使得终端在开机时, 仅需要运行指定的一个桌面 启动器或操作系统, 不必须同时运行所有的桌面启动器或操作系统, 从而有助于降低对终端 的运行资源的消耗和电量的损耗。
当然, 终端也可以不设置默认界面, 则当开机时, 同时启动所有的桌面启动器或操作系 统, 但仅显示其中的某一个用户界面, 将其他的放至后台, 则当用户需要切换至其他的用户 界面时, 不必实时启动相应的桌面启动器或操作系统, 直接执行切换即可, 有助于缩短用户 的等待时间, 增强用户的使用体验。
在上述任一技术方案中, 优选地, 还包括: 所述第一处理器用于对所述终端内的私密数 据进行处理, 所述第二处理器用于对所述终端内的非私密数据进行处理。
在该技术方案中, 通过第一处理单元来处理私密数据、 第二处理单元来处理非私密数 据, 使得私密数据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中仅使用单 个处理器时, 仅通过权限上的破解等就可轻易使得任意应用程序从该单个处理器中获取私密 数据。
通过第一存储单元来存储第一处理单元处理的私密数据、 第二存储单元来存储第二处理 单元处理的非私密数据, 使得私密数据和非私密数据在存储和调用的时候, 也实现物理上的 隔离, 从而得到更好的数据安全效果。
此外, 私密数据是指对于用户来讲该数据属于个人隐私的数据, 例如密码、 账号、 短信 内容、 邮件内容、 财务数据等, 而非私密数据是指对于用户来讲该数据不属于个人隐私的数 据, 例如下载的音乐、 电子书、 收音机数据、 网页新闻等。
本发明还提出了一种用户界面的显示控制系统, 包括: 第一处理单元和第二处理单元, 分别用于对终端内不同类型的数据进行处理; 第一存储单元和第二存储单元, 分别用于对所 述第一处理单元和所述第二处理单元处理后的数据进行存储, 且所述第一存储单元还用于存 储第一桌面启动器或第一操作系统, 所述第二存储单元还用于存储第二桌面启动器或第二操 作系统; 其中, 所述第一处理器还用于: 通过运行所述第一桌面启动器或所述第一操作系统 后显示出的第一用户界面, 执行用户界面交互; 所述第二处理器还用于: 通过运行所述第二 桌面启动器或所述第二操作系统后显示出的第二用户界面, 执行用户界面交互。
通过在第一存储单元中存储第一桌面启动器或第一操作系统、 在第二存储单元中存储第 二桌面启动器或第二操作系统, 使得只有第一处理单元能够直接调用第一桌面启动器或第一 操作系统, 只有第二处理单元能够直接调用第二桌面启动器或第二操作系统, 确保应用 (桌 面启动器) 和系统 (操作系统) 的安全性, 避免遭到破坏或篡改。 同时, 由于第一处理单元 直接调用第一桌面启动器或第一操作系统、 第二处理单元调用第二桌面启动器或第二操作系 统, 使得第一处理单元处理的业务和第二处理单元处理的业务, 能够分别实现独立的控制需 求和 UI交互, 也有助于满足各自的数据隐私需求, 从而提升终端的安全性和使用过程中的便 捷性。
在上述技术方案中, 优选地, 所述第一处理单元还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若为所述第一用户界面, 则直接执行交互, 若为所述第二用户界 面, 则向所述第二处理单元发送界面切换指令, 并在所述第二处理单元将所述第二桌面启动 器或第二操作系统关闭或放至后台之后, 运行所述第一桌面启动器或第一操作系统; 以及 所述第二处理单元还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若 为所述第二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理单元发 送界面切换指令, 并在所述第一处理单元将所述第一桌面启动器或第一操作系统关闭或放至 后台之后, 运行所述第二桌面启动器或第二操作系统。
在该技术方案中, 第二处理单元在使用相应的第二用户界面实现 UI交互的过程中, 第一 处理单元仍可以通过发送界面切换指令, 及时切换至第一用户界面 (或由第一用户界面切换 至第二用户界面, 此处不再赘述) , 通过对用户界面的合理切换, 从而及时执行一些可能更 为重要的处理任务或业务。
在上述任一技术方案中, 优选地, 所述第一处理单元还用于: 在通过所述第一用户界面 与第一应用程序进行交互时, 若接收到来自所述第二处理单元的界面切换指令, 所述界面切 换指令表示所述第二处理单元希望通过所述第二用户界面与第二应用程序进行交互, 则所述 第一处理单元在所述第一应用程序的优先级高于所述第二应用程序的情况下, 继续执行交互 直至完成交互, 在所述第一应用程序的优先级低于所述第二应用程序的情况下, 将所述第一 桌面启动器或第一操作系统关闭或放至后台, 以由所述第二处理器启动所述第二用户界面; 以及
所述第二处理单元还用于: 在通过所述第二用户界面与第三应用程序进行交互时, 若接 收到来自所述第一处理单元的界面切换指令, 所述界面切换指令表示所述第一处理单元希望 通过所述第一用户界面与第四应用程序进行交互, 则所述第二处理单元在所述第三应用程序 的优先级高于所述第四应用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程 序的优先级低于所述第四应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或 放至后台, 以由所述第一处理器启动所述第一用户界面。
在该技术方案中, 通过对第一处理单元和第二处理单元需要处理的应用程序 (或数据业 务) 的优先级进行判断, 并使得优先级较高的应用程序被优先处理, 使得存在多个处理单 元、 多个用户界面的情况下, 能够对处理任务的先后顺序进行有效地沟通和协调, 使得重要 数据得以优先处理, 实现更好的终端运行管理。
在上述任一技术方案中, 优选地, 所述第一处理单元还用于: 若所述第二处理单元在所 述第三应用程序的优先级低于所述第四应用程序的情况下, 中断与所述第三应用程序的交 互, 则所述第一处理单元在完成与所述第四应用程序的交互之后, 还向所述第二处理单元发 送恢复指令, 使所述第二处理单元继续通过所述第二用户界面与所述第三应用程序进行交 互; 以及, 所述第二处理单元还用于: 若所述第一处理单元在所述第一应用程序的优先级低 于所述第二应用程序的情况下, 中断了与所述第一应用程序的交互, 则所述第二处理单元在 完成与所述第二应用程序的交互之后, 还向所述第一处理单元发送恢复指令, 使所述第一处 理单元继续通过所述第一用户界面与所述第一应用程序进行交互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
在上述任一技术方案中, 优选地, 所述第一处理单元还用于: 根据所述第一用户界面接 收到的界面切换命令, 将所述第一桌面启动器或第一操作系统关闭或放至后台, 以由所述第 二处理单元运行所述第二桌面启动器或第二操作系统; 以及, 所述第二处理单元还用于: 根 据所述第二用户界面接收到的界面切换命令, 将所述第二桌面启动器或第二操作系统关闭或 放至后台, 以由所述第一处理单元运行所述第一桌面启动器或第一操作系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述任一技术方案中, 优选地, 还包括: 设置单元, 用于将所述第一用户界面或所述 第二用户界面设置为默认界面; 其中, 每次开机时, 默认由所述第一处理单元运行对应的所 述第一桌面启动器或第一操作系统, 或由所述第二处理单元运行对应的所述第二桌面启动器 或第二操作系统。
在该技术方案中, 通过设置默认界面, 使得终端在开机时, 仅需要运行指定的一个桌面 启动器或操作系统, 不必须同时运行所有的桌面启动器或操作系统, 从而有助于降低对终端 的运行资源的消耗和电量的损耗。
当然, 终端也可以不设置默认界面, 则当开机时, 同时启动所有的桌面启动器或操作系 统, 但仅显示其中的某一个用户界面, 将其他的放至后台, 则当用户需要切换至其他的用户 界面时, 不必实时启动相应的桌面启动器或操作系统, 直接执行切换即可, 有助于缩短用户 的等待时间, 增强用户的使用体验。
在上述任一技术方案中, 优选地, 所述第一处理单元用于对所述终端内的私密数据进行 处理, 所述第二处理单元用于对所述终端内的非私密数据进行处理。
在该技术方案中, 通过第一处理单元来处理私密数据、 第二处理单元来处理非私密数 据, 使得私密数据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中仅使用单 个处理器时, 仅通过权限上的破解等就可轻易使得任意应用程序从该单个处理器中获取私密 数据。
通过第一存储单元来存储第一处理单元处理的私密数据、 第二存储单元来存储第二处理 单元处理的非私密数据, 使得私密数据和非私密数据在存储和调用的时候, 也实现物理上的 隔离, 从而得到更好的数据安全效果。
此外, 私密数据是指对于用户来讲该数据属于个人隐私的数据, 例如密码、 账号、 短信 内容、 邮件内容、 财务数据等, 而非私密数据是指对于用户来讲该数据不属于个人隐私的数 据, 例如下载的音乐、 电子书、 收音机数据、 网页新闻等。
通过以上技术方案, 可以使终端内不同类型的数据, 采用不同的处理器进行处理, 并且 处理器之间在物理上被隔离处理, 以及不同类型的数据在物理上隔离存储, 有效提升了终端 的安全性。
本领域内的技术人员应明白, 本发明的实施例可提供为方法、 系统、 或计算机程序产 品。 因此, 本发明可采用完全硬件实施例、 完全软件实施例、 或结合软件和硬件方面的实施 例的形式。 而且, 本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用 存储介质 (包括但不限于磁盘存储器、 CD-ROM、 光学存储器等) 上实施的计算机程序产品 的形式。
本发明是参照根据本发明实施例的方法、 设备 (系统) 、 和计算机程序产品的流程图和 / 或方框图来描述的。 应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和 /或 方框、 以及流程图和 /或方框图中的流程和 /或方框的结合。 可提供这些计算机程序指令到通 用计算机、 专用计算机、 嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机 器, 使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图 一个流程或多个流程和 /或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工 作的计算机可读存储器中, 使得存储在该计算机可读存储器中的指令产生包括指令装置的制 造品, 该指令装置实现在流程图一个流程或多个流程和 /或方框图一个方框或多个方框中指定 的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上, 使得在计算机或 其他可编程设备上执行一系列操作步骤以产生计算机实现的处理, 从而在计算机或其他可编 程设备上执行的指令提供用于实现在流程图一个流程或多个流程和 /或方框图一个方框或多个 方框中指定的功能的步骤。 附图说明
图 1示出了相关技术中的终端的结构示意图;
图 2示出了根据本发明的一个实施例的终端的结构示意图;
图 3A示出了根据本发明的一个实施例的数据处理方法的流程图;
图 3B示出了根据本发明的另一个实施例的数据处理方法的流程图;
图 4示出了根据本发明的实施例的数据处理方法的流程图;
图 5 示出了根据本发明的实施例的一个实施例的用于对处理器与外部设备的线路进行通 断控制的终端结构示意图;
图 6示出了根据本发明的另一个实施例的终端的结构示意图;
图 7A为图 6所示的实施例的一种具体实施方式下的终端结构示意图;
图 7B为图 6所示的实施例的另一种具体实施方式下的终端结构示意图;
图 8 为图 6 所示的实施例的一种具体实施方式下的包含两个以上处理器的终端结构示意 图;
图 9为图 6所示的实施例的另一种具体实施方式下的包含两个以上处理器的终端结构示 意图;
图 10为图 9所示的实施例的一种具体实施方式下的终端结构示意图;
图 1 1示出了根据本发明的实施例的另一个实施例的用于对处理器与外部设备的线路进行 通断控制的终端结构示意图;
图 12为图 1 1 所示的实施例的一种具体实施方式下的包含两个以上处理器的终端结构示 意图;
图 13 为图 1 1 所示的实施例的另一种具体实施方式下的包含两个以上处理器的终端结构 示意图;
图 14为图 13所示的实施例的一种具体实施方式下的终端结构示意图;
图 15示出了根据本发明的实施例的又一个实施例的用于对处理器与外部设备的线路进行 通断控制的终端结构示意图;
图 16为图 15 所示的实施例的一种具体实施方式下的包含两个以上处理器的终端结构示 意图; 图 17为图 15 所示的实施例的另一种具体实施方式下的包含两个以上处理器的终端结构 示意图;
图 18为图 17所示的实施例的一种具体实施方式下的终端结构示意图;
图 19示出了根据本发明的一个实施例的单个通信模块与处理器的连接结构示意图; 图 20示出了根据本发明的一个实施例的多个通信模块与处理器的连接结构示意图; 图 21为图 19或图 20所示实施例的每个通信模块与两个以上处理器的一种连接结构示意 图;
图 22为图 19或图 20所示实施例的每个通信模块与两个以上处理器的另一种连接结构示 意图;
图 23为图 22所示实施例的一种具体实施方式下的连接结构示意图;
图 24示出了根据本发明的另一个实施例的单个通信模块与处理器的连接结构示意图; 图 25示出了根据本发明的另一个实施例的多个通信模块与处理器的连接结构示意图; 图 26为图 24或图 25所示实施例的每个通信模块与 2个以上处理器的一种连接结构示意 图;
图 27为图 24或图 25所示实施例的每个通信模块与 2个以上处理器的另一种连接结构示 意图;
图 28为图 27所示实施例的一种具体实施方式下的连接结构示意图。
图 29示出了根据本发明的又一个实施例的终端的结构示意图;
图 30为图 29所示终端的一个实施例的结构示意图;
图 31为图 29所示终端的另一个实施例的结构示意图;
图 32为图 29所示终端的又一个实施例的结构示意图;
图 33示出了根据本发明的实施例的 CPU1执行用户界面切换控制的流程图;
图 34示出了根据本发明的实施例的 CPU2执行用户界面切换控制的流程图;
图 35示出了根据本发明的实施例的用户界面的显示控制系统的示意框图。 具体实施方式
为了能够更清楚地理解本发明的上述目的、 特征和优点, 下面结合附图和具体实施方式 对本发明进行进一步的详细描述。 需要说明的是, 在不冲突的情况下, 本申请的实施例及实 施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明, 但是, 本发明还可以采用 其他不同于在此描述的其他方式来实施, 因此, 本发明的保护范围并不受下面公开的具体实 施例的限制。
图 2示出了根据本发明的一个实施例的终端的结构示意图。
如图 2 所示, 本发明提出了一种终端, 包括: 第一处理器 (如图 2 所示的 CPU1 ) 和第 二处理器 (如图 2 所示的 CPU2 ) , 分别用于对所述终端内不同类型的数据进行处理; 第一 存储器 (比如图 2 所示的 RAM1、 EMMC1 等) , 仅连接至第一处理器, 用于对所述第一处 理器处理的数据进行存储; 第二存储器 (比如图 2 所示的 RAM2、 EMMC2 等) , 仅连接至 所述第二处理器, 用于对所述第二处理器处理的数据进行存储。
在该技术方案中, 针对终端内不同类型的数据, 采用不同的处理器对其进行处理, 使得 数据处理过程在物理上被隔离, 有助于提升终端的数据安全性。 而通过使用独立的存储器对 每个处理器处理的数据进行存储, 从而使得不同类型的数据在物理上被隔离存储, 不同处理 器也仅能够从自身对应连接的存储器中获取数据, 避免私有、 重要的数据被不安全的应用程 序通过其他处理器或存储器进行获取, 有助于提升终端的数据安全性。
需要说明的是, 第一处理器和第二处理器并不用于限制终端内的处理器数量为两个, 而 终端内实际上显然可以包含更多的处理器。 其中, "第一" 和 "第二" 代表了终端内的任意 两个处理器之间的相互关系, 用于区分任意两个被进行比较的处理器。 比如对于包含有 3 个 处理器的终端, 当选取处理器 1和处理器 2进行比较时, 可以将处理器 1和处理器 2中的任 一个称为 "第一处理器" , 另一个为 "第二处理器" ; 而当选取处理器 2和处理器 3 进行比 较时, 可以将处理器 2 和处理器 3 中的任一个称为 "第一处理器" , 另一个为 "第二处理 器" , 依此类推。
当然, 为了增强终端的处理能力, 可以使用多个处理器来处理同一类数据, 则这多个处 理器应该被视为一个处理器组, 则 "第一处理器" 和 "第二处理器" 实际上还可以表示用于 处理相同类型的数据的处理器组, 每个处理器组内包含有一个或多个处理器。 同时, 为了对 应于更多类型的数据, 终端内显然还可以存在更多的处理器组, 比如 "第三处理器组" 、 "第四处理器组,' 等。
其中, 第一处理器和第二处理器分别用于处理终端内的不同类型的数据, 因而涉及到对 终端内的数据进行分类。 比如说, 根据数据的重要性, 将数据分为核心数据和非核心数据; 或者根据数据的私密性, 将数据分为私密数据和非私密数据; 或者根据数据的传输方向, 将 数据分为待发送数据和接收到的数据等等。
每种分类情况均可以由厂商来预设, 也可以由用户根据自己的实际情况来确定。 以私密 数据和非私密数据的分类方式为例, 譬如一种情况下, 可以将与某些应用程序相关联的数据 都作为私密数据或非私密数据, 比如将与 "通讯录" 、 "通话记录" 、 "短信息" 、 "邮 件" 等应用程序相关的数据, 不论读取还是写入, 都算作私密数据, 或将与某个游戏应用相 关的数据, 都作为非私密数据; 譬如另一种情况下, 可以将某个类型的数据作为私密数据或 非私密数据, 比如将与网上银行的交互数据都作为私密数据, 而将软件的更新包数据作为非 私密数据等, 还可以包含其他的区分方式, 此处不进行——列举。
以下将结合附图和实施例, 基于上述硬件结构的终端, 对多个方面的技术方案进行阐 述。
一、基于中断信号的数据处理过程
在上述技术方案中, 优选地, 所述第一处理器还用于: 在需要与所述终端的外部设备执 行数据交互时, 向所述第二处理器发送中断信号, 以中断所述第二处理器与所述终端的外部 设备之间的数据交互操作。
在该技术方案中, 若第二处理器正在与外部设备执行数据交互, 而第一处理器接收到刚 刚发生的业务数据时, 可以通过向第二处理器发送中断信号, 从而优先由第一处理器与外部 设备进行交互, 从而一方面避免了第一处理器和第二处理器同时与外部设备进行交互, 降低 了由此导致数据安全问题的可能性; 另一方面, 当第一处理器所需要处理的业务数据更为紧 急, 或第一处理器所处理的数据更为重要或私密性更强等情况下, 可以优先进行处理, 确保 数据处理不被耽搁。
在上述任一技术方案中, 优选地, 所述第一处理器还用于: 在完成与所述终端的外部设 备的数据交互操作时, 向所述第二处理器发送恢复信号, 以恢复所述第二处理器与所述终端 的外部设备之间的数据交互操作。
在该技术方案中, 通过发送恢复信号, 使得及时恢复第二处理器被中断的数据处理过 程, 从而既可以对第一处理器和第二处理器需要执行的数据处理过程实现了有序的安排, 又 能够尽可能地降低对第二处理器的处理过程造成的影响。
当然, 上述的中断信号和恢复信号的发送, 也可以由第二处理器向第一处理器进行发 送, 只要符合预设的数据重要程度、 数据处理顺序等规则即可。
下面结合图 3A 和图 3B, 以包含有 CPU1 和 CPU2 的终端为例, 进一步说明 CPU1、 CPU2与终端的外设 (外部设备) 进行交互的技术方案。 步骤 302, 判断当前业务是否需要 CPU1 与终端的外部设备进行交互, 假设当前用户终 端接收来一个来电, 来电属于用户的私密数据, 因此交由 CPU1 处理, 确定 CPU1 在处理该 来电数据时需要与音频处理设备例如喇叭进行交互。 如果当前业务不需要 CPU1 与终端的外 部设备进行交互, 则结束该流程。
步骤 304, 判断 CPU1 当前是否与该音频处理设备连接, 若没有与音频处理设备连接
(说明该音频处理设备当前与 CPU2连接) , 则进入步骤 306, 否则, 结束该流程。
步骤 306, CPU1向 CPU2发送中断信号, 以使 CPU2断开与音频处理设备的连接。
步骤 308, CPU1与音频处理设备进行连接。
因此在 CPU2 正在处理播放器应用数据该非私密数据并与音频处理设备连接时, 若此时 接收到来电, 则可以中断 CPU2 与音频处理设备的连接, 使 CPU1 能够与该音频处理设备连 接, 即便被 CPU2占用音频处理设备, 也能够及时接收到来电。
在 CPU1 的业务处理结束后, 可通知 CPU2 继续进行未完的业务, 例如继续播放音乐。 采用这样的处理机制, 能够使在多个处理器共存的情况下可有条不紊的进行业务, 不会影响 用户的正常使用, 且由于多个处理器分别用于处理不同的数据, 不仅提高了数据处理速度, 也进一步加强了数据安全性。
如图 3B所示, 示出了 CPU2相对于图 3A所示的 CPU1的处理流程图。
步骤 310, 判断 CPU2是否接收到来自 CPU1发来的中断信号, 若是, 则进入步骤 312, 否则进入步骤 314。
步骤 312, CPU2断开与外设的连接, 若 CPU2正在处理播放器应用数据, 则断开与音频 处理设备的连接。
步骤 314, 判断 CPU2 将要处理的当前业务是否需要使用外设, 例如需将图片通过蓝牙 发送至另一终端, 若是, 则进入步骤 316, 否则结束该流程。
步骤 316, CPU2与蓝牙连接。
上述步骤 312还包括在接收到 CPU1 已完成业务处理的通知时, 继续与音频设备连接, 继续播放音乐。
又例如在显示屏正在显示视频 A ( CPU2 与该显示屏连接) 时, 这时接收到一个视频通 话 (CPU1 希望与该显示屏连接) , 为了保证用户能够及时处理该视频通话, CPU1 向 CPU2 发送中断信号, CPU2 中断播放该视频 A, 在确定 CPU2与显示屏断开连接时, CPU1 与显示 屏建立连接。 在该视频通话结束后, CPU1通知 CPU2可继续播放该视频 A。 CPU2在接收到 该通知后, 与显示屏建立连接, 继续显示视频 A; 该实施例中仅以显示屏为例, 但实际应用 中, 还涉及触摸屏、 扬声器等外设的连接切换。
因此在出现多个处理器都需与同一外设例如屏幕、 照相机、 喇叭、 WIFI连接时, 处理新 业务的处理器可控制正在处理其他业务的其他处理器中断与相应外部设备的连接。 在新业务 被处理结束时, 可通知该其他处理器可继续与该相应外部设备连接, 继续进行未完成的业 务。
图 4示出了根据本发明的实施例的数据处理方法的流程图。
如图 4 所示, 根据本发明的实施例的数据处理方法, 采用所述数据处理方法的终端包括 第一处理单元和第二处理单元, 所述第一处理单元用于处理私密数据, 所述第二处理单元用 于处理非私密数据, 该方法可以包括: 步骤 402, 在第一处理单元需根据私密数据与终端的 外部设备进行交互时, 向第二处理单元发送中断信号, 中断第二处理单元与外部设备之间进 行的数据交互; 步骤 404, 在第一处理单元完成与外部设备进行的交互时, 向第二处理单元 发送反馈信号, 通知第二处理单元继续进行与外部设备之间的数据交互。
为了提高数据安全性, 终端被配置了多个处理器, 指定其中一部分处理器用于处理用户 的隐私数据, 其余处理器用于处理用户非私密数据, 从而能够使众多的数据被分成多类分别 进行处理, 不仅可以加快响应速度, 还可以保证数据的安全性, 提高系统稳定性。 而正是由 于终端被配置了多个处理器, 因此处理器与外部设备的交互变得相对复杂, 为了协调多个处 理器与外部设备的交互过程和顺序, 在该技术方案中提供了当用于处理私密数据的第一处理 单元需紧急处理刚刚发生的业务数据时, 控制用于处理非私密数据的第二处理单元中断正在 处理的业务数据, 并处于等待状态, 在第一处理单元完成与外部设备的交互时, 通知第二处 理单元继续未完成的数据交互, 通过这样的处理机制, 能够保证用户相对重要、 紧急的业务 数据被优先处理, 并且也不会影响其他业务数据的处理。
私密数据是指对于用户来讲该数据属于个人隐私的数据, 例如密码、 账号、 短信内容、 邮件内容、 财务数据等, 而非私密数据是指对于用户来讲该数据不属于个人隐私的数据, 例 如下载的音乐、 电子书、 收音机数据、 网页新闻等。
外部设备是指终端除处理器、 通信单元之外的其他相关器件, 例如屏幕、 传感器、 蓝 牙、 WIFI、 照相机等。
应理解, 除了按照用户隐私角度来对数据进行分类之外, 还可以采用其他的分类方法, 例如与联系人相关的数据给第一处理单元处理, 其他数据给第二处理单元处理。
在上述技术方案中, 优选的, 还可以包括: 在所述第一处理单元需根据所述私密数据与 所述外部设备进行交互时, 向所述第二处理单元发送查询信号, 确定所述第二处理单元是否 正在与所述外部设备进行交互, 并在确定所述第二处理单元正在与所述外部设备进行交互 时, 向所述第二处理单元发送所述中断信号。
一般在多个处理器均需要与外部设备进行交互时, 才需要进行多个处理器进行相互协同 的处理机制, 因此在第一处理单元需与外部设备进行数据交互之前需确认其他处理器是否正 在与该外部设备进行数据交互, 在确定该其他处理器正在与外部设备进行交互的情况下, 第 一处理单元才向第二处理单元发送中断信号, 否则, 不需要向第二处理单元发送该中断信 号。
在上述任一技术方案中, 优选的, 还可以包括: 在所述第二处理单元需根据所述非私密 数据与所述外部设备进行交互时, 向所述第一处理单元发送中断信号, 中断所述第一处理单 元与所述外部设备之间进行的数据交互, 以及在所述第二处理单元完成与所述外部设备进行 的数据交互时, 向所述第一处理单元发送反馈信号, 通知所述第一处理单元继续进行与所述 外部设备之间的数据交互。
同理, 第二处理单元在需与外部设备进行交互时, 也需向第一处理单元发送中断信号, 保证最紧急、 最近的业务数据能够被优先处理。
在上述任一技术方案中, 优选的, 还可以包括: 在所述第二处理单元需根据所述非私密 数据与所述外部设备进行交互时, 向所述第一处理单元发送查询信号, 确定所述第一处理单 元是否正在与所述外部设备进行交互, 并在确定所述第一处理单元正在与所述外部设备进行 交互时, 向所述第一处理单元发送所述中断信号。
在上述任一技术方案中, 优选的, 通过与所述第一处理单元连接的第一通信单元接收来 自外部的所述私密数据, 通过与所述第二处理单元连接的第二通信单元接收来自外部的所述 非私密数据。
该终端为多待终端, 多个通信单元分别与不同的处理器连接, 并且多个通信单元之间处 理不同的业务数据, 例如第一通信单元仅能处理语音业务, 第二通信单元仅能处理数据业 务。
二、 数据传输线路的物理隔离和切换 ( 1 )
如图 5 所示, 在本发明的一个实施例的终端的结构中, 优选地, 还可以包括: 线路切换 装置 104, 一端连接至所述终端的外部设备 102, 另一端分别连接至 CPU1 (即第一处理器) 和 CPU2 (即第二处理器 ) , 用于实现 CPU1或 CPU2与所述终端的外部设备 102之间通路的 保持或断开; 其中, 当所述外部设备 102与 CPU1 进行交互时, 所述线路切换装置 104断开 所述外部设备 102与 CPU2之间的通路, 当所述外部设备 102与 CPU2进行交互时, 所述线 路切换装置 104断开所述外部设备 102与 CPU1之间的通路。
在该技术方案中, 通过线路切换装置 104, 使得通过物理开关器件来控制 CPU1和 CPU2 与外部设备 102 的交互过程, 在物理上对不同类型的数据与外部设备 102 的交互进行隔离, 避免同时交互时导致其中的数据、 尤其是重要或私密的数据容易被获取和外泄的问题。
对于外部设备 102, 包括终端内预先设置的多种硬件设备, 除了图 5 中所示的显示屏 (比如 LCD , Liquid Crystal Display, 液晶显示器) 、 触摸屏 ( TW: Touch Window ) 、 照相 机 (CAMERA ) 、 按键 (KEY ) 等之外, 还可以包括如: 用于无线移动通信的通信模块、 传 感器 (SENSOR ) 、 WIFI ( Wireless Fidelity, 无线局域网) 模块、 蓝牙 ( BT, Bluetooth )模 块、 GPS ( Global Position System, 全球定位系统)模块、 NFC ( Near field Communication, 近场通信) 模块、 音频编解码器 (AUDIO CODEC ) 等。
虽然终端中存在很多外部设备 102, 但每个外部设备 102与 CPU1、 CPU2之间的连接结 构和数据传输方式, 实际上是相类似的, 因而为了能够更加清楚地描述其具体的连接结构和 数据传输策略, 下面将以某一个外部设备 102 为例进行详细说明。 而本领域的技术人员应该 明确的是: 以下基于 "外部设备 102" 所描述的连接结构和数据传输策略, 实际上显示能够 适用于终端中的任意外部设备 102。
如图 6所示, 外部设备 102连接至线路切换装置 104, 然后由线路切换装置 104分别连 接至 CPU1 和 CPU2, 形成了以线路切换装置 104 作为 "中转" 的两条线路: 外部设备 102 与 CPU1、 外部设备 102与 CPU2。
介于存在多种不同的数据分类方式, 以下均以 "私密数据" 和 "非私密数据" 为例, 对 本发明的具体实施方式进行详细说明。
在一种具体的实施方式下, 由线路切换装置 104来检测外部设备 102所需要传输的数据 的类型。 其中, 当数据类型为私密类型的情况下, 判定外部设备 102 需要与 CPU1 进行交 互, 则线路切换装置 104使得 CPU1 与外部设备 102之间的线路保持闭合, 而 CPU2与外部 设备 102之间的线路保持断开; 当数据类型为非私密类型的情况下, 判定外部设备 102 需要 与 CPU2进行交互, 则线路切换装置 104使得 CPU2与外部设备 102之间的线路保持闭合, 而 CPU1与外部设备 102之间的线路保持断开。
通过线路切换装置 104通过对外部设备 102 需要传输的数据进行类型辨识, 直接对线路 进行切换, 从而实现对数据的传输方向进行控制, 确保私密数据由 CPU1 进行处理, 而非私 密数据由 CPU2进行处理。
在另一种具体的实施方式下, 线路切换装置 104 不对来自外部设备 102 的数据进行类型 识别, 而是默认将所有的数据都传输至 CPU1。 即无论当前 CPU1或者 CPU2与外部设备 102 之间的线路是连通的, 都转换为使得 CPU 1 与外部设备 102之间的线路闭合, 然后将数据发 送给 CPU1 , 由 CPU1对数据的类型进行识别, 若为私密类型, 则 CPU1直接对其进行处理, 若为非私密类型, 则 CPU1将其转发至 CPU2, 由 CPU2进行处理。
由于线路切换装置 104 不对来自外部设备 102 的数据进行类型识别, 而是将所有数据都 发送至 CPU1 , 并由 CPU1执行类型识别和数据分配, 而 CPU1专门用于处理私密数据, 相对 于 CPU2 而言, 更为安全的处理器, 因而将所有数据都发送至 CPU1 , 即便其中的非私密数 据被其他应用程序 (相对于原本应该被发送至的应用程序) 获取和利用, 也不会导致私密信 息的泄露; 而只要能够保证私密数据不会被 CPU2 进行处理, 就能够在物理上隔离非法应用 程序基于 CPU2对私密数据的获取和利用, 从而确保了终端的数据安全。
在又一种具体的实施方式下, 线路切换装置 104仍然不对来自外部设备 102 的数据进行 类型识别, 而是直接进行传输。 具体地, 线路切换装置 104需要查看其与 CPU1、 CPU2之前 的线路连接关系, 在查看到当前与 CPU1 之间的通路闭合、 与 CPU2之间的通路开路的情况 下, 直接将所述数据传输至 CPU1 ; 在查看到当前与 CPU2之间的通路闭合、 与 CPU1之间的 通路开路的情况下, 将所述数据传输至 CPU2, 以由 CPU2转发至 CPU1 ; 其中, CPU1 对私 密类型的数据进行处理, 并将非私密类型的数据转发至 CPU2。
在该技术方案中, 实际上还是由 CPU1 进行数据的类型识别, 则线路切换装置 104 只要 直接利用当前处理连通状态的线路进行发送数据即可, 降低了对于线路切换装置 104 的要 求, 有利于对制造成本的控制。 由于外部设备 102 传输的数据在任何情况下, 都不会被 CPU2 直接进行处理, 使得可能存在的私密数据即便开始时被发送至 CPU2 , 也确保不会被 CPU2进行处理就直接被转发至 CPU1, 使得终端即便是低配置, 也能够具有高安全性。
在图 6所示的技术方案中, 线路切换装置 104都具有自主的线路切换、 数据类型识别等 功能; 但实际上, 也可以由其他的装置来控制线路切换装置 104的操作。
在一种情况下, 如图 7A所述, 可以由 CPU1 对线路切换装置 104进行控制。 具体地, 在线路切换装置 104的控制端口与 CPU1之间建立一条控制线路 106A, 则 CPU1可以通过该 控制线路 106A向线路切换装置 104发送控制指令, 实现具体的线路切换操作。
那么, 当 CPU1 需要与外部设备 102进行交互时, 可以直接通过对线路切换装置 104的 控制, 闭合 CPU1 对应的线路, 而断开 CPU2对应的线路; 当 CPU2需要与外部设备 102进 行交互时, 则需要先向 CPU1 发送切换请求, CPU1 在能够接受该切换请求时, 通过控制线 路切换装置 104, 闭合 CPU2对应的线路, 而断开 CPU1对应的线路 (控制线路 106A始终保 持闭合) 。
在该技术方案中, 控制端口是用于对线路切换装置 104 的线路切换动作直接进行控制 的。 由于 CPU1是相对于 CPU2的 "安全处理器" , 因而由 CPU1 对线路切换装置 104进行 控制时, 既能够完成数据的传输, 又能够确保终端的数据安全性, 从物理上使得非法应用程 序无法通过 CPU2对线路切换装置 104进行控制, 避免私密数据被非法应用程序获取。
在另一种情况下, 如图 7B 所示, 线路切换装置 104 的控制端口也可以与 CPU2 相连 接, 从而构成控制线路 106B。
那么, 当 CPU2需要与外部设备 102进行交互时, 可以直接通过对线路切换装置 104的 控制, 闭合 CPU2对应的线路, 而断开 CPU1 对应的线路; 当 CPU1 需要与外部设备 102进 行交互时, 则需要先向 CPU2 发送切换请求, CPU2 在能够接受该切换请求时, 通过控制线 路切换装置 104, 闭合 CPU1对应的线路, 而断开 CPU2对应的线路 (控制线路 106A始终保 持闭合) 。
在该技术方案中, 由于 CPU1 专用于私密数据的处理, 但往往大部分数据都是非私密数 据, 因而可以使用处理能力较弱的 CPU1和处理能力较强的 CPU2 , 并且当 CPU2控制线路切 换装置 104 时, 有利于充分利用 CPU2的处理能力, 避免控制过程可能对 CPU1 造成的处理 压力。 虽然 CPU2 的控制相对于 CPU1 而言, 可能造成安全性降低, 但仍然能够保证一定程 度的安全性, 并且有助于降低终端的整体生产成本。
以上都是以终端中包含一个 CPU1 和一个 CPU2 的情况进行是描述和分析, 然而为了能 够获得更强的处理能力, 或是达到更优的安全效果, 终端中可以包含更多数量的 CPU1 和 /或 更多数量的 CPU2, 下面以终端中包含有 CPU1、 CPU1A和 CPU1B等用于私密数据处理的处 理器、 以及 CPU2、 CPU2A 和 CPU2B 等用于非私密数据处理的处理器为例, 对更多数量的 处理器的情况下的终端结构和处理策略进行说明。 当然, 本领域的技术人员应该理解的是: 对于终端中仅包含多个用于私密数据处理的处理器或是仅包含多个用于非私密数据处理的处 理器的情况, 以及处理器数量更多的情况下, 其连接原理实际上是相同的, 本申请中将不再 赘述。
另外, 以上技术方案中提及的各种线路切换控制方式, 均可以应用于下述各个技术方案 中, 实现线路切换装置 104对 CPU与外部设备 102的交互控制。
实施方式一
在用于处理私密数据 /非私密数据的多个 CPU 中, 以某个 CPU 作为与外部设备 102 的 "中继" , 而其他 CPU则通过该 "中继" 来实现与外部设备 102的交互。
具体地, 如图 8所示, 假定在 CPU1 和外部设备 102之间建立连接 (具体是通过线路切 换装置 104 实现数据的转发) , 而其他用于处理私密数据的多个 CPU, 与 CPU1 通过 "串 联" 方式连接; 同时, 假定在 CPU2和外部设备 102之间建立连接 (具体是通过线路切换装 置 104 实现数据的转发) , 而其他用于处理非私密数据的多个 CPU, 与 CPU2通过 "并联" 方式连接。
对于 "串联" 方式: 当 CPU1 需要与外部设备 102 交互时, 则 CPU1 直接与外部设备
102进行数据交互; 当 CPU1A需要与外部设备 102进行交互时, 则由 CPU1进行数据转发; 当 CPU1B需要与外部设备 102进行交互时, 则由 CPU1A、 CPU1进行数据转发。
对于 "并联" 方式: 当 CPU2 需要与外部设备 102 交互时, 则 CPU2 直接与外部设备 102进行数据交互; 当 CPU2A需要与外部设备 102进行交互时, 则由 CPU2进行数据转发; 当 CPU2B需要与外部设备 102进行交互时, 也由 CPU2进行数据转发。
当然, 用于私密数据处理的 CPU 也可以采用 "并联" 的连接方式, 甚至部分采用 "串 联" 、 部分采用 "并联" 的连接方式; 而用于非私密数据处理的 CPU也可以采用 "串联" 的 连接方式, 甚至部分采用 "串联" 、 部分采用 "并联" 的连接方式, 这是显而易见的。
除了与外部设备 102 的交互, 当多个 CPU之间进行交互时, 也可能需要其他 CPU的数 据转发。 比如当 CPU1 与 CPU2 或 CPU1A 进行交互时, 则直接交互即可; 当 CPU1 与 CPU1B进行交互时, 则需要 CPU1A进行转发; 当 CPU2与 CPU1、 CPU2A或 CPU2B进行交 互时, 则直接交互即可; 当 CPU2A与 CPU2B进行交互时, 则需要 CPU2进行转发。
此外, 在 "并联 " 的基础上, CPU2A 与 CPU2B 之间也可能存在连接 (图中未示出) , 能够实现两者间直接的数据交互。 进一步地, 当 CPU 的数量更多时, 所有的 CPU之间, 两 两都可能直接执行数据交互, 而无需其他 CPU 的转发。
实施方式二
在用于处理私密数据 /非私密数据的多个 CPU 中, 每个 CPU 均 "并联" 至外部设备 102, 并直接与外部设备 102进行交互, 而不需要其他 CPU作为 "中继" 。
具体地, 如图 9所示, 用于处理私密数据的 CPU1、 CPU1A、 CPU1B分别连接至外部设 备 102 (通过线路切换装置 104 实现间接连接) , 同时, 用于处理非私密数据的 CPU2、 CPU2A、 CPU2B也分别连接至外部设备 102。
同时, 在具有相同处理功能的多个 CPU 之间, 可以采用上述文字中提及的 "串联" 和 / 或 "并联" 方式。 作为一种具体的实施例, 图 7 中示出了: 用于处理私密数据的 CPU1、 CPU1A、 CPU1B 采用了 "串联 " 方式, 而用于处理非私密数据的 CPU2、 CPU2A、 CPU2B 采用了 "并联" 方式。
当每个 CPU都连接至外部设备 102 时, 用于一种处理功能的 CPU可能需要与另一种处 理功能的 CPU进行交互。 比如当外部设备 102将数据传输至 CPU1A之后: 第一种情况下, CPU1A发现该数据为非私密数据, 但不清楚由哪个 CPU 进行处理; 第二种情况下, CPU1A 发现该数据为非私密数据, 且知道应该由哪个 CPU进行处理。
在上述两种情况下, 仍需要根据 CPU 的具体连接情况进行分析:
假定每个 CPU 均可以与其他任意 CPU 直接进行数据交互 (图中未示出具体的连接关 系 ) , 则对于第一种情况, CPU1A 可以直接将数据传输至任意一个用于处理非私密数据的 CPU, 比如 CPU2A, 然后由 CPU2A确定具体的目标 CPU; 对于第二种情况, CPU1A可以直 接将数据传输至目标 CPU, 比如 CPU2A。 假定每个 CPU仅能够与相邻的 CPU进行直接交互, 比如图 7 所示, CPU1A 只能够与 CPU1 和 CPU1 B 进行直接交互, 则 CPU1A 可以将数据发送至 CPU1, 由 CPU1 发送至 CPU2 , 并由 CPU2转发至目标 CPU。
假定每个 CPU除了能够与相邻的 CPU进行直接交互, 还能够与指定的其他类型的 CPU 进行交互, 比如图 10所示, 作为同一类型的 CPU, CPUl 与 CPU1A相邻、 能够直接交互, 而作为不同类型的 CPU, CPUl还能够与 CPU2直接交互; 类似地, 则 CPU1A能够直接与相 邻的 CPU1、 CPU IB 直接交互, 还能够与 CPU2A 直接交互, 则当 CPU1A接收到外部设备 102 发送的非私密数据时, 可以通过 CPU1 等相邻 CPU 间接传输至用于处理非私密数据的 CPU, 也可以通过直接传输至 CPU2A, 并由 CPU2A确定和传输至最终的目标 CPU。
三、 数据传输线路的物理隔离和切换 ( 2 )
如图 1 1 所示, 本发明提出了一种终端, 包括: CPU1 , 用于处理所述终端中的私密数 据; CPU2 , 用于处理所述终端中的非私密数据; 外部设备 102, 分别连接至 CPU1 和 CPU2 , 并与 CPU1和 CPU2进行交互; 其中, 当所述外部设备 102与 CPU 1/ CPU2进行交互 时, CPU 2/ CPU1将自身连接至所述外部设备 102的端口设置成高阻状态。
在该技术方案中, 首先通过设置分别用于处理私密数据和非私密数据的 CPU1 和
CPU2 , 使得私密数据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中仅使用 单个处理器时 (比如图 1 所示的情况下) , 仅通过权限上的破解等就可轻易使得任意应用程 序从该单个处理器中获取私密数据。 同时, 通过 CPU1 或 CPU2通过对端口电平的置位, 控 制其与外部设备 102 的交互过程, 在物理上对私密数据和非私密数据的交互进行隔离, 避免 两者同时交互时导致私密数据容易被获取和外泄的问题。
在上述技术方案中, 优选地, 所述外部设备 102 将所有需要传输的数据都传输至对应的 处于连通状态的处理器。 具体地, 若所述处于连通状态的处理器为 CPU1 , 则 CPU1 处理来 自所述外部设备 102 的私密数据, 并将来自所述外部设备 102 的非私密数据转发至 CPU2 ; 若所述处于连通状态的处理器为 CPU2 , 则 CPU2 直接将来自所述外部设备 102 的数据转发 至 CPU1 , 以及 CPU1 处理来自 CPU2 的私密数据, 并将来自 CPU2 的非私密数据转发至 CPU2。
在该技术方案中, 由 CPU1 进行数据的类型识别, 无需添加另外的硬件设备来对数据进 行类型识别, 有利于对制造成本的控制。 由于外部设备 102 传输的数据在任何情况下, 都不 会被 CPU2 直接进行处理, 使得可能存在的私密数据即便开始时被发送至 CPU2 , 也确保不 会被 CPU2 进行处理就直接被转发至 CPU1 , 使得终端即便是低配置, 也能够具有高安全 性。
在上述技术方案中, 优选地, 在 CPU1 和 CPU2之间可以通过指令的交互实现协同。 比 如当 CPU1 需要向所述外部设备传输数据时, 向 CPU2发送中断指令, 使 CPU2将与所述外 部设备 102相连接的端口设置成高阻状态, 则 CPU1 可以将与外部设备 102相连接的端口从 高阻状态恢复正常状态, 实现数据交互; 当 CPU2 需要向所述外部设备传输数据时, 向 CPU1 发送中断指令, 使 CPU1 将与所述外部设备 102 相连接的端口设置成高阻状态, 则 CPU2 可以将与外部设备 102 相连接的端口从高阻状态恢复正常的连通状态, 实现数据交 互。
在该技术方案中, 通过 CPU1 与 CPU2之间的指令交互, 则同一时间仅存在一个处理器 与外部设备 102相连接, 实现两者在物理上的彻底隔离, 确保终端的安全性。
在上述技术方案中, 优选地, CPU2 完成向所述外部设备 102 传输数据之后, 向 CPU1 发送恢复指令, 使 CPU1将与所述外部设备 102相连接的端口恢复成连通状态。
在该技术方案中, 由于 CPU1 是用于处理私密数据的, 其相对于 CPU2 而言是 "安全处 理器" , 则为了确保 CPU1 能够优先实现与外部设备 102的交互, 使得 CPU2在不必要与外 部设备 102进行数据交互的情况下, 都主动断开与外部设备 102的连接, 而使得 CPU1及时 恢复与外部设备 102的连接。
当然, 由于 CPU1 和 CPU2是以中断指令进行交互的, 则当 CPU1 或 CPU2接收到中断 指令时, 极可能需要暂停当前的操作, 而使得中断指令的发送方先执行操作, 则即便是 CPU1 发送了中断指令, 在 CPU1 完成操作之后, 也同样可以向 CPU2 发送恢复指令, 使得 CPU2能够及时执行暂停的操作。
以上都是以终端中包含一个 CPU1 和一个 CPU2 的情况进行是描述和分析, 然而为了能 够获得更强的处理能力, 或是达到更优的安全效果, 终端中可以包含更多数量的 CPU1 和 /或 更多数量的 CPU2, 下面将结合图 12-14, 以终端中包含有 CPU1、 CPU1A和 CPU1B等用于 私密数据处理的处理器、 以及 CPU2、 CPU2A 和 CPU2B 等用于非私密数据处理的处理器为 例, 对更多数量的处理器的情况下的终端结构和处理策略进行说明。 当然, 本领域的技术人 员应该理解的是: 对于终端中仅包含多个用于私密数据处理的处理器或是仅包含多个用于非 私密数据处理的处理器的情况, 以及处理器数量更多的情况下, 其连接原理实际上是相同 的, 本申请中将不再赘述。
需要说明的是, 虽然终端中存在很多外部设备 102, 但每个外部设备 102 与 CPU1、
CPU2 之间的连接结构和数据传输方式, 实际上是相类似的, 因而为了能够更加清楚地描述 其具体的连接结构和数据传输策略, 下面各个实施例中将以某一个外部设备 102 为例进行详 细说明。 而本领域的技术人员应该明确的是: 以下基于 "外部设备 102" 所描述的连接结构 和数据传输策略, 实际上显示能够适用于终端中的任意外部设备 102。
另外, 以上技术方案中提及的各种线路切换控制方式, 均可以应用于下述各个技术方案 中, 实现类型判断装置 108对 CPU与外部设备 102的交互控制。
实施方式一
在用于处理私密数据 /非私密数据的多个 CPU 中, 以某个 CPU 作为与外部设备 102 的 "中继" , 而其他 CPU则通过该 "中继" 来实现与外部设备 102的交互。
具体地, 如图 12所示, 假定在 CPU1和外部设备 102之间建立连接, 而其他用于处理私 密数据的多个 CPU, 与 CPU1 通过 "串联" 方式连接; 同时, 假定在 CPU2和外部设备 102 之间建立连接, 而其他用于处理非私密数据的多个 CPU, 与 CPU2通过 "并联" 方式连接。
对于 "串联 " 方式: 当 CPU1 需要与外部设备 102 交互时, 则 CPU1 直接与外部设备 102进行数据交互; 当 CPU1A需要与外部设备 102进行交互时, 则由 CPU1进行数据转发; 当 CPU1B需要与外部设备 102进行交互时, 则由 CPU1A、 CPUl进行数据转发。
对于 "并联" 方式: 当 CPU2 需要与外部设备 102 交互时, 则 CPU2 直接与外部设备 102进行数据交互; 当 CPU2A需要与外部设备 102进行交互时, 则由 CPU2进行数据转发; 当 CPU2B需要与外部设备 102进行交互时, 也由 CPU2进行数据转发。
当然, 用于私密数据处理的 CPU 也可以采用 "并联" 的连接方式, 甚至部分采用 "串 联" 、 部分采用 "并联" 的连接方式; 而用于非私密数据处理的 CPU也可以采用 "串联" 的 连接方式, 甚至部分采用 "串联" 、 部分采用 "并联" 的连接方式, 这是显而易见的。
除了与外部设备 102 的交互, 当多个 CPU之间进行交互时, 也可能需要其他 CPU的数 据转发。 比如当 CPU1 与 CPU2 或 CPU1A 进行交互时, 则直接交互即可; 当 CPU1 与 CPU1B进行交互时, 则需要 CPU1A进行转发; 当 CPU2与 CPUl、 CPU2A或 CPU2B进行交 互时, 则直接交互即可; 当 CPU2A与 CPU2B进行交互时, 则需要 CPU2进行转发。
此外, 在 "并联 " 的基础上, CPU2A 与 CPU2B 之间也可能存在连接 (图中未示出) , 能够实现两者间直接的数据交互。 进一步地, 当 CPU 的数量更多时, 所有的 CPU之间, 两 两都可能直接执行数据交互, 而无需其他 CPU 的转发。
实施方式二 在用于处理私密数据 /非私密数据的多个 CPU 中, 每个 CPU 均 "并联" 至外部设备 102, 并直接与外部设备 102进行交互, 而不需要其他 CPU作为 "中继" 。
具体地, 如图 13 所示, 用于处理私密数据的 CPU1、 CPU1A、 CPU IB 分别连接至外部 设备 102, 同时, 用于处理非私密数据的 CPU2、 CPU2A、 CPU2B 也分别连接至外部设备 102。
同时, 在具有相同处理功能的多个 CPU 之间, 可以采用上述文字中提及的 "串联" 和 / 或 "并联" 方式。 作为一种具体的实施例, 图 4 中示出了: 用于处理私密数据的 CPU1、 CPU1A、 CPU IB 采用了 "串联 " 方式, 而用于处理非私密数据的 CPU2、 CPU2A、 CPU2B 采用了 "并联" 方式。
当每个 CPU都连接至外部设备 102 时, 用于一种处理功能的 CPU可能需要与另一种处 理功能的 CPU进行交互。 比如当外部设备 102将数据传输至 CPU1A之后: 第一种情况下, CPU1A发现该数据为非私密数据, 但不清楚由哪个 CPU 进行处理; 第二种情况下, CPU1A 发现该数据为非私密数据, 且知道应该由哪个 CPU进行处理。
在上述两种情况下, 仍需要根据 CPU 的具体连接情况进行分析:
假定每个 CPU 均可以与其他任意 CPU 直接进行数据交互 (图中未示出具体的连接关 系 ) , 则对于第一种情况, CPU1A 可以直接将数据传输至任意一个用于处理非私密数据的 CPU, 比如 CPU2A, 然后由 CPU2A确定具体的目标 CPU; 对于第二种情况, CPU1A可以直 接将数据传输至目标 CPU, 比如 CPU2A。
假定每个 CPU仅能够与相邻的 CPU进行直接交互, 比如图 4 所示, CPU1A 只能够与 CPU1 和 CPU1B 进行直接交互, 则 CPU1A 可以将数据发送至 CPU1, 由 CPU1 发送至 CPU2, 并由 CPU2转发至目标 CPU。
假定每个 CPU除了能够与相邻的 CPU进行直接交互, 还能够与指定的其他类型的 CPU 进行交互, 比如图 14所示, 作为同一类型的 CPU, CPUl 与 CPU1A相邻、 能够直接交互, 而作为不同类型的 CPU, CPUl还能够与 CPU2直接交互; 类似地, 则 CPU1A能够直接与相 邻的 CPU1、 CPU IB 直接交互, 还能够与 CPU2A 直接交互, 则当 CPU1A接收到外部设备 102 发送的非私密数据时, 可以通过 CPU1 等相邻 CPU 间接传输至用于处理非私密数据的 CPU, 也可以通过直接传输至 CPU2A, 并由 CPU2A确定和传输至最终的目标 CPU。
在图 1 1- 14所描述的技术方案中, 都是由外部设备 102与 CPU直接相连, 并由 CPU 自 行配置其与外部设备 102 相连接的端口, 以控制其联接线路的通断。 下面将结合图 15-18, 对本申请披露的另一种情况进行具体描述, 其中, 在外部设备 102与 CPU之间, 还设置了类 型判断装置 108。
如图 15 所示, 终端中还可以包括: 类型判断装置 108, 设置在所述外部设备 102 与 CPU1 和 CPU2 之间的通路上, 用于对来自所述外部设备 102 的数据进行类型判断, 若判定 为私密数据, 则传输至 CPU1 , 若判定为非私密数据, 则传输至 CPU2。
在该技术方案中, 由类型判断装置 108对来自外部设备 102 的数据进行类型识别, 而无 需 CPU1 或 CPU2执行该类型识别操作, 从而有助于降低对 CPU1 或 CPU2的要求, 使得降 低 CPU1 或 CPU2 的生产成本, 或是将相应的计算资源用于其他更为复杂处理过程, 以提高 处理效率。
在上述技术方案中, 优选地, 所述类型判断装置 108 还用于: 在判定来自所述外部设备 102 的数据为私密数据的情况下, 若所述外部设备 102 与 CPU1 之间的通路处于连通状态、 与 CPU2 之间的通路处于高阻状态, 则直接将数据传输至 CPU1 ; 若所述外部设备 102 与 CPU1之间的通路处于高阻状态、 与 CPU2之间的通路处于连通状态, 则向 CPU2发送中断指 令和恢复指令, 使其执行所述中断指令, 并向 CPU1 转发所述恢复指令; 在判定来自所述外 部设备 102的数据为非私密数据的情况下, 若所述外部设备 102与 CPU1之间的通路处于连 通状态、 与 CPU2之间的通路处于高阻状态, 则向 CPU1 发送中断指令和恢复指令, 使其执 行所述中断指令, 并向 CPU2转发所述恢复指令; 若所述外部设备 102与所 CPU1 之间的通 路处于高阻状态、 与 CPU2之间的通路处于连通状态, 则直接将数据传输至 CPU2。
在该技术方案中, 由类型判断装置 108对来自外部设备 102 的数据进行类型识别, 并控 制其与 CPU1 和 CPU2 的线路切换操作, 使得根据数据类型, 将其准确地发送至相应的处理 器, 尽可能地避免 CPU2 对私密数据的 "接触" (直接处理或转发操作) , 有助于提升终端 的数据安全性。
类似于图 12- 14 所示的情况, 当终端中设置有类型判断装置 108 时, 也可能存在多个处 理器的情形, 则对于图 15 中所示的各种线路切换控制方式, 均可以应用于以下结合图 16- 18 所描述的各个技术方案中, 实现类型判断装置 108对 CPU与外部设备 102的交互控制。
实施方式一
在用于处理私密数据 /非私密数据的多个 CPU 中, 以某个 CPU 作为与外部设备 102 的 "中继" , 而其他 CPU则通过该 "中继" 来实现与外部设备 102的交互。
具体地, 如图 16所示, 假定在 CPU1和外部设备 102之间建立连接 (具体是通过类型判 断装置 108 实现数据的转发) , 而其他用于处理私密数据的多个 CPU, 与 CPU1 通过 "串 联" 方式连接; 同时, 假定在 CPU2和外部设备 102之间建立连接 (具体是通过类型判断装 置 108 实现数据的转发) , 而其他用于处理非私密数据的多个 CPU, 与 CPU2通过 "并联" 方式连接。
对于 "串联 " 方式: 当 CPU1 需要与外部设备 102 交互时, 则 CPU1 直接与外部设备 102进行数据交互; 当 CPU1A需要与外部设备 102进行交互时, 则由 CPU1进行数据转发; 当 CPU1B需要与外部设备 102进行交互时, 则由 CPU1A、 CPU1进行数据转发。
对于 "并联" 方式: 当 CPU2 需要与外部设备 102 交互时, 则 CPU2 直接与外部设备 102进行数据交互; 当 CPU2A需要与外部设备 102进行交互时, 则由 CPU2进行数据转发; 当 CPU2B需要与外部设备 102进行交互时, 也由 CPU2进行数据转发。
当然, 用于私密数据处理的 CPU 也可以采用 "并联" 的连接方式, 甚至部分采用 "串 联" 、 部分采用 "并联" 的连接方式; 而用于非私密数据处理的 CPU也可以采用 "串联" 的 连接方式, 甚至部分采用 "串联" 、 部分采用 "并联" 的连接方式, 这是显而易见的。
除了与外部设备 102 的交互, 当多个 CPU之间进行交互时, 也可能需要其他 CPU的数 据转发。 比如当 CPU1 与 CPU2 或 CPU1A 进行交互时, 则直接交互即可; 当 CPU1 与 CPU1B进行交互时, 则需要 CPU1A进行转发; 当 CPU2与 CPU1、 CPU2A或 CPU2B进行交 互时, 则直接交互即可; 当 CPU2A与 CPU2B进行交互时, 则需要 CPU2进行转发。
此外, 在 "并联 " 的基础上, CPU2A 与 CPU2B 之间也可能存在连接 (图中未示出) , 能够实现两者间直接的数据交互。 进一步地, 当 CPU 的数量更多时, 所有的 CPU之间, 两 两都可能直接执行数据交互, 而无需其他 CPU 的转发。
实施方式二
在用于处理私密数据 /非私密数据的多个 CPU 中, 每个 CPU 均 "并联" 至外部设备 102, 并直接与外部设备 102进行交互, 而不需要其他 CPU作为 "中继" 。
具体地, 如图 17 所示, 用于处理私密数据的 CPU1、 CPU1A、 CPU IB 分别连接至外部 设备 102 (通过类型判断装置 108 实现间接连接) , 同时, 用于处理非私密数据的 CPU2、 CPU2A、 CPU2B也分别连接至外部设备 102。
同时, 在具有相同处理功能的多个 CPU 之间, 可以采用上述文字中提及的 "串联" 和 / 或 "并联" 方式。 作为一种具体的实施例, 图 17 中示出了: 用于处理私密数据的 CPU1、 CPU1A、 CPU IB 采用了 "串联 " 方式, 而用于处理非私密数据的 CPU2、 CPU2A、 CPU2B 采用了 "并联" 方式。 当每个 CPU都连接至外部设备 102 时, 用于一种处理功能的 CPU可能需要与另一种处 理功能的 CPU进行交互。 比如当外部设备 102将数据传输至 CPU1A之后: 第一种情况下, CPU1A发现该数据为非私密数据, 但不清楚由哪个 CPU 进行处理; 第二种情况下, CPU1A 发现该数据为非私密数据, 且知道应该由哪个 CPU进行处理。
在上述两种情况下, 仍需要根据 CPU 的具体连接情况进行分析:
假定每个 CPU 均可以与其他任意 CPU 直接进行数据交互 (图中未示出具体的连接关 系 ) , 则对于第一种情况, CPU1A 可以直接将数据传输至任意一个用于处理非私密数据的 CPU, 比如 CPU2A, 然后由 CPU2A确定具体的目标 CPU; 对于第二种情况, CPU1A可以直 接将数据传输至目标 CPU, 比如 CPU2A。
假定每个 CPU仅能够与相邻的 CPU进行直接交互, 比如图 17所示, CPU1A只能够与
CPU1 和 CPU1B 进行直接交互, 则 CPU1A 可以将数据发送至 CPU1, 由 CPU1 发送至 CPU2, 并由 CPU2转发至目标 CPU。
假定每个 CPU除了能够与相邻的 CPU进行直接交互, 还能够与指定的其他类型的 CPU 进行交互, 比如图 18所示, 作为同一类型的 CPU, CPU1 与 CPU1A相邻、 能够直接交互, 而作为不同类型的 CPU, CPU1还能够与 CPU2直接交互; 类似地, 则 CPU1A能够直接与相 邻的 CPU1、 CPU IB 直接交互, 还能够与 CPU2A 直接交互, 则当 CPU1A接收到外部设备 102 发送的非私密数据时, 可以通过 CPU1 等相邻 CPU 间接传输至用于处理非私密数据的 CPU, 也可以通过直接传输至 CPU2A, 并由 CPU2A确定和传输至最终的目标 CPU。
四、 CPU与通信模块之间的交互
以上描述的都是在 CPU与外部设备 102之间的数据交互, 而对于终端来说, 还包括与其 他终端或服务器之间的数据交互, 则涉及 CPU与通信模块之间的上下行数据交互。
如图 19所示, 假定 CPU1 用于处理私密数据, CPU2用于处理非私密数据, 而通信模块 1 10 用于上下行数据的收发。 那么, 对于上行数据, 由于通信模块 1 10 分别连接至 CPU1 和 CPU2, 因而来自 CPU1 的数据就是私密数据、 来自 CPU2的数据就是非私密数据; 对于下行 数据, 由通信模块 1 10 直接对接收到的数据进行类型识别, 若为私密数据, 则直接传输至 CPU1 , 若为非私密数据, 则直接传输至 CPU2。
通过通信模块 1 10 对数据进行类型识别, 使得私密数据和非私密数据分别被分配至 CPU1和 CPU2 , 实现物理上的数据隔离, 有助于提升终端的安全性。
同时, 为了进一步提升安全性, 还可以为通信模块 1 10 添加一项功能, 即当通信模块 1 10与 CPU1 交互时, 切断与 CPU2的连接, 当通信模块 1 10与 CPU2交互时, 切断与 CPU1 的连接; 或者, 在通信模块 1 10 与 CPU1、 CPU2之间添加线路切换模块 (如图 5- 10 中所示 的线路切换装置 104 ) , 通过线路切换模块自身或 CPU1、 CPU2进行控制, 实现当通信模块 1 10与 CPU1 交互时, 切断与 CPU2的连接, 当通信模块 1 10与 CPU2交互时, 切断与 CPU1 的连接。 通过对线路的连通和断开, 使得物理地隔离私密数据和非私密数据, 有助于进一步 提升终端的安全性。
终端中还可以存在多个通信模块 1 10, 比如图 20所示, 包括通信模块 1 10A和通信模块 1 10B , 两者都分别连接至 CPU1和 CPU2, 则对于通信模块 1 10A或通信模块 1 10B而言, 实 际上与图 19所示的通信模块 1 10是相同的, 可以借鉴和采用图 19所示的通信模块 1 10对应 的处理策略, 因而此处不再赘述。
当终端中存在多个用于处理私密数据的 CPU, 和 /或多个用于处理非私密数据的 CPU 时, 对于图 19-20 中所描述的通信模块 1 10 (用于举例, 通信模块 1 10A和通信模块 1 10B与 之相同) , 上述多个 CPU可以采取下述策略。
其中, 此处仍以用于处理私密数据的 CPU 包括 CPU1、 CPU1A和 CPU1B , 用于处理非 私密数据的 CPU包括 CPU2、 CPU2A和 CPU2B为例进行说明。 实施方式一
通信模块 1 10 仅连接至一个用于处理私密数据的 CPU 和一个用于处理非私密数据的 CPU, 比如连接至 CPU1和 CPU2。
那么, 对于数据上行时, CPU1/CPU2直接将私密数据 /非私密数据传输至通信模块 1 10, 而 CPU1A、 CPU IB 需要将私密数据传输至 CPU1 , 并由 CPU1 转发至通信模块 1 10; 类似 地, CPU2A、 CPU2B需要将非私密数据传输至 CPU2, 并由 CPU2转发至通信模块 1 10。
对于数据下行时, 通信模块 1 10 将所有的私密数据均发送至 CPU1 , 将所有的非私密数 据都发送至 CPU2 , 其中, 第一种情况下, 通信模块 1 10 能够通过对数据的解析等方式, 了 解到用于处理该数据的目标 CPU, 则通信模块 1 10可以在该数据上添加相应的标识, 从而当 CPU 1 或 CPU2接收到该数据之后, 可以根据添加的标识, 确定相应的目标 CPU, 以实现转 发; 第二种情况下, 通信模块 1 10无法得知接收到的数据的目标 CPU, 则通信模块 1 10直接 将其传输至 CPU1或 CPU2, 由 CPU1或 CPU2 自行确定相应的目标 CPU。
基于多个 CPU 之间的不同连接方式, 在 CPU 之间进行数据传输时, 会存在不同的情 形。 比如图 21 所示, CPU1、 CPU1A 和 CPU1B 采用的是 "串联 " 的方式, CPU2、 CPU2A 和 CPU2B采用的是 "并联" 的方式, 则当 CPU1B需要发送上行数据或接收下行数据时, 需 要经由 CPU1A和 CPU1 的两级传输, 才能够实现; 而对于 CPU2A和 CPU2B来说, 都仅需 要 CPU2的一级传输即可实现。
当然, 对于任意类型的多个 CPU, 如用于处理私密数据或非私密数据的 CPU, 均可以根 据实际需要而采用 "串联" 或 "并联" 的连接方式, 甚至可以同时采用 "串联" 和 "并联" 的方式进行连接。
实施方式二
如图 22 所示, 通信模块 1 10 还可以分别连接至所有的 CPU, 则对于上行数据, 每个 CPU都可以直接传输至通信模块 1 10, 而无需通过其他 CPU执行转发, 有利于降低数据传输 时延。 而对于下行数据, 若通信模块 1 10 能够了解到具体的目标 CPU, 则可以直接传输至该 目标 CPU; 若通信模块 1 10不能够了解到具体的目标 CPU, 则采取下述方式:
第一种情况下, 通信模块 1 10 对下行数据进行类型识别, 并根据识别结果, 将数据传输 至某个默认或任意的用于处理相同类型数据的 CPU, 比如将私密数据默认传输至 CPU1 , 非 私密数据默认传输至 CPU2, 或将私密数据任意传输至 CPU1、 CPU1A或 CPU1B , 将非私密 数据任意传输至 CPU2、 CPU2A或 CPU2B , 然后由接收到该下行数据的 CPU进一步确定并 转发至具体的目标 CPU。
第二种情况下, 通信模块 1 10 不对下行数据进行类型识别, 则直接将下行数据传输至某 个默认或任意的 CPU, 并由该 CPU直接进行类型识别或转发至其他 CPU进行类型识别, 然 后根据识别结果, 发送至目标 CPU。 具体地, 比如默认传输至 CPU1 , 则由 CPU1 进行类型 识别 (或是规定所有下行数据均由 CPU1A进行类型识别, 则需要传输至 CPU1A进行类型识 别) , 并根据识别结果将下行数据传输至具体的目标 CPU。
在上述各个情况下, 实际上还包含了不同类型 CPU之间的数据交互, 则此时还包含下述 多种情况:
假定每个 CPU 均可以与其他任意 CPU 直接进行数据交互 (图中未示出具体的连接关 系) 。 假定 CPU1A接收到了非私密数据, 则如果 CPU1A不知道该数据对应的目标 CPU, 则 可以直接将数据传输至任意一个用于处理非私密数据的 CPU, 比如 CPU2A, 然后由 CPU2A 确定具体的目标 CPU; 如果 CPU1A知道该数据对应的目标 CPU, 则可以直接将数据传输至 目标 CPU, 比如 CPU2A。
假定每个 CPU仅能够与相邻的 CPU进行直接交互, 比如图 22所示, CPU1A只能够与 CPU1 和 CPU1B 进行直接交互, 则 CPU1A 可以将数据发送至 CPU1, 由 CPU1 发送至 CPU2, 并由 CPU2转发至目标 CPU。
假定每个 CPU除了能够与相邻的 CPU进行直接交互, 还能够与指定的其他类型的 CPU 进行交互, 比如图 23所示, 作为同一类型的 CPU, CPU1 与 CPU1A相邻、 能够直接交互, 而作为不同类型的 CPU, CPU1还能够与 CPU2直接交互; 类似地, 则 CPU1A能够直接与相 邻的 CPU1、 CPU IB 直接交互, 还能够与 CPU2A 直接交互, 则当 CPU1A接收到通信模块 1 10 发送的非私密数据时, 可以通过 CPU1 等相邻 CPU 间接传输至用于处理非私密数据的 CPU, 也可以通过直接传输至 CPU2A, 并由 CPU2A确定和传输至最终的目标 CPU。
在图 19-23所描述的技术方案中, 通信模块 1 10分别连接至用于处理私密数据的 CPU和 用于处理非私密数据的 CPU; 而在下述的图 24-28中, 每个通信模块 1 10 (或图 25中所示的 通信模块 1 10A和通信模块 1 10B ) 均只连接至一种类型的 CPU, 比如仅连接至用于处理私密 数据的 CPU, 或仅连接至用于处理非私密数据的 CPU。
具体地, 如图 24所示, 通信模块 1 10仅连接至 CPU1 , 则对于上行数据, CPU1 可以直 接与通信模块 1 10进行交互, 而 CPU2则需要 CPU1作为中继, 间接与通信模块 1 10进行交 互。 对于下行数据, 第一种情况下, 通信模块 1 10 能够对下行数据进行类型识别, 并根据识 别结果对下行数据添加标识, 然后全部发送至 CPU1 , 由 CPU1 根据下行数据上的标识, 确 定自行处理, 或是发送至 CPU2 进行处理; 第二种情况下, 通信模块 1 10 不对下行数据进行 类型识别, 则由 CPU1 对其进行类型识别后, 对私密数据直接进行处理, 并将非私密数据转 发至 CPU2进行处理。
当然, 通信模块 1 10也可以连接至 CPU2, 由 CPU2直接与通信模块 1 10进行交互, 且 CPU1必须将 CPU2作为 "中继" , 间接实现与通信模块 1 10的交互。 但由于 CPU2用于处理 非私密数据, 相对于 CPU1 而言是不安全的 CPU, 因为私密数据会在 CPU2 中流转, 可能导 致非法应用程序从中进行窃取。 因此, 为了得到更为安全的应用环境, 更倾向于将通信模块 1 10直接与 CPU1 相连接。 下述各个技术方案中, 将以通信模块 1 10 与 CPU1 相连接为例进 行说明, 但基于上述描述, 这显然并不能够被理解成一种限制或限定。
如图 25 所示, 当终端中存在多个通信模块时, 比如包括通信模块 1 10A 和通信模块
1 10B , 则分别连接至 CPU1。 那么, 对于通信模块 110A或通信模块 1 10B 而言, 与图 23 所 示的通信模块 1 10是相同的, 可以采用相应的连接方式或处理策略, 此处不再赘述。
类似图 19-23所示的情形, 当终端中存在多个用于处理私密数据的 CPU, 和 /或多个用于 处理非私密数据的 CPU 时, 对于图 24-25 中所描述的通信模块 1 10 (用于举例, 通信模块 1 10A和通信模块 1 10B与之相同) , 上述多个 CPU可以采取下述策略。
其中, 此处仍以用于处理私密数据的 CPU 包括 CPU1、 CPU1A和 CPU1B , 用于处理非 私密数据的 CPU包括 CPU2、 CPU2A和 CPU2B为例进行说明。
实施方式一
通信模块 1 10 仅连接至一个用于处理私密数据的 CPU 或一个用于处理非私密数据的 CPU, 比如连接至 CPU1。
那么, 对于数据上行时, CPU1 直接与通信模块 1 10进行交互, 而其他所有的 CPU均需 要直接或间接地将需要发送的数据传输至 CPU1 , 由 CPU1转发至通信模块 1 10, 实现数据的 上行发送。
对于数据下行时, 第一种情况下, 通信模块 1 10 能够通过对数据的解析等方式, 了解到 用于处理该数据的目标 CPU , 则通信模块 110 可以在该数据上添加相应的标识, 从而当 CPU1 接收到该数据之后, 可以根据添加的标识, 确定相应的目标 CPU, 以实现转发; 第二 种情况下, 通信模块 1 10无法得知接收到的数据的目标 CPU, 则通信模块 1 10直接将其传输 至 CPU1 , 由 CPU1 自行确定相应的目标 CPU, 当然, 通信模块 1 10可以对数据的类型进行 识别, 确定其为私密数据或非私密数据之后, 才发送给 CPU1 , 或者通信模块 1 10 不执行类 型识别操作, 而是直接发送给 CPU1, 由 CPU1对接收到的数据进行类型识别。 基于多个 CPU 之间的不同连接方式, 在 CPU 之间进行数据传输时, 会存在不同的情 形。 比如图 26 所示, CPU1、 CPU1A 和 CPU1B 采用的是 "串联 " 的方式, CPU2、 CPU2A 和 CPU2B采用的是 "并联" 的方式, 则当 CPU1B需要发送上行数据或接收下行数据时, 需 要经由 CPU1A和 CPU1 的两级传输, 才能够实现; 而对于 CPU2A和 CPU2B来说, 都仅需 要 CPU2的一级传输即可实现。
当然, 类似于图 21 -23 时的描述, 对于任意类型的多个 CPU, 如用于处理私密数据或非 私密数据的 CPU, 均可以根据实际需要而采用 "串联" 或 "并联" 的连接方式, 甚至可以同 时采用 "串联" 和 "并联" 的方式进行连接。
实施方式二
如图 27 所示, 通信模块 110还可以分别连接至相同类型的所有 CPU, 比如同时连接至 所有用于处理私密数据的 CPU (具体指图中的 CPU1、 CPU1A和 CPU1B ) 。
那么, 对于上行数据, 每个用于处理私密数据的 CPU都可以直接传输至通信模块 1 10, 而无需通过其他 CPU 执行转发, 有利于降低数据传输时延, 而用于处理非私密数据的 CPU, 则仍需要将数据转发至某个用于处理私密数据的 CPU, 比如 CPU1 , 才能够实现数据 的上行发送。
而对于下行数据, 若通信模块 1 10 能够了解到具体的目标 CPU, 假定该数据为私密数 据, 则可以直接传输至该目标 CPU, 假定该数据为非私密数据, 则对该非私密数据添加标识 后, 直接传输至某个相连接的 CPU (该 CPU 可以为默认或任意的, 比如默认都发送至 CPU1 , 或是随机选择一个相连的 CPU ) , 假定为 CPU1 , 则由 CPU1根据数据上的标识转发 至相应的目标 CPU; 若通信模块 1 10不能够了解到具体的目标 CPU, 则采取下述方式: 第一种情况下, 通信模块 1 10 对下行数据进行类型识别, 并根据识别结果, 将数据传输 至某个默认或任意的用于处理相同类型数据的 CPU, 比如将私密数据默认传输至 CPU1 , 对 非私密数据添加相应的类型标识后默认传输至 CPU1 , 或将私密数据任意传输至 CPU1、 CPU1A 或 CPU1B , 将非私密数据添加相应的类型标识后任意传输至 CPU1、 CPU1A 或 CPU1B , 然后由接收到该下行数据的 CPU进一步确定并转发至具体的目标 CPU。
第二种情况下, 通信模块 1 10 不对下行数据进行类型识别, 则直接将下行数据传输至某 个默认或任意的 CPU, 并由该 CPU直接进行类型识别或转发至其他 CPU进行类型识别, 然 后根据识别结果, 发送至目标 CPU。 具体地, 比如默认传输至 CPU1 , 则由 CPU1 进行类型 识别 (或是规定所有下行数据均由 CPU1A进行类型识别, 则需要传输至 CPU1A进行类型识 别) , 并根据识别结果将下行数据传输至具体的目标 CPU。
在上述各个情况下, 实际上还包含了不同类型 CPU之间的数据交互, 则此时还包含下述 多种情况:
假定每个 CPU 均可以与其他任意 CPU 直接进行数据交互 (图中未示出具体的连接关 系) 。 假定 CPU1A接收到了非私密数据, 则如果 CPU1A不知道该数据对应的目标 CPU, 则 可以直接将数据传输至任意一个用于处理非私密数据的 CPU, 比如 CPU2A, 然后由 CPU2A 确定具体的目标 CPU; 如果 CPU1A知道该数据对应的目标 CPU, 则可以直接将数据传输至 目标 CPU, 比如 CPU2A。
假定每个 CPU仅能够与相邻的 CPU进行直接交互, 比如图 27所示, CPU1A只能够与 CPU1 和 CPU1B 进行直接交互, 则 CPU1A 可以将数据发送至 CPU1, 由 CPU1 发送至 CPU2, 并由 CPU2转发至目标 CPU。
假定每个 CPU除了能够与相邻的 CPU进行直接交互, 还能够与指定的其他类型的 CPU 进行交互, 比如图 28所示, 作为同一类型的 CPU, CPU1 与 CPU1A相邻、 能够直接交互, 而作为不同类型的 CPU, CPU1还能够与 CPU2直接交互; 类似地, 则 CPU1A能够直接与相 邻的 CPU1、 CPU IB 直接交互, 还能够与 CPU2A 直接交互, 则当 CPU1A接收到通信模块 1 10 发送的非私密数据时, 可以通过 CPU1 等相邻 CPU 间接传输至用于处理非私密数据的 CPU, 也可以通过直接传输至 CPU2A, 并由 CPU2A确定和传输至最终的目标 CPU。
五、 用户界面的显示控制
图 29示出了根据本发明的实施例的终端的结构示意图。
如图 29 所示, 根据本发明的实施例的终端, 包括: CPU1 , 用于对所述终端内的私密数 据进行处理; CPU2, 用于对所述终端内的非私密数据进行处理; 第一存储单元, 连接至所述 CPU1 , 用于对所述 CPU1 处理后的所述私密数据进行存储, 且所述第一存储单元中还存储有 第一桌面启动器或第一操作系统; 第二存储单元, 连接至所述 CPU2, 用于对所述 CPU2 处 理后的所述非私密数据进行存储, 且所述第二存储单元中还存储有第二桌面启动器或第二操 作系统; 其中, 所述 CPU1 通过运行所述第一桌面启动器或所述第一操作系统后显示出的第 一用户界面, 执行用户界面交互; 所述 CPU2 通过运行所述第二桌面启动器或所述第二操作 系统后显示出的第二用户界面, 执行用户界面交互。
在该技术方案中, 通过 CPU1 来处理私密数据、 CPU2 来处理非私密数据, 使得私密数 据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中仅使用单个处理器时, 仅 通过权限上的破解等就可轻易使得任意应用程序从该单个处理器中获取私密数据。
为了防止恶意应用程序从共享的存储空间中获取私密数据, 比如在图 1 中, CPU1 使用 了第一存储单元 (即 RAMI和 EMMC1等) , 而 CPU2则使用了第二存储单元 (即 RAM2和 EMMC2等) , 可以物理地将 CPU1和 CPU2使用的存储空间相分隔离。 由于 CPU1和 CPU2 在物理上使用相分离的存储装置, 使得私密数据和非私密数据在处理和存储的时候, 都实现 物理上的隔离, 从而得到更好的数据安全效果。
通过在第一存储单元中存储第一桌面启动器或第一操作系统、 在第二存储单元中存储第 二桌面启动器或第二操作系统, 使得只有 CPU1 能够直接调用第一桌面启动器或第一操作系 统, 只有 CPU2 能够直接调用第二桌面启动器或第二操作系统, 确保应用 (桌面启动器) 和 系统 (操作系统) 的安全性, 避免遭到破坏或篡改。 同时, 由于 CPU1 直接调用第一桌面启 动器或第一操作系统、 CPU2 调用第二桌面启动器或第二操作系统, 使得 CPU1 处理的私密 业务 (对应于私密数据) 和 CPU2 处理的非私密业务 (对应于非私密数据) , 能够分别实现 独立的控制需求和 UI交互, 也有助于满足各自的数据隐私需求, 从而提升终端的安全性和使 用过程中的便捷性。
当 CPU1 或 CPU2 需要执行某项数据处理任务时, 就可能需要相应的外部设备进行配 合, 比如在运行第一启动器或第一操作系统时, 就需要在显示屏上进行相应的画面显示等。
在本申请的技术方案中, 对于不同的用户界面的切换, 是通过在 CPU之间发送中断指令 来实现的。 具体地, 比如:
( 1 ) CPU1需要进行用户界面交互
CPU1 检测当前显示的用户界面, 若为所述第一用户界面, 则直接执行交互, 若为所述 第二用户界面, 则向所述 CPU2 发送中断指令, 并运行所述第一桌面启动器或第一操作系 统。
同时, CPU2 根据接收到的所述中断指令, 将所述第二桌面启动器或第二操作系统关闭 或放至后台。
( 2 ) CPU2需要进行用户界面交互
CPU2 检测当前显示的用户界面, 若为所述第二用户界面, 则直接执行交互, 若为所述 第一用户界面, 则向所述 CPU1 发送中断指令, 并运行所述第二桌面启动器或第二操作系 统。
同时, CPU1 根据接收到的所述中断指令, 将所述第一桌面启动器或第一操作系统关闭 或放至后台。
在该技术方案中, CPU2 在使用相应的第二用户界面实现 UI 交互的过程中, CPU1 仍可 以通过发送中断指令, 及时切换至第一用户界面 (或由第一用户界面切换至第二用户界面, 此处不再赘述) , 通过对用户界面的合理切换, 从而及时执行一些可能更为重要的处理任务 或业务。
然而, 如果仅通过中断指令进行任务协调, 可能在处理任务较多的情况下, 尤其是当 CPU1和 CPU2的处理任务都比较多的情况下, 使得 CPU1和 CPU2频繁地执行用户界面的切 换。
为了解决上述问题, 本申请还对终端内的应用程序设置不同的优先级, 从而根据优先级 的高低, 确定其被处理的先后顺序。 比如: 私密应用程序的优先级〉非私密应用程序的优先 级; 对私密数据进行调用的应用程序的优先级〉不对私密数据进行调用的应用程序的优先级 等。 此外, 同样属于私密应用程序, 也可能存在不同的优先级, 比如用于支付过程的私密应 用程序的优先级〉通讯录等。
下面提供了几种具体的方式, 用于 CPU 1和 CPU2之间的用户界面切换过程:
实施方式一
如图 30所示, 为 CPU 1添加 "比较器" 的功能。 在 CPU1通过第一用户界面与第一应用 程序进行交互时, 若 CPU2 希望通过第二用户界面与第二应用程序进行交互, 则 CPU2 向 CPU1发送中断指令。
中断指令中可以包含该第二应用程序的信息, 或者 CPU2 也可以仅通过中断指令表达其 希望切换应用界面, 并另外单独将第二应用程序的信息发送至 CPU1
比较器对 CPU1 当前运行的第一应用程序和 CPU2 希望运行的第二应用程序的优先级进 行比较: 若第一应用程序的优先级高于第二应用程序的优先级, 则 CPU1 继续执行交互直至 完成交互后, 才允许 CPU2 执行用户界面的切换; 若第一应用程序的优先级低于第二应用程 序的优先级, 则 CPU1 直接执行中断指令, 将第一用户界面关闭或放至后台, 并允许 CPU2 切换至第二用户界面。
实施方式二
如图 31所示, 为 CPU2添加 "比较器" 的功能。 在 CPU2通过第二用户界面与第三应用 程序进行交互时, 若 CPU1 希望通过第一用户界面与第四应用程序进行交互, 则 CPU1 向 CPU2发送中断指令。
中断指令中可以包含该第四应用程序的信息, 或者 CPU1 也可以仅通过中断指令表达其 希望切换应用界面, 并另外单独将第四应用程序的信息发送至 CPU2
比较器对 CPU2 当前运行的第三应用程序和 CPU1 希望运行的第四应用程序的优先级进 行比较: 若第三应用程序的优先级高于第四应用程序的优先级, 则 CPU2 继续执行交互直至 完成交互后, 才允许 CPU1 执行用户界面的切换; 若第三应用程序的优先级低于第四应用程 序的优先级, 则 CPU2 直接执行中断指令, 将第二用户界面关闭或放至后台, 并允许 CPU1 切换至第一用户界面。
实施方式三
如图 32所示, 在终端中添加独立的 "比较器" , 并且分别连接至 CPU1和 CPU2 CPU1 和 CPU2 需要运行某个应用程序时, 若需要对当前运行的用户界面进行切换, 则分别向比较 器发送中断指令。 其中, 中断指令中可以包含具体的应用程序的信息, 或者 CPU1 或 CPU2 也可以仅通过中断指令表达其希望切换应用界面, 并另外单独将具体的应用程序的信息发送 至比较器。
比较器在接收到来自 CPU1 或 CPU2 的中断指令之后, 根据具体的应用程序的信息, 确 定对应的优先级情况, 并对该需要运行的应用程序和正在运行的应用程序的优先级进行比 较, 若前者的优先级较高, 则执行用户界面的切换, 否则继续执行后者的交互过程, 直至交 互完成, 再执行用户界面的切换。
通过对 CPU1 和 CPU2 需要处理的应用程序 (或数据业务) 的优先级进行判断, 并使得 优先级较高的应用程序被优先处理, 使得存在多个处理单元、 多个用户界面的情况下, 能够 对处理任务的先后顺序进行有效地沟通和协调, 使得重要数据得以优先处理, 实现更好的终 端运行管理。
此外, 如果由于需要运行的应用程序的优先级高于正在运行的应用程序, 使得将正在运 行的应用程序暂停被处理, 而执行用户界面的切换, 那么, 当终端完成了对用户界面切换后 的应用程序的处理之后, 可以通过下述方式, 恢复对原本正在运行的应用程序的继续处理: ( 1 ) 假定 CPU1正在运行第一应用程序, 而 CPU2需要运行第二应用程序, 且 CPU1在 第一应用程序的优先级低于第二应用程序时, 中断与第一应用程序的交互。 那么, 在完成与 所述第二应用程序的交互之后, CPU2还向所述 CPU1发送恢复指令, 使所述 CPU1继续通过 所述第一用户界面与所述第一应用程序进行交互。
( 2 ) 假定 CPU2正在运行第三应用程序, 而 CPU1需要运行第四应用程序, 且 CPU2在 第三应用程序的优先级低于第四应用程序时, 中断与第三应用程序的交互。 那么, 在完成与 所述第四应用程序的交互之后, CPU1还向所述 CPU2发送恢复指令, 使所述 CPU2继续通过 所述第二用户界面与所述第三应用程序进行交互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
以上均为终端自行确定是否切换用户界面, 而由于不同用户的实际需求不同, 用户也可 以根据实际情况, 手动执行用户界面的切换操作, 比如:
( 1 ) 用户可以通过第一用户界面向 CPU1发送界面切换命令, 则 CPU1将第一桌面启动 器或第一操作系统关闭或放至后台; 同时, CPU2 还根据第一用户界面接收到的界面切换命 令, 运行第二桌面启动器或第二操作系统。
( 2 ) 用户可以通过第二用户界面向 CPU2发送界面切换命令, 则 CPU2将第二桌面启动 器或第二操作系统关闭或放至后台; 同时, CPU1 还根据第二用户界面接收到的界面切换命 令, 运行第一桌面启动器或第一操作系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述技术方案中, 优选地, 所述 CPU1 还用于: 若所述第一用户界面为默认界面, 则 在所述终端每次开机时, 运行所述第一桌面启动器或第一操作系统; 以及所述 CPU2 还用 于: 若所述第二用户界面为默认界面, 则在所述终端每次开机时, 运行所述第二桌面启动器 或第二操作系统。
在该技术方案中, 通过设置默认界面, 使得终端在开机时, 仅需要运行指定的一个桌面 启动器或操作系统, 不必须同时运行所有的桌面启动器或操作系统, 从而有助于降低对终端 的运行资源的消耗和电量的损耗。
当然, 终端也可以不设置默认界面, 则当开机时, 同时启动所有的桌面启动器或操作系 统, 但仅显示其中的某一个用户界面, 将其他的放至后台, 则当用户需要切换至其他的用户 界面时, 不必实时启动相应的桌面启动器或操作系统, 直接执行切换即可, 有助于缩短用户 的等待时间, 增强用户的使用体验。
图 33示出了根据本发明的实施例的 CPU1执行用户界面切换控制的流程图。
如图 33所示, 根据本发明的实施例的 CPU1执行用户界面切换控制的流程包括: 步骤 3302, 判断 CPU1是否接收到 CPU2发送的中断指令, 若没有接收到, 则进入步骤 504, 若接收到, 则进入步骤 3306。
具体地, 终端内包含 CPU1和 CPU2, 且 CPU1用于对私密数据进行处理, 而 CPU2用于 对非私密数据进行处理。 CPU1和 CPU2分别对应于不同的存储空间, 比如 CPU1对应于第一 存储单元, CPU2对应于第二存储单元。 为了使得 CPU1和 CPU2处理的应用程序能够得到不 同的交互特性, 在第一存储单元和第二存储单元中分别存储着不同的桌面启动器或操作系统 的数据。
第一种情况下, 采用同一个操作系统 (该操作系统的数据存储在第一存储单元或第二存 储单元中) , 且第一存储单元内存储有第一桌面启动器, 用于启动第一用户界面, 第二存储 单元内存储有第二桌面启动器, 用于启动第二用户界面; 第二种情况下, 第一存储单元内存 储有第一操作系统的数据, 用于启动第一用户界面, 第二存储单元内存储有第二桌面启动 器, 用于启动第二用户界面。
步骤 3304, 判断 CPU1 当前需要执行的业务是否需要执行 UI 交互, 若需要, 则进入步 骤 3310, 否则正常执行该业务, 并返回步骤 3302。
步骤 3306, 判断当前用户界面是否为第一用户界面, 若是, 则进入步骤 3308, 否则进入 步骤 3302。
其中, 若当前界面不是第一用户界面, 则与 CPU1 没有关系, 此时可能是由于 CPU2 判 断错误或错误发送指令, 也可能是由于终端内还包含有其他的 CPU, 比如 CPU3 , 则当前可 能出于对应于 CPU3 的第三用户界面, 因而 CPU2 在检测到当前不是自身对应的第二用户界 面时, 即可向其他所有的 CPU发送中断指令。
步骤 3308, 将第一用户界面关闭或放至后台。 其中, 若关闭第一用户界面, 则有利于释 放更多的存储空间和系统资源; 若放至后台, 则有助于及时切换回第一用户界面, 缩短用户 的等待时间。 步骤 3308完成之后, 可以进入步骤 3304或结束。
步骤 3310, 判断当前用户界面是否为第一用户界面, 若是, 则返回步骤 3302, 否则进入 步骤 3312。
步骤 3312, 启动第一用户界面, 具体地, 可以通过启动第一桌面启动器, 也可以通过启 动第一操作系统。 同时, 若终端内仅包含 CPU1和 CPU2 , 或 CPU1检测到当前用户界面具体 为第二用户界面, 则向 CPU2 发送中断指令, 使其将第二用户界面停止或放至后台; 若终端 内包含 CPU1、 CPU2以及其他 CPU时, 则 CPU1可以直接向除其自身之前的所有 CPU发送 中断指令。
与 CPU1 相对应地, 对于终端内的其他 CPU, 也可以采用类似的流程步骤, 实现对用户 界面的检测、 切换等。
图 34示出了根据本发明的实施例的 CPU2执行用户界面切换控制的流程图。
如图 34所示, 根据本发明的实施例的 CPU2执行用户界面切换控制的流程包括: 步骤 3402, 判断 CPU2是否接收到 CPU1发送的中断指令, 若没有接收到, 则进入步骤
3404, 若接收到, 则进入步骤 3406。
步骤 3404, 判断 CPU2 当前需要执行的业务是否需要执行 UI 交互, 若需要, 则进入步 骤 3410, 否则正常执行该业务, 并返回步骤 3402。
步骤 3406, 判断当前用户界面是否为第二用户界面, 若是, 则进入步骤 3408, 否则进入 步骤 3402。
步骤 3408, 将第二用户界面关闭或放至后台。 步骤 3408 完成之后, 可以进入步骤 3404 或结束。
步骤 3410, 判断当前用户界面是否为第二用户界面, 若是, 则返回步骤 3402, 否则进入 步骤 3412。 步骤 3412, 启动第二用户界面, 具体地, 可以通过启动第二桌面启动器, 也可以通过启 动第二操作系统。 同时, 若终端内仅包含 CPU1和 CPU2 , 或 CPU2检测到当前用户界面具体 为第一用户界面, 则向 CPU1 发送中断指令, 使其将第一用户界面停止或放至后台; 若终端 内包含 CPU1、 CPU2以及其他 CPU时, 则 CPU2可以直接向除其自身之前的所有 CPU发送 中断指令。
此外, 本申请在图 33 和图 34 所示出的处理流程的基础上, 还提出了进一步的改进方 案:
在上述技术方案中, 优选地, 还包括: 所述 CPU1 在通过所述第一用户界面与第一应用 程序进行交互时, 若接收到来自所述 CPU2 的中断指令, 所述中断指令表示所述 CPU2 希望 通过所述第二用户界面与第二应用程序进行交互, 则所述 CPU1 在所述第一应用程序的优先 级高于所述第二应用程序的情况下, 继续执行交互直至完成交互, 在所述第一应用程序的优 先级低于所述第二应用程序的情况下, 执行所述中断指令; 以及
所述 CPU2 在通过所述第二用户界面与第三应用程序进行交互时, 若接收到来自所述 CPU1 的中断指令, 所述中断指令表示所述 CPU1 希望通过所述第一用户界面与第四应用程 序进行交互, 则所述 CPU2 在所述第三应用程序的优先级高于所述第四应用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程序的优先级低于所述第四应用程序的情况 下, 执行所述中断指令。
在该技术方案中, 通过对 CPU1 和 CPU2 需要处理的应用程序 (或数据业务) 的优先级 进行判断, 并使得优先级较高的应用程序被优先处理, 使得存在多个处理单元、 多个用户界 面的情况下, 能够对处理任务的先后顺序进行有效地沟通和协调, 使得重要数据得以优先处 理, 实现更好的终端运行管理。
在上述技术方案中, 优选地, 还包括: 若所述 CPU1 在所述第一应用程序的优先级低于 所述第二应用程序的情况下, 中断与所述第一应用程序的交互, 则所述 CPU2 在完成与所述 第二应用程序的交互之后, 还向所述 CPU1 发送恢复指令, 使所述 CPU1 继续通过所述第一 用户界面与所述第一应用程序进行交互; 以及
若所述 CPU2 在所述第三应用程序的优先级低于所述第四应用程序的情况下, 中断与所 述第三应用程序的交互, 则所述 CPU1 在完成与所述第四应用程序的交互之后, 还向所述 CPU2 发送恢复指令, 使所述 CPU2 继续通过所述第二用户界面与所述第三应用程序进行交 互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
在上述技术方案中, 优选地, 还包括: 根据所述第一用户界面接收到的界面切换命令, 所述 CPU1 将所述第一桌面启动器或第一操作系统关闭或放至后台, 且所述 CPU2运行所述 第二桌面启动器或第二操作系统; 以及根据所述第二用户界面接收到的界面切换命令, 所述 CPU2 将所述第二桌面启动器或第二操作系统关闭或放至后台, 且所述 CPU1 运行所述第一 桌面启动器或第一操作系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述技术方案中, 优选地, 还包括: 将所述第一用户界面或所述第二用户界面设置为 默认界面; 每次开机时, 默认运行对应的所述第一桌面启动器或第一操作系统或所述第二桌 面启动器或第二操作系统。
在该技术方案中, 通过设置默认界面, 使得终端在开机时, 仅需要运行指定的一个桌面 启动器或操作系统, 不必须同时运行所有的桌面启动器或操作系统, 从而有助于降低对终端 的运行资源的消耗和电量的损耗。
当然, 终端也可以不设置默认界面, 则当开机时, 同时启动所有的桌面启动器或操作系 统, 但仅显示其中的某一个用户界面, 将其他的放至后台, 则当用户需要切换至其他的用户 界面时, 不必实时启动相应的桌面启动器或操作系统, 直接执行切换即可, 有助于缩短用户 的等待时间, 增强用户的使用体验。
对于上述用户界面的显示控制方法, 本发明还提出了相应的功能模块的实现, 下面将结 合图 35进行具体说明, 其中, 图 35 示出了根据本发明的实施例的用户界面的显示控制系统 的示意框图。
如图 35 所示, 根据本发明的实施例的用户界面的显示控制系统 3500, 包括: 第一处理 单元 3502 和第二处理单元 3504, 分别用于对终端内不同类型的数据进行处理; 第一存储单 元 3506和第二存储单元 3508, 分别用于对所述第一处理单元 3502和所述第二处理单元 3504 处理后的数据进行存储, 且所述第一存储单元 3506还用于存储第一桌面启动器或第一操作系 统, 所述第二存储单元 3508还用于存储第二桌面启动器或第二操作系统; 其中, 所述第一处 理器还用于: 通过运行所述第一桌面启动器或所述第一操作系统后显示出的第一用户界面, 执行用户界面交互; 所述第二处理器还用于: 通过运行所述第二桌面启动器或所述第二操作 系统后显示出的第二用户界面, 执行用户界面交互。
通过在第一存储单元 3506 中存储第一桌面启动器或第一操作系统、 在第二存储单元 3508 中存储第二桌面启动器或第二操作系统, 使得只有第一处理单元 3502 能够直接调用第 一桌面启动器或第一操作系统, 只有第二处理单元 3504能够直接调用第二桌面启动器或第二 操作系统, 确保应用 (桌面启动器) 和系统 (操作系统) 的安全性, 避免遭到破坏或篡改。 同时, 由于第一处理单元 3502 直接调用第一桌面启动器或第一操作系统、 第二处理单元 3504 调用第二桌面启动器或第二操作系统, 使得第一处理单元 3502 处理的业务和第二处理 单元 3504处理的业务, 能够分别实现独立的控制需求和 UI 交互, 也有助于满足各自的数据 隐私需求, 从而提升终端的安全性和使用过程中的便捷性。
在上述技术方案中, 优选地, 所述第一处理单元 3502还用于: 在需要进行用户界面交互 时, 检测当前显示的用户界面, 若为所述第一用户界面, 则直接执行交互, 若为所述第二用 户界面, 则向所述第二处理单元 3504发送界面切换指令, 并在所述第二处理单元 3504将所 述第二桌面启动器或第二操作系统关闭或放至后台之后, 运行所述第一桌面启动器或第一操 作系统; 以及
所述第二处理单元 3504 还用于: 在需要进行用户界面交互时, 检测当前显示的用户界 面, 若为所述第二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理 单元 3502发送界面切换指令, 并在所述第一处理单元 3502将所述第一桌面启动器或第一操 作系统关闭或放至后台之后, 运行所述第二桌面启动器或第二操作系统。
在该技术方案中, 第二处理单元 3504 在使用相应的第二用户界面实现 UI 交互的过程 中, 第一处理单元 3502仍可以通过发送界面切换指令, 及时切换至第一用户界面 (或由第一 用户界面切换至第二用户界面, 此处不再赘述) , 通过对用户界面的合理切换, 从而及时执 行一些可能更为重要的处理任务或业务。
在上述任一技术方案中, 优选地, 所述第一处理单元 3502还用于: 在通过所述第一用户 界面与第一应用程序进行交互时, 若接收到来自所述第二处理单元 3504的界面切换指令, 所 述界面切换指令表示所述第二处理单元 3504希望通过所述第二用户界面与第二应用程序进行 交互, 则所述第一处理单元 3502在所述第一应用程序的优先级高于所述第二应用程序的情况 下, 继续执行交互直至完成交互, 在所述第一应用程序的优先级低于所述第二应用程序的情 况下, 将所述第一桌面启动器或第一操作系统关闭或放至后台, 以由所述第二处理器启动所 述第二用户界面; 以及
所述第二处理单元 3504还用于: 在通过所述第二用户界面与第三应用程序进行交互时, 若接收到来自所述第一处理单元 3502的界面切换指令, 所述界面切换指令表示所述第一处理 单元 3502 希望通过所述第一用户界面与第四应用程序进行交互, 则所述第二处理单元 3504 在所述第三应用程序的优先级高于所述第四应用程序的情况下, 继续执行交互直至完成交 互, 在所述第三应用程序的优先级低于所述第四应用程序的情况下, 将所述第二桌面启动器 或第二操作系统关闭或放至后台, 以由所述第一处理器启动所述第一用户界面。
在该技术方案中, 通过对第一处理单元 3502和第二处理单元 3504需要处理的应用程序 (或数据业务) 的优先级进行判断, 并使得优先级较高的应用程序被优先处理, 使得存在多 个处理单元、 多个用户界面的情况下, 能够对处理任务的先后顺序进行有效地沟通和协调, 使得重要数据得以优先处理, 实现更好的终端运行管理。
在上述任一技术方案中, 优选地, 所述第一处理单元 3502还用于: 若所述第二处理单元 3504 在所述第三应用程序的优先级低于所述第四应用程序的情况下, 中断与所述第三应用程 序的交互, 则所述第一处理单元 3502在完成与所述第四应用程序的交互之后, 还向所述第二 处理单元 3504发送恢复指令, 使所述第二处理单元 3504继续通过所述第二用户界面与所述 第三应用程序进行交互; 以及, 所述第二处理单元 3504 还用于: 若所述第一处理单元 3502 在所述第一应用程序的优先级低于所述第二应用程序的情况下, 中断了与所述第一应用程序 的交互, 则所述第二处理单元 3504在完成与所述第二应用程序的交互之后, 还向所述第一处 理单元 3502发送恢复指令, 使所述第一处理单元 3502继续通过所述第一用户界面与所述第 一应用程序进行交互。
在该技术方案中, 当完成对优先级较高的应用程序的处理之后, 及时恢复处理原来的优 先级较低的应用程序, 使得多个处理单元之间实现有效的协调控制, 尽可能地及时完成所有 的处理任务。
在上述任一技术方案中, 优选地, 所述第一处理单元 3502还用于: 根据所述第一用户界 面接收到的界面切换命令, 将所述第一桌面启动器或第一操作系统关闭或放至后台, 以由所 述第二处理单元 3504 运行所述第二桌面启动器或第二操作系统; 以及, 所述第二处理单元 3504 还用于: 根据所述第二用户界面接收到的界面切换命令, 将所述第二桌面启动器或第二 操作系统关闭或放至后台, 以由所述第一处理单元 3502运行所述第一桌面启动器或第一操作 系统。
在该技术方案中, 如果用户根据自身的实际需求, 需要对某个应用程序进行优先处理, 且该应用程序需要使用不同于当前用户界面的另一用户界面进行 UI交互, 则可以手动发出界 面切换指令, 使得终端通过对用户界面的切换, 优先对相应的应用程序进行处理。
在上述任一技术方案中, 优选地, 还包括: 设置单元 3510, 用于将所述第一用户界面或 所述第二用户界面设置为默认界面; 其中, 每次开机时, 默认由所述第一处理单元 3502运行 对应的所述第一桌面启动器或第一操作系统, 或由所述第二处理单元 3504运行对应的所述第 二桌面启动器或第二操作系统。
在该技术方案中, 通过设置默认界面, 使得终端在开机时, 仅需要运行指定的一个桌面 启动器或操作系统, 不必须同时运行所有的桌面启动器或操作系统, 从而有助于降低对终端 的运行资源的消耗和电量的损耗。
当然, 终端也可以不设置默认界面, 则当开机时, 同时启动所有的桌面启动器或操作系 统, 但仅显示其中的某一个用户界面, 将其他的放至后台, 则当用户需要切换至其他的用户 界面时, 不必实时启动相应的桌面启动器或操作系统, 直接执行切换即可, 有助于缩短用户 的等待时间, 增强用户的使用体验。
在上述任一技术方案中, 优选地, 所述第一处理单元 3502用于对所述终端内的私密数据 进行处理, 所述第二处理单元 3504用于对所述终端内的非私密数据进行处理。
在该技术方案中, 通过第一处理单元 3502来处理私密数据、 第二处理单元 3504来处理 非私密数据, 使得私密数据和非私密数据之间得以在物理上被有效隔离, 从而避免在终端中 仅使用单个处理器时, 仅通过权限上的破解等就可轻易使得任意应用程序从该单个处理器中 获取私密数据。
通过第一存储单元 3506来存储第一处理单元 3502处理的私密数据、 第二存储单元 3508 来存储第二处理单元 3504处理的非私密数据, 使得私密数据和非私密数据在存储和调用的时 候, 也实现物理上的隔离, 从而得到更好的数据安全效果。
此外, 私密数据是指对于用户来讲该数据属于个人隐私的数据, 例如密码、 账号、 短信 内容、 邮件内容、 财务数据等, 而非私密数据是指对于用户来讲该数据不属于个人隐私的数 据, 例如下载的音乐、 电子书、 收音机数据、 网页新闻等。
本领域内的技术人员应明白, 本发明的实施例可提供为方法、 系统、 或计算机程序产 品。 因此, 本发明可采用完全硬件实施例、 完全软件实施例、 或结合软件和硬件方面的实施 例的形式。 而且, 本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用 存储介质 (包括但不限于磁盘存储器、 CD-ROM、 光学存储器等) 上实施的计算机程序产品 的形式。
本发明是参照根据本发明实施例的方法、 设备 (系统) 、 和计算机程序产品的流程图和 / 或方框图来描述的。 应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和 /或 方框、 以及流程图和 /或方框图中的流程和 /或方框的结合。 可提供这些计算机程序指令到通 用计算机、 专用计算机、 嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机 器, 使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图 一个流程或多个流程和 /或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工 作的计算机可读存储器中, 使得存储在该计算机可读存储器中的指令产生包括指令装置的制 造品, 该指令装置实现在流程图一个流程或多个流程和 /或方框图一个方框或多个方框中指定 的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上, 使得在计算机或 其他可编程设备上执行一系列操作步骤以产生计算机实现的处理, 从而在计算机或其他可编 程设备上执行的指令提供用于实现在流程图一个流程或多个流程和 /或方框图一个方框或多个 方框中指定的功能的步骤。
以上结合附图详细说明了本发明的技术方案, 本发明提出了一种终端和一种用户界面的 显示控制方法, 可以使终端内不同类型的数据, 采用不同的处理器进行处理, 并且处理器之 间在物理上被隔离处理, 以及不同类型的数据在物理上隔离存储, 有效提升了终端的安全 性。
在本发明中, 术语"第一"、 "第二 "仅用于描述目的, 而不能理解为指示或暗示相对重要 性。 术语"多个"指两个或两个以上, 除非另有明确的限定。
以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技术人员 来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修改、 等 同替换、 改进等, 均应包含在本发明的保护范围之内。

Claims

权 利 要 求 书
1. 一种终端, 其特征在于, 包括:
第一处理器和第二处理器, 分别用于对所述终端内不同类型的数据进行处理; 第一存储器, 仅连接至所述第一处理器, 用于对所述第一处理器处理的数据进行存储; 第二存储器, 仅连接至所述第二处理器, 用于对所述第二处理器处理的数据进行存储。
2. 根据权利要求 1所述的终端, 其特征在于, 所述第一处理器还用于:
在需要与所述终端的外部设备执行数据交互时, 向所述第二处理器发送中断信号, 以中 断所述第二处理器与所述终端的外部设备之间的数据交互操作。
3. 根据权利要求 2所述的终端, 其特征在于, 所述第一处理器还用于:
在完成与所述终端的外部设备的数据交互操作时, 向所述第二处理器发送恢复信号, 以 恢复所述第二处理器与所述终端的外部设备之间的数据交互操作。
4. 根据权利要求 2所述的终端, 其特征在于, 还包括:
线路切换装置, 一端连接至所述终端的外部设备, 另一端分别连接至所述第一处理器和 所述第二处理器, 用于实现所述第一处理器或所述第二处理器与所述终端的外部设备之间通 路的保持或断开;
其中, 当所述外部设备与所述第一处理器进行交互时, 所述线路切换装置断开所述外部 设备与所述第二处理器之间的通路, 当所述外部设备与所述第二处理器进行交互时, 所述线 路切换装置断开所述外部设备与所述第一处理器之间的通路。
5. 根据权利要求 4所述的终端, 其特征在于, 所述线路切换装置的控制端口与所述第一 处理器相连接, 则所述线路切换装置还用于:
在通过所述控制端口接收到来自所述第一处理器的第一切换指令的情况下, 判定所述第 一处理器需要与所述外部设备进行交互, 在通过所述控制端口接收到来自所述第一处理器的 第二切换指令的情况下, 判定所述第二处理器需要与所述外部设备进行交互;
其中, 所述第一处理器需要与所述终端的外部设备执行数据交互时, 发送所述第一切换 指令, 在接收到来自所述第二处理器的切换请求且接受所述切换请求的情况下, 发送所述第 二切换指令。
6. 根据权利要求 4所述的终端, 其特征在于, 所述线路切换装置还用于:
在检测到所述外部设备需要传输的数据为所述第一处理器对应的数据类型的情况下, 判 定所述外部设备需要与所述第一处理器进行交互;
在检测到所述外部设备需要传输的数据为所述第二处理器对应的数据类型的情况下, 判 定所述外部设备需要与所述第二处理器进行交互。
7. 根据权利要求 2所述的终端, 其特征在于, 所述第二处理器还用于:
在接收到来自所述第一处理器的中断信号时, 将自身连接至所述外部设备的端口设置成 高阻状态。
8. 根据权利要求 1所述的终端, 其特征在于,
所述第一存储器还用于: 存储第一桌面启动器或第一操作系统;
所述第二存储器还用于: 存储第二桌面启动器或第二操作系统;
其中, 所述第一处理器通过运行所述第一桌面启动器或所述第一操作系统后显示出的第 —用户界面, 执行用户界面交互;
所述第二处理器通过运行所述第二桌面启动器或所述第二操作系统后显示出的第二用户 界面, 执行用户界面交互。
9. 根据权利要求 8所述的终端, 其特征在于,
所述第一处理器还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若为 所述第一用户界面, 则直接执行交互, 若为所述第二用户界面, 则向所述第二处理器发送界 面切换指令, 并在所述第二处理器将所述第二桌面启动器或第二操作系统关闭或放至后台之 后, 运行所述第一桌面启动器或第一操作系统; 以及
所述第二处理器还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若为 所述第二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理器发送界 面切换指令, 并在所述第一处理器将所述第一桌面启动器或第一操作系统关闭或放至后台之 后, 运行所述第二桌面启动器或第二操作系统。
10. 根据权利要求 9所述的终端, 其特征在于,
所述第一处理器还用于: 在通过所述第一用户界面与第一应用程序进行交互时, 若接收 到来自所述第二处理器的界面切换指令, 所述界面切换指令表示所述第二处理器希望通过所 述第二用户界面与第二应用程序进行交互, 则在所述第一应用程序的优先级高于所述第二应 用程序的情况下, 继续执行交互直至完成交互, 在所述第一应用程序的优先级低于所述第二 应用程序的情况下, 将所述第一桌面启动器或第一操作系统关闭或放至后台, 以由所述第二 处理器启动所述第二用户界面; 以及
所述第二处理器还用于: 在通过所述第二用户界面与第三应用程序进行交互时, 若接收 到来自所述第一处理器的界面切换指令, 所述界面切换指令表示所述第一处理器希望通过所 述第一用户界面与第四应用程序进行交互, 则在所述第三应用程序的优先级高于所述第四应 用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程序的优先级低于所述第四 应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或放至后台, 以由所述第一 处理器启动所述第一用户界面。
1 1. 根据权利要求 10所述的终端, 其特征在于,
所述第二处理器还用于: 若所述第一处理器在所述第一应用程序的优先级低于所述第二 应用程序时, 中断与所述第一应用程序的交互, 则在完成与所述第二应用程序的交互之后, 还向所述第一处理器发送恢复指令, 使所述第一处理器继续通过所述第一用户界面与所述第 一应用程序进行交互; 以及
所述第一处理器还用于: 若所述第二处理器在所述第三应用程序的优先级低于所述第四 应用程序时, 中断与所述第三应用程序的交互, 则在完成与所述第四应用程序的交互之后, 还向所述第二处理器发送恢复指令, 使所述第二处理器继续通过所述第二用户界面与所述第 三应用程序进行交互。
12. 根据权利要求 8所述的终端, 其特征在于,
所述第一处理器还用于: 根据所述第一用户界面接收到的界面切换命令, 将所述第一桌 面启动器或第一操作系统关闭或放至后台; 所述第二处理器还用于: 根据所述第一用户界面 接收到的所述界面切换命令, 运行所述第二桌面启动器或第二操作系统; 以及
所述第二处理器还用于: 根据所述第二用户界面接收到的界面切换命令, 将所述第二桌 面启动器或第二操作系统关闭或放至后台; 所述第一处理器还用于: 根据所述第二用户界面 接收到的所述界面切换命令, 运行所述第一桌面启动器或第一操作系统。
13. 根据权利要求 1至 12中任一项所述的终端, 其特征在于, 所述第一处理器用于对所 述终端内的私密数据进行处理, 所述第二处理器用于对所述终端内的非私密数据进行处理。
14. 一种用户界面的显示控制方法, 其特征在于, 包括:
通过第一处理单元和第二处理单元分别对终端内不同类型的数据进行处理;
通过第一存储单元和第二存储单元分别对所述第一处理单元和所述第二处理单元处理后 的数据进行存储, 且所述第一存储单元中还存储有第一桌面启动器或第一操作系统, 所述第 二存储单元还存储有第二桌面启动器或第二操作系统;
其中, 所述第一处理器通过运行所述第一桌面启动器或所述第一操作系统后显示出的第 一用户界面, 执行用户界面交互;
所述第二处理器通过运行所述第二桌面启动器或所述第二操作系统后显示出的第二用户 界面, 执行用户界面交互。
15. 根据权利要求 8 所述的用户界面的显示控制方法, 其特征在于, 所述第一处理单元 在需要进行用户界面交互时, 检测当前显示的用户界面, 若为所述第一用户界面, 则直接执 行交互, 若为所述第二用户界面, 则向所述第二处理单元发送界面切换指令, 并在所述第二 处理单元将所述第二桌面启动器或第二操作系统关闭或放至后台之后, 运行所述第一桌面启 动器或第一操作系统; 以及
所述第二处理单元在需要进行用户界面交互时, 检测当前显示的用户界面, 若为所述第 二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理单元发送界面切 换指令, 并在所述第一处理单元将所述第一桌面启动器或第一操作系统关闭或放至后台之 后, 运行所述第二桌面启动器或第二操作系统。
16. 根据权利要求 15所述的用户界面的显示控制方法, 其特征在于, 还包括: 所述第一处理单元在通过所述第一用户界面与第一应用程序进行交互时, 若接收到来自 所述第二处理单元的界面切换指令, 所述界面切换指令表示所述第二处理单元希望通过所述 第二用户界面与第二应用程序进行交互, 则所述第一处理单元在所述第一应用程序的优先级 高于所述第二应用程序的情况下, 继续执行交互直至完成交互, 在所述第一应用程序的优先 级低于所述第二应用程序的情况下, 将所述第一桌面启动器或第一操作系统关闭或放至后 台, 以由所述第二处理器启动所述第二用户界面; 以及
所述第二处理单元在通过所述第二用户界面与第三应用程序进行交互时, 若接收到来自 所述第一处理单元的界面切换指令, 所述界面切换指令表示所述第一处理单元希望通过所述 第一用户界面与第四应用程序进行交互, 则所述第二处理单元在所述第三应用程序的优先级 高于所述第四应用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程序的优先 级低于所述第四应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或放至后 台, 以由所述第一处理器启动所述第一用户界面。
17. 根据权利要求 16所述的用户界面的显示控制方法, 其特征在于, 还包括: 若所述第一处理单元在所述第一应用程序的优先级低于所述第二应用程序的情况下, 中 断与所述第一应用程序的交互, 则所述第二处理单元在完成与所述第二应用程序的交互之 后, 还向所述第一处理单元发送恢复指令, 使所述第一处理单元继续通过所述第一用户界面 与所述第一应用程序进行交互; 以及
若所述第二处理单元在所述第三应用程序的优先级低于所述第四应用程序的情况下, 中 断与所述第三应用程序的交互, 则所述第一处理单元在完成与所述第四应用程序的交互之 后, 还向所述第二处理单元发送恢复指令, 使所述第二处理单元继续通过所述第二用户界面 与所述第三应用程序进行交互。
18. 根据权利要求 14所述的用户界面的显示控制方法, 其特征在于, 还包括: 根据所述第一用户界面接收到的界面切换命令, 所述第一处理单元将所述第一桌面启动 器或第一操作系统关闭或放至后台, 且所述第二处理单元运行所述第二桌面启动器或第二操 作系统; 以及
根据所述第二用户界面接收到的界面切换命令, 所述第二处理单元将所述第二桌面启动 器或第二操作系统关闭或放至后台, 且所述第一处理单元运行所述第一桌面启动器或第一操 作系统。
19. 根据权利要求 14所述的用户界面的显示控制方法, 其特征在于, 还包括: 将所述第一用户界面或所述第二用户界面设置为默认界面;
每次开机时, 默认运行对应的所述第一桌面启动器或第一操作系统或所述第二桌面启动 器或第二操作系统。
20. 根据权利要求 14至 19 中任一项所述的用户界面的显示控制方法, 其特征在于, 还 包括:
所述第一处理器用于对所述终端内的私密数据进行处理, 所述第二处理器用于对所述终 端内的非私密数据进行处理。
21. 一种用户界面的显示控制系统, 其特征在于, 包括:
第一处理单元和第二处理单元, 分别用于对终端内不同类型的数据进行处理; 第一存储单元和第二存储单元, 分别用于对所述第一处理单元和所述第二处理单元处理 后的数据进行存储, 且所述第一存储单元还用于存储第一桌面启动器或第一操作系统, 所述 第二存储单元还用于存储第二桌面启动器或第二操作系统;
其中, 所述第一处理器还用于: 通过运行所述第一桌面启动器或所述第一操作系统后显 示出的第一用户界面, 执行用户界面交互;
所述第二处理器还用于: 通过运行所述第二桌面启动器或所述第二操作系统后显示出的 第二用户界面, 执行用户界面交互。
22. 根据权利要求 21所述的用户界面的显示控制系统, 其特征在于,
所述第一处理单元还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若 为所述第一用户界面, 则直接执行交互, 若为所述第二用户界面, 则向所述第二处理单元发 送界面切换指令, 并在所述第二处理单元将所述第二桌面启动器或第二操作系统关闭或放至 后台之后, 运行所述第一桌面启动器或第一操作系统; 以及
所述第二处理单元还用于: 在需要进行用户界面交互时, 检测当前显示的用户界面, 若 为所述第二用户界面, 则直接执行交互, 若为所述第一用户界面, 则向所述第一处理单元发 送界面切换指令, 并在所述第一处理单元将所述第一桌面启动器或第一操作系统关闭或放至 后台之后, 运行所述第二桌面启动器或第二操作系统。
23. 根据权利要求 22所述的用户界面的显示控制系统, 其特征在于,
所述第一处理单元还用于: 在通过所述第一用户界面与第一应用程序进行交互时, 若接 收到来自所述第二处理单元的界面切换指令, 所述界面切换指令表示所述第二处理单元希望 通过所述第二用户界面与第二应用程序进行交互, 则所述第一处理单元在所述第一应用程序 的优先级高于所述第二应用程序的情况下, 继续执行交互直至完成交互, 在所述第一应用程 序的优先级低于所述第二应用程序的情况下, 将所述第一桌面启动器或第一操作系统关闭或 放至后台, 以由所述第二处理器启动所述第二用户界面; 以及
所述第二处理单元还用于: 在通过所述第二用户界面与第三应用程序进行交互时, 若接 收到来自所述第一处理单元的界面切换指令, 所述界面切换指令表示所述第一处理单元希望 通过所述第一用户界面与第四应用程序进行交互, 则所述第二处理单元在所述第三应用程序 的优先级高于所述第四应用程序的情况下, 继续执行交互直至完成交互, 在所述第三应用程 序的优先级低于所述第四应用程序的情况下, 将所述第二桌面启动器或第二操作系统关闭或 放至后台, 以由所述第一处理器启动所述第一用户界面。
24. 根据权利要求 23所述的用户界面的显示控制系统, 其特征在于,
所述第一处理单元还用于: 若所述第二处理单元在所述第三应用程序的优先级低于所述 第四应用程序的情况下, 中断与所述第三应用程序的交互, 则所述第一处理单元在完成与所 述第四应用程序的交互之后, 还向所述第二处理单元发送恢复指令, 使所述第二处理单元继 续通过所述第二用户界面与所述第三应用程序进行交互; 以及
所述第二处理单元还用于: 若所述第一处理单元在所述第一应用程序的优先级低于所述 第二应用程序的情况下, 中断了与所述第一应用程序的交互, 则所述第二处理单元在完成与 所述第二应用程序的交互之后, 还向所述第一处理单元发送恢复指令, 使所述第一处理单元 继续通过所述第一用户界面与所述第一应用程序进行交互。
25. 根据权利要求 21所述的用户界面的显示控制系统, 其特征在于,
所述第一处理单元还用于: 根据所述第一用户界面接收到的界面切换命令, 将所述第一 桌面启动器或第一操作系统关闭或放至后台, 以由所述第二处理单元运行所述第二桌面启动 器或第二操作系统; 以及
所述第二处理单元还用于: 根据所述第二用户界面接收到的界面切换命令, 将所述第二 桌面启动器或第二操作系统关闭或放至后台, 以由所述第一处理单元运行所述第一桌面启动 器或第一操作系统。
26. 根据权利要求 21所述的用户界面的显示控制系统, 其特征在于, 还包括: 设置单元, 用于将所述第一用户界面或所述第二用户界面设置为默认界面;
其中, 每次开机时, 默认由所述第一处理单元运行对应的所述第一桌面启动器或第一操 作系统, 或由所述第二处理单元运行对应的所述第二桌面启动器或第二操作系统。
27. 根据权利要求 21 至 26 中任一项所述的用户界面的显示控制系统, 其特征在于, 所 述第一处理单元用于对所述终端内的私密数据进行处理, 所述第二处理单元用于对所述终端 内的非私密数据进行处理。
PCT/CN2013/084351 2013-07-30 2013-09-26 终端、用户界面的显示控制方法和显示控制系统 Ceased WO2015014013A1 (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
CN201310327039.X 2013-07-30
CN201310327039XA CN103402018A (zh) 2013-07-30 2013-07-30 终端和数据处理方法
CN201310325766.2 2013-07-30
CN2013103257662A CN103400085A (zh) 2013-07-30 2013-07-30 一种终端
CN201310326704.3 2013-07-30
CN201310325657.0 2013-07-30
CN201310326704.3A CN103400081B (zh) 2013-07-30 2013-07-30 终端和用户界面的显示控制方法
CN201310325657.0A CN103400088B (zh) 2013-07-30 2013-07-30 一种终端

Publications (1)

Publication Number Publication Date
WO2015014013A1 true WO2015014013A1 (zh) 2015-02-05

Family

ID=52430915

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/084351 Ceased WO2015014013A1 (zh) 2013-07-30 2013-09-26 终端、用户界面的显示控制方法和显示控制系统

Country Status (1)

Country Link
WO (1) WO2015014013A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265531A (zh) * 2021-12-22 2022-04-01 合肥联睿微电子科技有限公司 显示器控制权切换方法、终端设备和计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192165A (zh) * 2006-11-29 2008-06-04 中兴通讯股份有限公司 主从式多处理器系统以及软件版本加载方法
CN101477476A (zh) * 2008-01-02 2009-07-08 联想(北京)有限公司 多操作系统之间切换显示的控制方法和计算机系统
CN101604252A (zh) * 2009-07-10 2009-12-16 深圳华为通信技术有限公司 多处理器系统以及多处理器系统启动方法
CN101782861A (zh) * 2009-12-24 2010-07-21 华为终端有限公司 在嵌入式系统中操作系统的管理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192165A (zh) * 2006-11-29 2008-06-04 中兴通讯股份有限公司 主从式多处理器系统以及软件版本加载方法
CN101477476A (zh) * 2008-01-02 2009-07-08 联想(北京)有限公司 多操作系统之间切换显示的控制方法和计算机系统
CN101604252A (zh) * 2009-07-10 2009-12-16 深圳华为通信技术有限公司 多处理器系统以及多处理器系统启动方法
CN101782861A (zh) * 2009-12-24 2010-07-21 华为终端有限公司 在嵌入式系统中操作系统的管理方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265531A (zh) * 2021-12-22 2022-04-01 合肥联睿微电子科技有限公司 显示器控制权切换方法、终端设备和计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN105072482B (zh) 一种多媒体播放设备的播放控制方法及装置
WO2023284699A1 (zh) 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质
US9686030B2 (en) Method and apparatus for configuration and control of mixer for audio system using wireless docking system
CN104378838B (zh) 一种建立无线连接的方法及装置
JP2012531676A (ja) 仮想モバイル機器
JP2008269288A (ja) 起動システム、起動プログラムおよびその方法。
EP3238483B1 (en) Voice handover between wireless networks
WO2014194793A1 (zh) 一种在能够运行两种操作系统的装置中使用共享设备的方法
KR20160013953A (ko) 무선 도킹 환경들의 이용 및 구성
CN110312286A (zh) 网络切换方法、通信装置及通信设备
WO2023165309A1 (zh) 可共享远程直接数据存取链接的创建方法及装置
US20140012943A1 (en) Method and storage apparatus for switching data transmission path to transmit data
US20220232653A1 (en) Method for switching bluetooth connection, bluetooth chip, and bluetooth device
US20130332686A1 (en) Information processing apparatus, information processing method, and program
CN103400081A (zh) 终端和用户界面的显示控制方法
WO2014206172A1 (zh) 移动设备中的非可信环境与可信环境之间的切换
WO2015014013A1 (zh) 终端、用户界面的显示控制方法和显示控制系统
CN108712280B (zh) 一种网络功能的管理方法、装置、存储介质及智能终端
CN104618894B (zh) 数据处理装置和数据处理方法
CN113873676A (zh) 一种业务处理方法及终端、存储介质
CN101266582A (zh) 嵌入式设备的音频管理装置及方法
KR20180067649A (ko) 유선 혹은 무선 인터페이스를 통한 온-고잉 세션의 연속성을 유지하는 방법 및 장치
CN114448940B (zh) 设备间联通方法、电子设备、及计算机可读存储介质
WO2015014014A1 (zh) 终端、数据交互方法和数据交互系统
CN103440437B (zh) 终端和用户界面的显示控制方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13890524

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13890524

Country of ref document: EP

Kind code of ref document: A1