The present invention relates generally to sharing resources in multi-operating environments. More specifically, the present invention relates to monitoring and managing shared memory resources within a multi-operating environment that includes a mobile communication device.
New operational challenges arise when creating multi-operational environment devices (e.g. hardware devices that can include mobile and computing environments on a single device) including: (i) using the memory resources as efficiently as possible in all modes of operation; (ii) maintaining mobile communication or telephony stability and critical functionality while also using the computing environment.
Communication device operating instability can be seen in a multi-operating environment where resources such as memory are shared across the operating environments. Hardware devices can be docked or tethered or exist as peripheral devices during communication or operation within their respective operating environment.
Emulation systems that allow one operating system to control the devices have been thought of as managing resources efficiently. However, other resources such as processor usage are not efficiently handled.
More importantly is controlling the multi-operating environment under critical conditions such as extremely depleted memory resources.
Many consumers have experienced instable computing environments and have grown accustomed to dealing with “bugs” in their operating systems. In stark contrast, mobile communication environments are expected to be more robust than typical computing environments, because of the important function of communication on a as needed basis, for example in emergency situations or to give a person's whereabouts to concerned persons. Therefore, there is a challenging opportunity when a mobile communication operating environment is combined with a computing environment on a single platform or kernel. The following discussion describes a way to ensure that devices with these combined capabilities (e.g., mobile tablets/mobile telephones and desktop/laptop computing) remain at least as reliable as the typical mobile telephone.
While the specification concludes with claims defining features of the invention that are regarded as novel and unobvious, it is believed that the invention is better understood from a consideration of the description in conjunction with the drawings. As required, detailed embodiments of the present invention are disclosed herein. However, it is to be understood that the disclosed embodiments are merely exemplary of the invention, which can be embodied in various forms. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as basis for the claims and as a representative basis for teaching one skilled in the art to variously employ the present invention in virtually any appropriately detailed structure. Further, the terms and phrases used herein are not intended to be limiting, but rather to provide an understandable description of the invention.
Referring to
Referring to
In one embodiment, a Linux distribution operating system 200 is in communication with the Linux kernel 205, which is in communication with the device hardware 210. The device hardware 210 can be a memory storage device (not shown) coupled to a processor (not shown) which stores computer executable instructions which are configured to perform various functions and operations, as described herein.
An exemplary operating system 200 includes Ubuntu® (Canonical Ltd., www.ubuntu.com) for the Linux-based middleware operating environment 240. It is specifically intended that multiple middleware operating system environments co-exist independent of the other(s). Exemplary environments that can be included in multi-operating environment 200 include Android™, Ubuntu®, standard Linux-based environments, Symbian, and Windows-based environments. In an alternative embodiment, it is envisioned that greater than two operating environments are configured to independently co-exist on the same core kernel 205. However, kernel 205 may be pardoned as well.
Referring to
As the user continues to draw upon memory resources by using additional applications and web browsers or web pages, for example, the memory usage will track towards critical at bubble 330 (i.e., mem>y). At this juncture, a warning on the graphical user interface for the computing environment is displayed and computing functionality is disabled while at the same time there remains limited telephony operational functionality within the mobile communicating operating environment (e.g., Android™ as a first middleware operating system environment 220 in
The disabling of computing functionality in the computing environment can include restricting full web browser access or alternatively restricting partial web browser access by enabling selection of certain web pages to close. Moreover, the disabling of computing functionality will nevertheless allow the user to close windows or applications until at least the memory usage is once again below the low memory threshold (x). This exception to the disabled computing functionality can be accomplished by using a pop-up window, for example, that allows the user to exit applications and web browser tabs in order to free memory (i.e., gain additional unused memory), and also keep critical telephony functions.
With regard to what the user sees in the computing environment as computing functionality is disabled, one or more selectable icons are disabled or in the alternative an entire webpage can be “grayed-out”. That is the webpage will have no functionality for the user when it is grayed out.
Referring to
Referring to
Referring to
Referring to
Notably, the memory resources of the mobile communication device, i.e., mobile telephone or mobile tablet can also be tracked via a graphical user interface as shown in
This invention makes a mobile phone that is functioning in a multi-operating environment more stable and more reliable by preventing the user from opening additional windows or starting new applications when memory resources are critically low. This in turn, will help in making sure that the multi-operating environment doesn't crash or fail due to the lack of memory and the invention will also help in preventing missed calls that could inevitably arise in the event of system crash.
The present invention can be realized in hardware, software, or a combination of hardware and software. The present invention can be realized in a centralized fashion in one processing system or in a distributed fashion where different elements are spread across several interconnected processing systems. Any kind of processing system or other apparatus, such as a controller, can be adapted for carrying out the methods described herein. A combination of hardware and software within a processing system can include an application that when loaded and executed controls the processing system such that it carries out the methods described herein. The present invention also can be embedded in an application product, which comprises all the features enabling implementation of the methods described herein, and which when loaded in a processing system is able to carry out these methods.
The terms “computer program,” “software,” “application,” variants and/or combinations thereof, in the present context, mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form. For example, an application can include, but is not limited to, a subroutine, a function, a procedure, an object method, on object implementation, an executable application, an applet, a servlet, a source code, an object code, a shared library/dynamic load library and/or other sequence of instructions designed for execution on a processing system.
The terms“a” and“an” as used herein, are defined as one or more than one.
The term “plurality” as used herein, is defined as two as or more than two. The term “another” as used herein, is defined as at least a second or more. The terms “including” and/or “having” as used herein, are defined as comprising (i.e., open language).
It is specifically intended that the present invention not be limited to the embodiments and illustrations contained herein, but include modified forms of those embodiments including portions of the embodiments and combinations of elements of different embodiments as come within the scope of the following claims.
This is a nonprovisional application claiming the benefit of provisional application, 61/405,894, filed Oct. 22, 2010 under 35 U.S.C. 119(e), whose contents are incorporated by reference herein in their entirety. This application is also a divisional application of U.S. application Ser. No. 13/052,514, filed Mar. 21, 2011, the disclosure of which is incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
6167425 | Beckhoff et al. | Dec 2000 | A |
6178503 | Madden et al. | Jan 2001 | B1 |
6336120 | Noddings et al. | Jan 2002 | B1 |
6460136 | Krohmer et al. | Oct 2002 | B1 |
6691146 | Armstrong et al. | Feb 2004 | B1 |
7158154 | Kim et al. | Jan 2007 | B2 |
7328333 | Kawano et al. | Feb 2008 | B2 |
7376949 | Lowell et al. | May 2008 | B2 |
7424601 | Xu | Sep 2008 | B2 |
7424623 | Du et al. | Sep 2008 | B2 |
7461144 | Beloussov et al. | Dec 2008 | B1 |
7529921 | Stein et al. | May 2009 | B2 |
7536537 | Linn et al. | May 2009 | B2 |
7634770 | Roth et al. | Dec 2009 | B2 |
7636586 | Maaniitty et al. | Dec 2009 | B2 |
7689820 | Pierce et al. | Mar 2010 | B2 |
7783665 | Tormasov et al. | Aug 2010 | B1 |
8056081 | Mathur et al. | Nov 2011 | B2 |
8195624 | Yang | Jun 2012 | B2 |
8352733 | Mantere et al. | Jan 2013 | B2 |
8392498 | Wikars et al. | Mar 2013 | B2 |
8589952 | Crowley et al. | Nov 2013 | B2 |
8615589 | Ashiabor et al. | Dec 2013 | B1 |
8819705 | Reeves et al. | Aug 2014 | B2 |
8868899 | Galicia et al. | Oct 2014 | B2 |
8898443 | Reeves et al. | Nov 2014 | B2 |
20020151334 | Sharma et al. | Oct 2002 | A1 |
20030065738 | Yang et al. | Apr 2003 | A1 |
20030135771 | Cupps et al. | Jul 2003 | A1 |
20030204708 | Hulme et al. | Oct 2003 | A1 |
20030221087 | Nagasaka et al. | Nov 2003 | A1 |
20040039862 | Hunt et al. | Feb 2004 | A1 |
20040095388 | Rocchetti et al. | May 2004 | A1 |
20040207508 | Lin et al. | Oct 2004 | A1 |
20050108297 | Rollin et al. | May 2005 | A1 |
20050227692 | Kawashima et al. | Oct 2005 | A1 |
20050229188 | Schneider et al. | Oct 2005 | A1 |
20050246505 | McKenney et al. | Nov 2005 | A1 |
20060010314 | Xu et al. | Jan 2006 | A1 |
20060010446 | Desai et al. | Jan 2006 | A1 |
20060046706 | Lin et al. | Mar 2006 | A1 |
20060106958 | Khawand et al. | May 2006 | A1 |
20070050765 | Geisinger et al. | Mar 2007 | A1 |
20070135043 | Hayes et al. | Jun 2007 | A1 |
20070136402 | Grose et al. | Jun 2007 | A1 |
20070171921 | Wookey et al. | Jul 2007 | A1 |
20070266231 | Chua et al. | Nov 2007 | A1 |
20070283147 | Fried et al. | Dec 2007 | A1 |
20070288941 | Dunshea et al. | Dec 2007 | A1 |
20070294689 | Garney et al. | Dec 2007 | A1 |
20080100568 | Koch et al. | May 2008 | A1 |
20080168235 | Watson et al. | Jul 2008 | A1 |
20080307425 | Tripathi et al. | Dec 2008 | A1 |
20090031329 | Kim et al. | Jan 2009 | A1 |
20090037909 | Xu et al. | Feb 2009 | A1 |
20090063845 | Lin et al. | Mar 2009 | A1 |
20090064186 | Lin et al. | Mar 2009 | A1 |
20090080562 | Franson et al. | Mar 2009 | A1 |
20090089569 | Baribault et al. | Apr 2009 | A1 |
20090100425 | Russell et al. | Apr 2009 | A1 |
20090287571 | Fujioka et al. | Nov 2009 | A1 |
20090327917 | Aaron et al. | Dec 2009 | A1 |
20100031348 | Lam et al. | Feb 2010 | A1 |
20100082321 | Cherkasova et al. | Apr 2010 | A1 |
20100083248 | Wood et al. | Apr 2010 | A1 |
20100146513 | Song et al. | Jun 2010 | A1 |
20100211769 | Shankar et al. | Aug 2010 | A1 |
20110016299 | Galicia et al. | Jan 2011 | A1 |
20110016301 | Galicia et al. | Jan 2011 | A1 |
20110093691 | Galicia et al. | Apr 2011 | A1 |
20110093836 | Galicia et al. | Apr 2011 | A1 |
20110099403 | Miyata et al. | Apr 2011 | A1 |
20110119610 | Hackborn et al. | May 2011 | A1 |
20110126216 | Galicia et al. | May 2011 | A1 |
20110167421 | Soundararajan et al. | Jul 2011 | A1 |
20110283291 | Tobe et al. | Nov 2011 | A1 |
20120036450 | Canton et al. | Feb 2012 | A1 |
20120042159 | Liu et al. | Feb 2012 | A1 |
20120083264 | Ramasamy et al. | Apr 2012 | A1 |
20120084542 | Reeves et al. | Apr 2012 | A1 |
20120084791 | Benedek et al. | Apr 2012 | A1 |
20120102495 | Gangam et al. | Apr 2012 | A1 |
20120150970 | Peterson et al. | Jun 2012 | A1 |
20120173741 | Brittain et al. | Jul 2012 | A1 |
20120173986 | Jung et al. | Jul 2012 | A1 |
20120233611 | Voccio et al. | Sep 2012 | A1 |
20130111163 | Yang et al. | May 2013 | A1 |
20130198367 | Abraham et al. | Aug 2013 | A1 |
20130212283 | Wang et al. | Aug 2013 | A1 |
Number | Date | Country |
---|---|---|
101149685 | Mar 2008 | CN |
1467282 | Oct 2004 | EP |
2369959 | Jun 2002 | GB |
2009157802 | Jul 2009 | JP |
2007035611 | Mar 2007 | WO |
2009112896 | Sep 2009 | WO |
2009120598 | Oct 2009 | WO |
Entry |
---|
Patent Cooperation Treaty, International Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2011/051904, Apr. 4, 2012, 20 pages. |
Darcey, et al., “Introducing Android”, Aug. 10, 2009, Retrieved from Internet: URL:http://media.techtarget.com/searchMobileComputing/downloads/IntroducingAndroid.pdf, on Mar. 26, 2012, pp. 1-29. |
Zupeng, “MemoryUp Pro User Manual—Mobile RAM Booster for Android”, Apr. 29, 2009, Retrieved from the Internet: URL:http://www.emobistudio.com/download/memoryup android/MemoryUp%20Pro%20(Android%20Edition)%20USer%20Guide.pdf, retrieved on Mar. 26, 2012. |
mozillaZine: “Moving your profile folder”, http://web.archive.org/web/20100207172041/, http://kb.mozillazine.org/Moving—your—profile—folder, Jan. 29, 2010, retrieved from the Internet: URL:http://kb.mozillazine.org/Moving—your—profile—folder, retrieved on Dec. 1, 2015. |
Patent Cooperation Treaty, International Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2011/067737 (CS38280), Aug. 1, 2012, 16 Pages. |
Patent Cooperation Treaty, International Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2013/021370 (CS39204), Apr. 26, 2013, 11 pages. |
Ubuntu from Wikipedia; http://en.wikipedia.org/wiki/ubuntu, Jun. 5, 2009, p. 12. |
Ubuntu Mobile; http://en.wikipedia.org/wiki/ubuntu-mobile, Jun. 5, 2009, p. 2. |
“An Overview of Virtulization Techniques”, www.vitruatopia.com/index.php/AnOverview-of-Virtualization-Techniques, May 4, 2009, p. 4. |
“Kernel (computing) from Wikipedia”, http://en.wikipedia.org/wiki/Kernal, Jun. 5, 2009, p. 18. |
“The Xen Team—Users' manual Xen v2.0 for x86”, University of Cambridge, UK, Dec. 31, 2004, p. 56. |
Baentsch, et al., “Mote Runner: A Multi-Language Virtual Machine for Small Embedded Devices”, 2009 Third International Conference on Sensor Technologies and Applications, IEEE Piscataway, NJ, USA, 6118/2009, p. 10. |
Casadevall, et al., “AndroidExecutionEnvironment”, https://wiki.ubuntu.com/Specs/AndroidExecutionEnvironment, Apr. 28, 2009. |
Hassan, “Ubiquitous Computing and Android”, Third International Conference Digital Information Management 2008, IEEE, Piscataway, Nj, Usa, Nov. 13, 2008, p. 6. |
Turner, “Introducing Android 1.5 NDK, Release 1”, Jun. 25, 2009, p. 4. |
United States Patent and Trademark Office, Advisory Action Before the Filing of an Appeal Brief for U.S. Appl. No. 12/838,868, filed Oct. 21, 2013, p. 5. |
United States Patent and Trademark Office, Non-Final Office Action for U.S. Appl. No. 12/838,668, filed Oct. 9, 2013. |
Galicia, et al., “System and Method for Switching Between Environments in a Multi-Environment Operating System”, U.S. Appl. No. 12/839,069, filed Jul. 19, 2010. |
United States Patent and Trademark Office, Non-Final Office Action for U.S. Appl. No. 12/983,908, filed Dec. 4, 2013, p. 9. |
PCT Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2010/042523, Feb. 21, 2013, p. 12. |
United States Patent and Trademark Office, Non Final Rejection Office Action for U.S Appl. No. 12/838,868, filed Feb. 25, 2014, p. 9. |
United States Patent and Trademark Office, Non-Final Office Action for U.S. Appl. No. 12/838,984, filed Mar. 28, 2013, p. 16. |
PCT Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2012/020081, May 22, 2012, p. 10. |
United States Patent and Trademark Office, Final Rejection Office Action for U.S. Appl. No. 12/838,868, filed May 8, 2013, p. 10. |
PCT Search Report and Written Opinion of the International Search Authority for International Application No. PCT/US2010/042516, Jul. 11, 2011, p. 9. |
“Multi-Environment Operating System”, U.S. Appl. No. 12/838,868, filed Jul. 19, 2010, p. 28. |
“Multi-Environment Operating System”, U.S. Appl. No. 12/838,984, filed Jul. 19, 2010, p. 43. |
“Multi-Environment Operating System”, U.S. Appl. No. 12/839,193, filed Jul. 19, 2010, p. 48. |
“System and Method for Initiating a Multi-Environment Operating System”, U.S. Appl. No. 12/838,668, filed Jul. 19, 2010, p. 29. |
“PCT Invitation to Pay Additional Fees and, Where Applicable, Protest Fee”, International Application No. PCT/US2010/042526, Jun. 24, 2011, p. 7. |
The State Intellectual Property Office of the People's Republic of China, Notification of First Office Action Chinese Patent Application No. 201080032324.3, Dec. 26, 2013, p. 18. |
Number | Date | Country | |
---|---|---|---|
20150154053 A1 | Jun 2015 | US |
Number | Date | Country | |
---|---|---|---|
61405894 | Oct 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13052514 | Mar 2011 | US |
Child | 14617024 | US |