Auto-waking of a suspended OS in a dockable system
First Claim
1. A method for configuring a mobile computing device to multiple user environments, the method comprising:
- before determining whether the mobile computing device is docked with a secondary terminal environment, starting a mobile operating system in a first execution environment on a shared kernel;
after starting the mobile operating system, establishing, by the mobile operating system, a second execution environment on the shared kernel;
starting, by the mobile operating system, a desktop operating system in the second execution environment;
after starting the desktop operating system, determining whether the mobile computing device is docked with a secondary terminal environment;
determining that the mobile computing device is not docked with a secondary terminal environment;
suspending, in response to determining that the mobile computing device is not docked with a secondary terminal environment, the desktop operating system by the mobile operating system;
after suspending the desktop operating system, detecting, in the shared kernel, a docking event of the mobile computing device with the secondary terminal environment;
notifying, by the shared kernel, the mobile operating system of the docking event;
determining, by the mobile operating system, that a user experience profile of the docked secondary terminal environment is associated with one of the desktop operating system and the mobile operating system;
resuming, in response to determining that the user experience profile of the docked secondary terminal environment is associated with the desktop operating system, the desktop operating system from a suspended condition by the mobile operating system, wherein the desktop operating system and the mobile operating system run concurrently on the shared kernel; and
in response to determining that the user experience profile of the docked secondary terminal environment is associated with the mobile operating system, if the desktop operating system is not in the suspended condition, suspending the desktop operating system by the mobile operating system.
3 Assignments
0 Petitions
Accused Products
Abstract
A mobile computing device with a mobile operating system and desktop operating system running concurrently and independently on a shared kernel without virtualization. The mobile operating system provides a user experience for the mobile computing device that suits the mobile environment. The desktop operating system provides a full desktop user experience when the mobile computing device is docked to a secondary terminal environment. The desktop operating system may be suspended when the mobile computing device is not docked with a secondary terminal environment and resumed when the mobile computing device is docked with a secondary terminal environment that provides a desktop computing experience. The mobile computing device may be a smartphone running the Android mobile OS and a full desktop Linux OS distribution on a modified Android kernel.
-
Citations
21 Claims
-
1. A method for configuring a mobile computing device to multiple user environments, the method comprising:
-
before determining whether the mobile computing device is docked with a secondary terminal environment, starting a mobile operating system in a first execution environment on a shared kernel; after starting the mobile operating system, establishing, by the mobile operating system, a second execution environment on the shared kernel; starting, by the mobile operating system, a desktop operating system in the second execution environment; after starting the desktop operating system, determining whether the mobile computing device is docked with a secondary terminal environment; determining that the mobile computing device is not docked with a secondary terminal environment; suspending, in response to determining that the mobile computing device is not docked with a secondary terminal environment, the desktop operating system by the mobile operating system; after suspending the desktop operating system, detecting, in the shared kernel, a docking event of the mobile computing device with the secondary terminal environment; notifying, by the shared kernel, the mobile operating system of the docking event; determining, by the mobile operating system, that a user experience profile of the docked secondary terminal environment is associated with one of the desktop operating system and the mobile operating system; resuming, in response to determining that the user experience profile of the docked secondary terminal environment is associated with the desktop operating system, the desktop operating system from a suspended condition by the mobile operating system, wherein the desktop operating system and the mobile operating system run concurrently on the shared kernel; and in response to determining that the user experience profile of the docked secondary terminal environment is associated with the mobile operating system, if the desktop operating system is not in the suspended condition, suspending the desktop operating system by the mobile operating system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A mobile computing device, comprising:
-
a memory; a display screen; a processor in communication with the memory and the display screen, the processor operable to; start a mobile operating system in a first execution environment on a shared kernel; after starting the mobile operating system, establish, by the mobile operating system, a second execution environment on the shared kernel; start, by the mobile operating system, a desktop operating system in the second execution environment; after starting the desktop operating system, determine whether the mobile computing device is docked with a secondary terminal environment; after starting the desktop operating system, determine that the mobile computing device is not docked with the secondary terminal environment; suspend, in response to determining that the mobile computing device is not docked with a secondary terminal environment, the desktop operating system by the mobile operating system; after suspending the desktop operating system, detect, in the shared kernel, a docking event of the mobile computing device with the secondary terminal environment; notify, by the shared kernel, the mobile operating system of the docking event; determine, by the mobile operating system, that a user experience profile of the docked secondary terminal environment is associated with one of the desktop operating system and the mobile operating system; resume, in response to determining that the user experience profile of the docked secondary terminal environment is associated with the desktop operating system, the desktop operating system from a suspended condition by the mobile operating system, wherein the desktop operating system and the mobile operating system run concurrently on the shared kernel; and in response to determining that the user experience profile of the docked secondary terminal environment is associated with the mobile operating system, if the desktop operating system is not in the suspended condition, suspend the desktop operating system by the mobile operating system. - View Dependent Claims (15, 16, 17)
-
-
18. A non-transitory computer readable medium, having stored thereon, computer-executable instructions executable by a processor, the computer-executable instructions causing the processor to execute a method for configuring a mobile computing device to multiple user environments, the computer-executable instructions comprising:
-
instructions to start a mobile operating system in a first execution environment on a shared kernel; after starting the mobile operating system, instructions to establish, by the mobile operating system, a second execution environment on the shared kernel; instructions to start, by the mobile operating system, a desktop operating system in the second execution environment; after starting the desktop operating system, instructions to determine whether the mobile computing device is docked with a secondary terminal environment; after starting the desktop operating system, instructions to determine that the mobile computing device is not docked with the secondary terminal environment; instructions to suspend, in response to determining that the mobile computing device is not docked with a secondary terminal environment, the desktop operating system by the mobile operating system; after suspending the desktop operating system, instructions to detect, in the shared kernel, a docking event of the mobile computing device with the secondary terminal environment; instructions to notify, by the shared kernel, the mobile operating system of the docking event; instructions to determine, by the mobile operating system, that a user experience profile of the docked secondary terminal environment is associated with one of the desktop operating system and the mobile operating system; instructions to resume, in response to determining that the user experience profile of the docked secondary terminal environment is associated with the desktop operating system, the desktop operating system from a suspended condition by the mobile operating system, wherein the desktop operating system and the mobile operating system run concurrently on the shared kernel; and in response to determining that the user experience profile of the docked secondary terminal environment is associated with the mobile operating system, if the desktop operating system is not in the suspended condition, instructions to suspend the desktop operating system by the mobile operating system. - View Dependent Claims (19, 20, 21)
-
Specification