HOSTED APP INTEGRATION SERVICES IN MULTI-OPERATING SYSTEM MOBILE AND OTHER COMPUTING DEVICES
First Claim
1. A computing device, comprisingA. a central processing unit (CPU) that is coupled to a hardware interface, including at least a display and an associated video frame buffer,B. the CPU executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system,C. a first native software application executing within the one or more native runtime environments effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “
- processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,D. one or more of the hosted software applications executing within the one or more hosted runtime environments each executes instructions that utilize a subsystem that is common to the one or more hosted runtime environments,E. one or more further native software applications (“
proxies”
), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, that affords those one or more respective hosted software applications access to resources of the native operating system, native runtime environments, and/or hardware resources of the device.
7 Assignments
0 Petitions
Accused Products
Abstract
The invention provides, in some aspects, a computing device that includes a central processing unit that is coupled to a hardware interface and that executes a native operating system including one or more native runtime environments within which native software applications are executing. A first native software application executing within the one or more native runtime environments defines one or more hosted runtime environments within which hosted software applications are executing. One or more further native software applications (“IO proxies”), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, receives the graphics generated by the respective hosted software application and effects writing of those graphics to the video frame buffer for presentation on the display of the computing device.
-
Citations
5 Claims
-
1. A computing device, comprising
A. a central processing unit (CPU) that is coupled to a hardware interface, including at least a display and an associated video frame buffer, B. the CPU executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system, C. a first native software application executing within the one or more native runtime environments effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “ - processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,D. one or more of the hosted software applications executing within the one or more hosted runtime environments each executes instructions that utilize a subsystem that is common to the one or more hosted runtime environments, E. one or more further native software applications (“
proxies”
), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, that affords those one or more respective hosted software applications access to resources of the native operating system, native runtime environments, and/or hardware resources of the device.
- processes”
-
2. A computing device, comprising
A. a central processing unit that is coupled to a hardware interface including at least a display and an associated video frame buffer and that executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system, B. a first native software application executes within the one or more native runtime environments and effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “ - processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, where each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,C. one or more of the hosted software applications executing within the one or more hosted runtime environments each execute instructions to interact with a user of the computing device via graphics generated, as part of a graphical user interface, by the respective hosted software application using a hosted windowing subsystem that is common to the one or more hosted runtime environments and that loads one or more buffers with those graphics, and D. one or more native software applications (“
IO proxies”
), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, receive the graphics generated by the respective hosted software application and effect writing of those graphics to the video frame buffer for presentation on the display of the computing device.
- processes”
-
3. A computing device, comprising:
-
A. a central processing unit that is coupled to a hardware interface and that executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system, B. a first native software application executing within the one or more native runtime environments effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “
processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, where each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,C. one or more of the hosted software applications executing within the one or more hosted runtime environments receive notifications of events from a hosted event handler subsystem that forms part of the one or more hosted runtime environments and that is common to the one or more hosted software applications, D. one or more native software applications (“
IO proxies”
), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, receive notification of user input made with respect to them from the one or more native runtime environments, andE. each IO proxy responds to notification of user input by transmitting information with respect thereto received from the one or more native runtime environments to the hosted event handler, which notifies the hosted software application corresponding to IO proxy that received that notification of that user input.
-
-
4. A computing device, comprising
A. a central processing unit that is coupled to a hardware interface including at least a display and an associated video frame buffer and that executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system, B. a first native software application executes within the one or more native runtime environments and effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “ - processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, where each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,C. one or more of the hosted software applications executing within the one or more hosted runtime environments each execute instructions to interact with a user of the computing device via graphics generated, as part of a graphical user interface, by the respective hosted software application using a hosted windowing subsystem that is common to the one or more hosted runtime environments and that loads one or more buffers with those graphics, D. one or more native software applications (“
IO proxies”
), each executing within the one or more native runtime environments and each corresponding to a respective one of the one or more hosted software applications, receive the graphics generated by the respective hosted software application and effect writing of those graphics to the video frame buffer for presentation on the display of the computing device,E. at least one of the native operating system and the one or more native runtime environments responds to user selection of an executing one of the native software applications by bringing a graphical window representing execution of that application to a foreground of the display and making it active within the one or more native runtime environments, and F. the first native software application, upon being brought to the foreground and/or being made active, effects making the first hosted software application active within the one or more hosted runtime environments as if it had been brought to the foreground in them.
- processes”
-
5. A computing device, comprising:
-
A. a central processing unit that is coupled to a hardware interface and that executes a native operating system including one or more native runtime environments within which native software applications are executing, where each such native software application has instructions for execution under the native operating system, B. a first native software application executing within the one or more native runtime environments effects at least one of installation, instantiation and invocation of any of services and processes (collectively, “
processes”
) that run outside the context of the first native software application and that make up one or more hosted runtime environments within which hosted software applications are executing, where each such hosted software application has instructions for execution under a hosted operating system that differs from the native operating system,C. the one or more native runtime environments include a common native notification subsystem that is in communications coupling with native software applications and that marshals notifications generated by them for presentation to the use via the hardware interface, D. the one or more hosted runtime environments include a common hosted notification subsystem that is in communications coupling with hosted software applications and that marshals notifications generated by them for presentation to the use via the hardware interface, E. the hosted notification subsystem comprises instructions for execution under the hosted operating system and executes on the central processing unit within one of more of the hosted runtime environments. F. the native notification subsystem comprises instructions for execution under the native operating system and executes on the central processing unit within one of more of the hosted runtime environments, G. a plurality of hosted software applications that each comprise instructions for execution under the hosted operating system execute on the central processing unit within one of more of the hosted runtime environments, and H. one or more of the hosted software applications generate notifications for presentation to a user of the device and transmit those notifications to the hosted notification subsystem, which is in communications coupling with an adaptation layer that adapts notifications received from the one or more hosted software applications for, and transmits them to, the native hosted notification subsystem, which effects their presentation on the hardware interface of notifications from the hosted software applications.
-
Specification