The present disclosure is related to copending U.S. patent application Ser. No. 13/462,523, filed on May 2, 2012, entitled, “METHOD AND APPARATUS FOR DISPLAYING DATA FROM A PLURALITY OF CONCURRENT OPERATING SYSTEM ENVIRONMENTS,” and U.S. patent application Ser. No. 13/462,529, filed on May 2, 2012, entitled, “METHOD AND APPARATUS FOR DISPLAYING ACTIVE OPERATING SYSTEM ENVIRONMENT DATA WITH A PLURALITY OF CONCURRENT OPERATING SYSTEM ENVIRONMENTS,” both of which are assigned to the same assignee as the present application, and both of which are hereby incorporated by reference herein.
The present disclosure relates generally to operating systems and operating system environments.
Various operating systems provide features and applications that are often specific to the given operating system. For this reason, it has become useful for computing devices, including handheld mobile devices, to be capable of running more than one operating system environment. By running more than one operating system environment on a device, users are able to access the features and applications associated with each of the operating system environments, thereby enhancing the capabilities and functions of the device.
In the past, virtualization techniques have been used to accomplish running multiple operating system environments; however such approaches require emulation of an entire machine which is resource intensive. Systems have now been developed that enable actual running of multiple operating system environments without the need for such resource intensive machine emulation. Such systems utilize a common kernel where the operating system environments may be considered middleware, in that, some services related to the various applications may be supported within the confines of the environment. Therefore, in these systems, the operating system environments co-exist independently, and do not require virtualization as in the past. Devices supporting these multiple environments therefore enable users to access and enjoy the features of the operating systems and their associated data such as applications.
Nevertheless, some demarcation between the operating system environments must exist for the purpose of presentation to the device user. The environments usually provide their own unique approach to how associated data is displayed by the operating system. In some cases, the user may be compelled to switch display views in order to work with one or another operating system environment. Being forced to switch views in this manner negatively impacts user experience because the work or operating contexts in which the user was engaged can be lost or muddled among the various views. Furthermore, any given operating system environment will not understand, and therefore will be incapable of interpreting, data associated with a different operating system environment and any associated data or working context.
The disclosed embodiments provide better interoperability between multiple operating system environments. The embodiments include providing contextual information about data from one operating system environment to another operating system environment. As a result, the user experience in working with multiple operating system environments is enhanced. For example, a user may download an application file for a first operating system environment, using a browser application of a second operating system environment. Unlike previous systems, the user can drag-and-drop the application file from the browser of the second operating system environment, to a desktop (home screen or wallpaper, etc.) of the first operating system environment. The first operating system environment obtains contextual data so that the application file can be installed in place, and/or launched, on the display portion associated with the first operating system environment.
The embodiments disclosed provide a method which includes providing data and contextual information for the data, to a first operating system environment by a second operating system environment. Both operating system environments utilize a common kernel. The data is associated with the first operating system environment which utilizes the data based on the contextual information. The method may include installing the data as an application file by the first operating system environment, where the first operating system environment is informed that the data is the application file by the contextual information. The method may include obtaining the data associated with the first operating system environment by the second operating system environment, by downloading the data via a browser application of the second operating system environment. The data may be an application file for an executable application, a widget, a video, or any other type of data file.
The method may include moving the data, in response to user interface input, from the second operating system environment to the first operating system environment and providing the contextual information for the data in response to moving the data. For example, the user may move an icon associated with the data, using drag-and-drop selection input, cut and paste selection input, etc.
The method may also include displaying, on a display, at least one application window associated with the second operating system environment, and at least one icon, representing the data, located within the at least one application window, the icon selectable by drag-and-drop selection input, and providing the data, and the contextual information for the data, to the first operating system environment in response to drag-and-drop selection input to drag-and-drop the icon from the at least one application window to a desktop of the first operating system environment.
The embodiments include an apparatus that has at least one programmable processor, and memory operatively coupled to the programmable processor. The memory contains executable instructions, that when executed cause the programmable processor to provide a first operating system environment and at least a second operating system environment, with both operating system environments utilizing a common kernel. The second operating system environment is operative to provide data and contextual information for the data, to the first operating system environment. The first operating system environment is operative to utilize the data based on the contextual information.
The first operating system environment is also operative to utilize the data by installing the data as an application file. The first operating system environment is informed by the contextual information, that the data is the application file.
The second operating system environment is operative to obtain the data associated with the first operating system environment by downloading the data via a browser application of the second operating system environment. The data may be moved between operating system environments, in response to user interface input, from the second operating system environment to the first operating system environment which also provides the contextual information for the data in response to moving the data. The data may be moved by, for example, drag-and-drop selection input to drag-and-drop an icon associated with the data.
The apparatus may include a display, operatively coupled to the at least one programmable processor. The display is operative to display at least one application window associated with the second operating system environment, and at least one icon, representing the data, located within the at least one application window, where the icon is selectable by drag-and-drop selection input. The programmable processor is further operative to provide the data, and the contextual information for the data, to the first operating system environment in response to drag-and-drop selection input to drag-and-drop the icon from the at least one application window to a desktop of the first operating system environment.
The embodiments also include a computer readable, non-volatile, non-transitory memory, storing executable instructions for execution by at least one processor, that when executed cause the at least one processor to perform the various methods and operations of the embodiments as described above.
Turning now to the drawings wherein like numerals represent like components,
The mobile device 101 may interact with a larger display 201 as shown in
The term “display” as used herein refers to a device that displays “display data” to form an image or images, such as, but not limited to, a picture, a computer desktop, a gaming background, a video, an application window etc. Examples of a display include a television, computer monitor, etc., or an integrated display as found in electronic devices such as a laptop computer, handheld computing device, mobile telephone, PDA, etc. The display device may employ any appropriate display technology, such as for example, a CRT, LCD flat panel, LED flat panel, plasma screen, etc.
The terms “screen,” “home screen,” and “workspace” are used interchangeably in reference to an “image” which refers generally to what is “displayed” on a display. That is, an image, including a “screen,” “home screen,” and/or “workspace” may be displayed on a display. Examples of images include, but are not limited to, a computer desktop (i.e. a background), a gaming background, a video, an application window, an icon, a widget, etc., including also the active or live wallpaper described herein. In other words, the term “image” may refer to a background, or may refer individually, or collectively, to elements or objects in the foreground, of hovering over, a background image such as the live wallpaper. The term “display data” is used interchangeably herein with the term “image data” and refers to the information (data, or digital information) that the display interprets and/or decodes to show (i.e. to display) the user an image such as a workspace or home screen, as well as any associated elements or objects in the foreground of home screens or workspaces, or the live wallpaper, etc.
The term “data” as used herein, and in contrast to “display data,” may refer to files (i.e. data files) such as executable application files, widgets, video files, documents, photographs, etc. without limitation, or to text data, such as, for example, words copied and pasted from a document.
In the example of
As mentioned briefly above, the mobile device 101 first operating system environment may provide various “home screens” that enable the user to organize application icons 107 and widgets 109. In other words, various icons and widgets may be distributed between various home screens. The background image, i.e. live wallpaper 105 as shown in
The home screens of the first operating system environment may be mapped to workspaces of the second operating system environment. In this example, the live wallpaper 203, as illustrated generally by the dotted line within the perimeter of the display 201, may show a home screen of the first operating system environment. In this example, only the icons 211 and widgets 207, 209 that the user associated with the displayed home screen would be displayed. Likewise, the windows 213 and 215 may be associated with a workspace of the second operating system, and that workspace may be mapped with the given home screen. In this case, only windows for the given workspace would be shown, along with image objects for the mapped home screen. That is, the combined display may show only those image objects which the user associated with the mapped workspace/home screen. The user may switch (i.e. toggle), or scroll, away from one workspace/home screen, and back again to, for example, the workspace/home screen of the combined image shown in
The various embodiments are best understood with reference to
In accordance with the embodiments, the application window 307 may be a browser application window, associated with the second operating system environment. Accordingly, the user may download data, such as a widget 317, using the browser application. The widget 317 in the example of
Examples of contextual information include, but are not limited to, location on the display screen where data is dropped (such as by a drag-and-drop operation), a file extension, meta data, etc. In other words, contextual information provides information related to data (such as text, a file, etc.) to an operating system environment, such that the operating system environment is enabled to take appropriate action related to the data. In the clock widget 319 example discussed above, the second operating system environment may provide to the first operating system environment, as the contextual information, the “.apk” file extension, a pixel location on the desktop where the file is dropped, file meta data, and/or other information to the first operating system environment. Because a “.apk” file extension is a file type associated with the first operating system environment, the first operating system environment will accordingly treat the data provided by the second operating system environment as an installable “.apk” file. Additionally, the first operating system environment, or more specifically, the operating system environment that receives the data, may also read and interpret any other received contextual information such as metadata to determine what to do with the data. As mentioned above, the operating system environment that receives the data and contextual information may receive a pixel location on the display screen where the data is dropped. The receiving operating system environment may interpret the pixel location and determine that the data has been dropped on the desktop. By also having the contextual information informing the receiving operating system environment that the file is a “.apk” file, the receiving operating system environment will accordingly install the “.apk” file in place on the desktop as a widget.
Additionally, in some embodiments a receiving operating system environment may obtain the contextual information based on the activity or action that occurs between the receiving operating system environment and the sending operating system environment. For example, text that is pasted to the desktop of the receiving operating system environment may be immediately interpreted as a request to perform a search based on the text. In another example, digits cut and pasted from one operating system environment to a dialer application of a receiving operating system environment may immediately be interpreted as a request to dial the digits to establish a phone call or to send a fax. Various other examples, in accordance with the embodiments, may be envisioned by those of ordinary skill based on the description provided above.
Among the advantages of the embodiment illustrated by
In accordance with the embodiments, the programmable processor 403 may run various operating system environments 407, such as operating system environment 1, operating system 2 environment, and so on through an N-th operating system environment. In other words, the programmable processor 403 is operative to run one or more of the various operating system environments 407, concurrently. The plurality of operating system environments 407 are each completely autonomous and can exist and function independently from one another. One or more of the operating system environments may be run concurrently, and each operating system environment utilizes a common kernel 405. In other words, each one of the operating system environments is completely autonomous and may exist and function completely independently, without any of the other operating system environments being executed. The operating system environments provide “environments,” in that, for example, all necessary libraries, toolkits, windowing, etc., is present within the environment to enable an application associated with the operating system environment to function. The common kernel 405 provides fundamental interaction at the hardware level of mobile device 401. For example, the common kernel 405 may provide required operating system tasks such as program loading, system resource allocation, handling device input and output, and some memory management functions. The common kernel 405 may be created as an object-oriented design that can interface, and enable communication with, programming objects within the various operating system environments 407.
Examples of operating system environments include, but are not limited to, Android™, Ubuntu®, other Linux® based operating systems, etc. In one example embodiment, the mobile device 401 may be connected to the peripheral device 427 by way of a docking port that provides the communication bus 429. In this example, the mobile device 401 display data may be shown on display 425 which may be larger in dimensions than the integrated display 421.
The apparatus 400 may include multi-environment display data handling logic 409. The multi-environment display data handling logic 409 may be contained within one or more of the various operating system environments 407. The multi-environment display data handling logic 409 may also exist independently from any of the operating system environments in some embodiments. However, for the example embodiment illustrated in
In accordance with the embodiments, one or more of the plurality of operating system environments 407 include interoperability logic 408. The interoperability logic 408 facilitates the communication of contextual information between the various operating system environments 407. For example the first operating environment may pass contextual information 410 to the second operating system environment or, vice versa, the first operating system environment may receive contextual information 410 from the second operating system environment. In some embodiments, the multi-environment display data handling logic 409 and/or the interoperability logic 408 may be object oriented software or firmware that is executed by processor 403 only when more than one operating system environment is executed by the processor 403.
The term “logic” as used herein may include software and/or firmware executing on one or more programmable processors (including CPUs and/or GPUs), and may also include ASICs, DSPs, hardwired circuitry (logic circuitry), or combinations thereof. For the example embodiment illustrated by
Although the example provided by
As mentioned briefly above, in some embodiments, the apparatus 400 may include the peripheral device 427 which may further have a docking station, such that the mobile device 401 may be docked within the peripheral device 427 and obtain the benefit of the larger display 425 as well as other possible peripheral functions. One example of such an apparatus is the Motorola Lapdock™ product.
Although the communication bus 429, which may be any appropriate interface, is shown connected directly to the larger display 425, it is to be understood that various other hardware and components may exist in the peripheral device intervening between the hardware 419 and the display 425. In other words,
In some embodiments, the interoperability logic 408 may operate at an application service level of the various operating system environments to pass contextual information between the environments. In some cases, providing contextual information may involve extracting and providing file metadata, file extensions, pixel location information, and/or other contextual information, to the operating system environment to cause the receiving operating system environment to make an association of the received data, or data file, with the correct file type. In other words, the interoperability logic 408 informs the receiving operating system environment of the correct file type, or other data type, so that it uses the correct associated application, if appropriate, to for example, open a file. In one example, a document file may be drag-and-dropped from the second operating system environment to the first operating system environment. The first operating system environment will launch an application, for example, “quick office,” and open the document. In another example, the user may highlight text in the second operating system environment and drag-and-drop the text into a search bar widget of the first operating system environment. The first operating system environment would correctly interpret the text as a search request for the text. This interoperability provides the advantage of a more seamless operation for the user employing multiple operating system environments.
In one example embodiment, the first operating system environment may be an Android™ operating system environment and the second operating system environment maybe a Linux® based operating system environment. However, any of various operating system environments may be used, that operate with a common kernel in accordance with the embodiments.
In
Among other advantages of various embodiments disclosed herein, the user experience is enhanced when accessing application data or other data using one or more operating system environments. Using the embodiments, such data may be passed from one operating system environment to another, and be understood by the receiving operating system environment. Although the embodiments have been described using examples related to two operating system environments, the various embodiments are not limited to only two operating system environments and can incorporate many operating system environments as illustrated by the plurality of operating system environments 407 shown in
The various embodiments also include computer readable memory that may contain executable instructions, for execution by at least one processor, that when executed, cause the at least one processor to operate in accordance with the interoperability logic 408 functionality herein described. The computer readable memory may be any suitable non-volatile, non-transitory, memory such as, but not limited to, programmable chips such as EEPROMS, flash ROM (thumb drives), compact discs (CDs) digital video disks (DVDs), etc., that may be used to load executable instructions or program code to other processing devices or electronic devices such as those that may benefit from the features of the herein described embodiments. The executable instructions may also include the various operating system environments and the common kernel.
While various embodiments have been illustrated and described, it is to be understood that the invention is not so limited. Numerous modifications, changes, variations, substitutions and equivalents will occur to those skilled in the art without departing from the scope of the present invention as defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5119494 | Garman | Jun 1992 | A |
5446904 | Belt et al. | Aug 1995 | A |
5592657 | Johnson et al. | Jan 1997 | A |
5757371 | Oran et al. | May 1998 | A |
5828376 | Solimene et al. | Oct 1998 | A |
6043816 | Williams et al. | Mar 2000 | A |
6133915 | Arcuri et al. | Oct 2000 | A |
6167425 | Beckhoff | Dec 2000 | A |
6170045 | Bobak et al. | Jan 2001 | B1 |
6178503 | Madden et al. | Jan 2001 | B1 |
6205452 | Warmus et al. | Mar 2001 | B1 |
6215490 | Kaply | Apr 2001 | B1 |
6336120 | Noddings et al. | Jan 2002 | B1 |
6336146 | Burridge et al. | Jan 2002 | B1 |
6338149 | Ciccone, Jr. et al. | Jan 2002 | B1 |
6460136 | Krohmer et al. | Oct 2002 | B1 |
6571282 | Bowman-Amuah | May 2003 | B1 |
6691146 | Armstrong et al. | Feb 2004 | B1 |
6710788 | Freach et al. | Mar 2004 | B1 |
6757002 | Oross et al. | Jun 2004 | B1 |
6763458 | Watanabe et al. | Jul 2004 | B1 |
7114104 | Bennett | Sep 2006 | B1 |
7328333 | Kawano et al. | Feb 2008 | B2 |
7363128 | Dietsch et al. | Apr 2008 | B2 |
7424601 | Xu | Sep 2008 | B2 |
7424623 | Du et al. | Sep 2008 | B2 |
7461144 | Beloussov | Dec 2008 | B1 |
7468729 | Levinson | Dec 2008 | B1 |
7523738 | Ruiz | Apr 2009 | B2 |
7529921 | Stein et al. | May 2009 | B2 |
7533101 | Bond et al. | May 2009 | B2 |
7536537 | Linn | May 2009 | B2 |
7590945 | Sims et al. | Sep 2009 | B2 |
7595810 | Louch | Sep 2009 | B2 |
7634770 | Roth | Dec 2009 | B2 |
7636586 | Maaniitty | Dec 2009 | B2 |
7681134 | Grechishkin et al. | Mar 2010 | B1 |
7689820 | Pierce et al. | Mar 2010 | B2 |
7783665 | Tormasov et al. | Aug 2010 | B1 |
7882274 | Peterson | Feb 2011 | B2 |
7975236 | Grechishkin et al. | Jul 2011 | B1 |
8046570 | King et al. | Oct 2011 | B2 |
8177554 | Krasner | May 2012 | B2 |
8195624 | Yang | Jun 2012 | B2 |
8261231 | Hirsch et al. | Sep 2012 | B1 |
8307177 | Prahlad et al. | Nov 2012 | B2 |
8352733 | Mantere et al. | Jan 2013 | B2 |
8392498 | Berg et al. | Mar 2013 | B2 |
8396807 | Yemini et al. | Mar 2013 | B1 |
8448251 | Harris et al. | May 2013 | B2 |
8589952 | Wong et al. | Nov 2013 | B2 |
8661360 | Jeong et al. | Feb 2014 | B2 |
8868899 | Galicia et al. | Oct 2014 | B2 |
8957905 | Reeves et al. | Feb 2015 | B2 |
8983536 | Gangam et al. | Mar 2015 | B2 |
20010035882 | Stoakley et al. | Nov 2001 | A1 |
20020078260 | Hart et al. | Jun 2002 | A1 |
20020140742 | Lection et al. | Oct 2002 | A1 |
20020151334 | Sharma | Oct 2002 | A1 |
20020157001 | Huang 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 | Nov 2003 | A1 |
20040015966 | MacChiano et al. | Jan 2004 | A1 |
20040039950 | Okamoto et al. | Feb 2004 | A1 |
20040061723 | Tai et al. | Apr 2004 | A1 |
20040066414 | Czerwinski et al. | Apr 2004 | A1 |
20040095388 | Rocchetti et al. | May 2004 | A1 |
20040111644 | Saunders et al. | Jun 2004 | A1 |
20040148375 | Levett et al. | Jul 2004 | A1 |
20040205755 | Lescouet et al. | Oct 2004 | A1 |
20040207508 | Lin et al. | Oct 2004 | A1 |
20050086650 | Yates et al. | Apr 2005 | A1 |
20050108297 | Rollin et al. | May 2005 | A1 |
20050125739 | Thompson et al. | Jun 2005 | A1 |
20050229188 | Schneider | Oct 2005 | A1 |
20050240756 | Mayer | Oct 2005 | A1 |
20050240763 | Bhat et al. | Oct 2005 | A9 |
20050246505 | McKenney et al. | Nov 2005 | A1 |
20050268078 | Zimmer et al. | Dec 2005 | A1 |
20060005187 | Neil | Jan 2006 | A1 |
20060010314 | Xu | Jan 2006 | A1 |
20060010446 | Desai et al. | Jan 2006 | A1 |
20060026274 | Cho et al. | Feb 2006 | A1 |
20060046706 | Lin et al. | Mar 2006 | A1 |
20060146057 | Blythe | Jul 2006 | A1 |
20060224989 | Pettiross et al. | Oct 2006 | A1 |
20060225107 | Seetharaman et al. | Oct 2006 | A1 |
20060253706 | Roberts et al. | Nov 2006 | A1 |
20070050765 | Geisinger | Mar 2007 | A1 |
20070128899 | Mayer | Jun 2007 | A1 |
20070135043 | Hayes et al. | Jun 2007 | A1 |
20070150842 | Chaudhri et al. | Jun 2007 | A1 |
20070162298 | Melton et al. | Jul 2007 | A1 |
20070180398 | McArdle | Aug 2007 | A1 |
20070192329 | Croft et al. | Aug 2007 | A1 |
20070198656 | Mazzaferri et al. | Aug 2007 | A1 |
20070226647 | Louch | Sep 2007 | A1 |
20070266231 | Chua | Nov 2007 | A1 |
20070283147 | Fried et al. | Dec 2007 | A1 |
20070288941 | Dunshea et al. | Dec 2007 | A1 |
20070294689 | Garney | Dec 2007 | A1 |
20080028326 | Wilson et al. | Jan 2008 | A1 |
20080034318 | Louch et al. | Feb 2008 | A1 |
20080082815 | Kawano et al. | Apr 2008 | A1 |
20080100568 | Koch et al. | May 2008 | A1 |
20080114844 | Sanchez et al. | May 2008 | A1 |
20080162983 | Baba et al. | Jul 2008 | A1 |
20080256468 | Peters et al. | Oct 2008 | A1 |
20080270910 | Lukasik et al. | Oct 2008 | A1 |
20080276195 | Moromisato et al. | Nov 2008 | A1 |
20080282205 | Dykstra-Erickson et al. | Nov 2008 | A1 |
20080307350 | Sabatelli et al. | Dec 2008 | A1 |
20080307360 | Chaudhri et al. | Dec 2008 | A1 |
20090031329 | Kim | Jan 2009 | A1 |
20090037909 | Xu | Feb 2009 | A1 |
20090063845 | Lin | Mar 2009 | A1 |
20090064186 | Lin | Mar 2009 | A1 |
20090080562 | Franson | Mar 2009 | A1 |
20090089569 | Baribault et al. | Apr 2009 | A1 |
20090158299 | Carter | Jun 2009 | A1 |
20090193074 | Lee | Jul 2009 | A1 |
20090199122 | Deutsch et al. | Aug 2009 | A1 |
20090199219 | Rofougaran et al. | Aug 2009 | A1 |
20090235200 | Deutsch et al. | Sep 2009 | A1 |
20090241072 | Chaudhri et al. | Sep 2009 | A1 |
20090276771 | Nickolov et al. | Nov 2009 | A1 |
20090287571 | Fujioka | Nov 2009 | A1 |
20090327917 | Aaron et al. | Dec 2009 | A1 |
20090328033 | Kohavi et al. | Dec 2009 | A1 |
20100064251 | Hufnagel et al. | Mar 2010 | A1 |
20100077347 | Kirtane et al. | Mar 2010 | A1 |
20100097386 | Kim et al. | Apr 2010 | A1 |
20100107115 | Sareen et al. | Apr 2010 | A1 |
20100138515 | Ruiz-Velasco et al. | Jun 2010 | A1 |
20100192149 | Lathrop et al. | Jul 2010 | A1 |
20100211769 | Shankar et al. | Aug 2010 | A1 |
20100217912 | Rofougaran et al. | Aug 2010 | A1 |
20100245037 | Davis et al. | Sep 2010 | A1 |
20100313156 | Louch et al. | Dec 2010 | A1 |
20100313165 | Louch et al. | Dec 2010 | A1 |
20100319008 | Ho | Dec 2010 | A1 |
20100333088 | Rogel et al. | Dec 2010 | A1 |
20100333100 | Miyazaki et al. | Dec 2010 | A1 |
20110016299 | Galicia et al. | Jan 2011 | A1 |
20110016301 | Galicia et al. | Jan 2011 | A1 |
20110022993 | Ohno et al. | Jan 2011 | A1 |
20110054879 | Bogsanyl et al. | Mar 2011 | A1 |
20110055602 | Kamay et al. | Mar 2011 | A1 |
20110066984 | Li | Mar 2011 | A1 |
20110093691 | Galicia et al. | Apr 2011 | A1 |
20110093836 | Galicia et al. | Apr 2011 | A1 |
20110119610 | Hackborn et al. | May 2011 | A1 |
20110126216 | Galicia et al. | May 2011 | A1 |
20110138295 | Momchilov et al. | Jun 2011 | A1 |
20110138314 | Mir et al. | Jun 2011 | A1 |
20110144970 | Jiang et al. | Jun 2011 | A1 |
20110179387 | Shaffer et al. | Jul 2011 | A1 |
20110246786 | Laor et al. | Oct 2011 | A1 |
20120036450 | Canton | Feb 2012 | A1 |
20120041570 | Jones et al. | Feb 2012 | A1 |
20120042159 | Liu | Feb 2012 | A1 |
20120081353 | Yusupov et al. | Apr 2012 | A1 |
20120081380 | Reeves 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 |
20120151372 | Kominac et al. | Jun 2012 | A1 |
20120173741 | Brittain | Jul 2012 | A1 |
20120173986 | Jung | Jul 2012 | A1 |
20120174021 | Dharawat | Jul 2012 | A1 |
20120192100 | Wang et al. | Jul 2012 | A1 |
20120227058 | Hunt et al. | Sep 2012 | A1 |
20120278747 | Abraham et al. | Nov 2012 | A1 |
20120278750 | Abraham et al. | Nov 2012 | A1 |
20120304092 | Jarrett et al. | Nov 2012 | A1 |
20130160013 | Pires et al. | Jun 2013 | A1 |
20130212283 | Wang et al. | Aug 2013 | A1 |
20130293573 | Wolfe | Nov 2013 | A1 |
20130298140 | Wolfe | Nov 2013 | A1 |
20130311682 | Barat et al. | Nov 2013 | A1 |
Number | Date | Country |
---|---|---|
101025701 | Aug 2007 | CN |
101051282 | Oct 2007 | CN |
101149685 | Mar 2008 | CN |
101203842 | Jun 2008 | CN |
101382833 | Mar 2009 | CN |
101615123 | Dec 2009 | CN |
101697181 | Apr 2010 | CN |
157783 | Oct 1985 | EP |
1059582 | Dec 2000 | EP |
1688816 | Aug 2006 | EP |
2369959 | Jun 2002 | GB |
H 07-121336 | May 1995 | JP |
2005-242445 | Sep 2005 | JP |
2007-034600 | Feb 2007 | JP |
2009-157802 | Jul 2009 | JP |
2005136419 | May 2007 | RU |
2331160 | Aug 2008 | RU |
WO-03027876 | Apr 2003 | WO |
WO-2005043862 | May 2005 | WO |
WO-2007035611 | Mar 2007 | WO |
WO-2010148306 | Dec 2010 | WO |
2011060382 | May 2011 | WO |
WO-2012012865 | Feb 2012 | WO |
WO-2012148881 | Nov 2012 | WO |
WO-2012148885 | Nov 2012 | WO |
Entry |
---|
Nekhelesh Ramananthan; Ubuntu for Android: The Complete Story; Feb. 2012; http://www.muktware.com/2012/02/ubuntu-for-android-the-complete-story/2253; 5 pages. |
Android Central Forums; Getting Started with Android—Tips and Tricks; Sep. 2010; http://forums.androidcentral.com/general-help-how/31622-getting-started-android-tips-tricks.html; excerpted 41 pages. |
Ryan Whitwam; Everything You Need to Know About Ubuntu for Android; Feb. 22, 2012; http://www.tested.com/tech/android/3627-everything-you-need-to-know-about-ubuntu-for-android/; 5 pages. |
Bob Dormon; Motorola Atrix Lapdock; Aug. 19, 2011; http://www.theregister.co.uk/Print/2011/08/19/accessory—of—the—week—motorola—atrix—lapdock/; 8 pages. |
Webtop Application; archived Apr. 29, 2011; 6 pages. |
Parallels: Parallels Workstation, http://www.parallels.com/products/workstation/, (downloaded Dec. 28, 2012), all pages. |
The Sun Babefish Blog, “Why Apple Spaces is Broken”, Nov. 8, 2007, 24 pages, blogs.oracle.com/bblfish/entry/why—apple—spaces—is—broken. |
Ryan Paul: Canonical developers aim to make Android apps run on Ubuntu, http://arstechnica.com/gadgets/2009/05/canonical-developers-aim-to-make-android-apps-run-on-ubuntu/, May 26, 2009, all pages. |
Casadevall, et al., “Android Execution Environment,” retrieved from <https://wiki.ubuntu.com/Specs/AndroidExecutionEnvironment>, Apr. 28, 2009, 5 pages. |
Codecoffee, “How to compile & execute C programs under Linux (Absolute basics),” Oct. 2009, retrieved from http://www.codecoffee.com/tipsforlinux/articles/18.html. |
Maker, “A Survey on Android vs Linux,” University of California 2009, pp. 1-10. |
Meier “Professional Android 2 Application Development,” Aug. 2010, retrieved from http://esys.ir/files/ref—books/android/esys.ir—professional%20android%202%20application%20development.pdf. |
Wikipedia “Comparison of X Window System desktop environment,” Jan. 2009, retrieved from http://en.wikipedia.org/wiki/Comparison—of—X—Window—System—desktop—environments. |
Wikipedia “GNU C Library,” Nov. 2009, retrieved from http://en.wikipedia.org/wiki/GNU—C Library 4 pages. |
Wikipedia “POSIX,” Apr. 2009, retrieved from http://en.wikipedia.org/wiki/POSIX, 5 pages. |
Wikipedia “Taskbar” retrieved from http://en.wikipedia.org/wiki/Taskbar dated Feb. 24, 2010; 7 pages. |
Wikipedia “X Window System,” Jan. 2009, retrieved from http://en.wikipedia.org/wiki/X—window—system, 11 pages. |
Martin: iTunes 9.0.2 Improves App Sorting, http://reviews.cnet.com/8301-19512—7-10387022-233.html?tag=contentMain;contentBody;1n, Oct. 2009, 5 pages. |
Herrman: VMWare for Mobile Devices Lets yuou Run Windows and Android Simultaneously, http://gizmodo.com/5160685/vmware-for-mobile-devices-lets-you-run-windows-and-android-simultaneously/all, Feb. 2009, 2 pages. |
An Overview of Virtulization Techniques, Jun. 4, 2009 www.virtuatopia.com/index.pjp/AnOverview—of—Virtualization—Techniques, 4 pages. |
Baentsch, “Mote Runner: a Mu,ti-Language Virtual Machine for Small Embedded Devices,” 2009 3rd International Conference on Sensor Technologies and Applications, IEEE 10 pages. |
Citrix: Go ToAssist Corporate Remote Support Made Easy, www.gotoassist.com, Fact Sheet, 10.8.10/B-27141/PDF, 2010, Citrix Online LLC. |
Citrix: Go ToAssist Corporate Remote Support Made Easy, www.gotoassist.com, Product Overview, 4.21.10/B-26651/PDF, 2010, Citrix Online LLC. |
Citrix: Go ToAssist Express Remote Support Made Easy, www.gotoassist.com, Fact Sheet, 9.27.10/B-21307/PDF, 2010, Citrix Online LLC. |
D'Sa, “Run Android apps on Windows,” Nov. 2011, http://tech2.in.com/how-to/apps/run-android-apps-on-windows/259042. |
EGL 1.0 Specification, published Jul. 23, 2003. |
Getting Started with VMware Fusion for Mac OS X, VMware, item EN-000189-00, copyright 2007-2009, VMware, Inc. |
Hassan, “Ubiquitous Computing and Android” 3rd International Conference Digital Information Management 2008, IEEE 6 pages. |
Kernel (computing) from Wikipedia http://en.wikipedia.org/wiki/Kernal—(computer—science); 18 pages, printed Jun. 5, 2009. |
Kobie, “Vmware demos mobile virtualisation,” Feb. 2009, http://itpro.co.uk/609992/vmware-demos-mobile-virtualisation. |
Nakajima, et al., “Composition Kernel: A multicore Processor Virtualization Layer for Rich Functional Smart Products,” Software Technologies for Embedded and Ubiquitous Systems, Oct. 2010, pp. 227-238. |
Payne, et al. “Lares: An Architecture for Secure Active Monitoring Using Virtualization,” IEEE Symposium on Security and Privacy, May 2008, pp. 233-247. |
Payne, et al. “Secure and Flexible Monitoring of Virtual Machines,” Computer Security Applications Conference, Dec. 2007, pp. 385-397. |
Richardson, et al., “Virtual Network Computing,” IEEE Internet Computing, IEEE Service Center, Jan. 1998, vol. 2, No. 1, pp. 33-38. |
The Xen Team: “Users' manual Xen v 2.0 for x86” University of Cambridge, UK Dec. 31, 2004 56 pages. |
Tubbs, “Windows Live Mesh 2011 and SkyDrive Synced Storage woven together nicely; still a few loose threads,” posted Oct. 29, 2010, http://www.wysiwygmedia.com/reviews/ windows-live-mesh-2011-and-skydrive-synced-storage-woven-together-nicely-still-a-few-loose-threads.wm. |
Turner, “Introducing Android 1.5 NDK, Release 1” Jun. 25, 2009 4 pages. |
Ubuntu from Wikipedia http://en.wikipedia.org/wiki/ubuntu; 12 pages, printed Jun. 5, 2009. |
“Ubuntu Linux Rocks!!” published Nov. 15, 2009, http://maxtheitpro.com/ubuntu-linux-rocks. |
Ubuntu Mobile from Wikipedia http://en.wikipedia.org/wiki/ubuntu—mobile; 2 pages, printed Jun. 5, 2009. |
Vmware: VMware Workstation 7 Product FAQs, downloaded Apr. 18, 2011. |
VMware Workstation 7, the Gold Standard in Desktop Virtualization, Product Datasheet, 2009, www.vmware.com. |
Windows Live Mesh, Windows Live, 2011, Microsoft. |
Gelchlik, “How to Lock Your Fcomputer with Bluetooth Proximity Lock Utility,” Apr. 2010, http://www.makeuseof.com/tag/lock-windows-computer-bluetooth-proximity-lock-utility/. |
Mac OS X Hints, “Lock and unlock a Mac using Bluetooth detection,” Dec. 2009, http://hints.macworld.com/article.php?story=20091221173111783. |
Ubuntu forums, “Howto: Use BlueProximity and your cellphone for security,” Feb. 2008, http://ubuntuforums.org/showthread.php?t=702372. |
Number | Date | Country | |
---|---|---|---|
20130298141 A1 | Nov 2013 | US |