(12) United States Patent (10) Patent No.: US 9,444,912 B1 Chen Et Al
Total Page:16
File Type:pdf, Size:1020Kb
USOO9444912B1 (12) United States Patent (10) Patent No.: US 9,444,912 B1 Chen et al. (45) Date of Patent: Sep. 13, 2016 (54) VIRTUAL MOBILE INFRASTRUCTURE FOR $295 R 1239. Real et al. MOBILE DEVICES 7,191,211W - - B2 3, 2007 Tuliurnidge (71) Applicant: Trend Micro Incorporated, Tokyo (JP) 22:32 1939, All 7,634,811 B1 12/2009 Kienzle et al. (72) Inventors: Gen Chen, Nanjing (CN); Yaozhou 7,735,138 B2 6/2010 Zhao Xu, Nanjing (CN); Kan Dong, Nanjing 8,023,974 B1 23: 2. et al (CN); Zhengyu Li, Nanjing (CN) 933. R. 384 (tal 2001/0054.062 A1 12/2001 Ismael et al. (73) Assignee: Trend Micro Incorporated, Tokyo (JP) 2002/0129281 A1 9, 2002 Hatfalvi et al. 2003/0041106 A1 2, 2003 Tuli (*) Notice: Subject to any disclaimer, the term of this (Continued) patent is extended or adjusted under 35 U.S.C. 154(b) by 732 days. FOREIGN PATENT DOCUMENTS (21) Appl. No.: 13/899,211 EP 1316 873 4/2003 EP 1377 892 9, 2004 (22) Filed: May 21, 2013 (Continued) (51) Int. Cl. OTHER PUBLICATIONS G06F 5/16 (2006.01) & 8 -- H04L 29/06 (2006.01) Hadeel Tariq Al-Rayes, Studying Main Differences between (52) U.S. Cl. Android & Linux Operating Systems', Oct. 2012, pp. 46-49, vol. CPC ..................................... H04L 67/42 (2013.01) i.imational Journal of Electrical & Computer Sciences (58) Field of Classification Search Sc - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Ho! Primary Examiner — Arvin Eskandarnia See application. file. for. .complete . .search . history. LLP(74) Attorney, Agent, or Firm — Okamoto & Benedicto (56) References Cited (57) ABSTRACT U.S. PATENT DOCUMENTS A virtual mobile infrastructure for mobile devices includes 6,091,412 A 7/2000 Simonoff et al. mobile client devices and a server computer running remote 6,356,931 B2 3, 2002 Ismael et al. mobile operating systems. The remote mobile operating 6,401,134 B1 6, 2002 Razavi et al. systems share the same kernel, and are each implemented on 6,433,794 B1 8, 2002 Beadle et al. a container. A mobile client device running a mobile oper 6,492.995 B1 12/2002 Atkin et al. ating system, which may be the same as or different from the 6,647,544 B1 11/2003 Ryman et al. 6,757,895 B1 6, 2004 Beadle et al. remote mobile operating systems, may access one of the 6,799,195 B1 9, 2004. Thibault et al. many remote mobile operating systems on the server com 6,842,777 B1 1, 2005 Tuli puter. 6,842,897 B1 1/2005 Beadle et al. 6,941,552 B1 9, 2005 Beadle et al. 14 Claims, 12 Drawing Sheets f(22 \ f(22 PROCESSOR USERINPUT DATA DISPLAY DEVICES STORAGE MONITOR COMMUNICATIONS INTERFACE SOFTWARE MODULES US 9,444.912 B1 Page 2 (56) References Cited 2013,01794.03 A1* 7, 2013 Kim .................... G06F 11,1458 707,654 U.S. PATENT DOCUMENTS 2014/0201328 A1* 7, 2014 Zhao ..................... HO4W 4f003 TO9,219 2004/014.8608 A1 7/2004 Gendreau et al. 2014/0201366 A1* 7/2014 Kamp ................... HO4W 12/06 2004/0158830 A1 8/2004 Chung et al. 709,225 2004/0230643 A1 11/2004 Thibault et al. 2005, 0188361 A1 8, 2005 Cai et al. 2005/0198485 A1 9/2005 Nguyen et al. FOREIGN PATENT DOCUMENTS 2005/0246176 A1 11/2005 Creamer et al. 2006/01 12342 A1 5/2006 Bantz et al. WO O2/084459 10, 2002 2007/0079244 A1 4/2007 Brugiolo WO O3,O17068 2, 2003 2007/0199058 A1 8/2007 Baumgart et al. WO 2005066786 7/2005 2011 O167474 A1 7, 2011 Sinha 2012/008.4481 A1* 4/2012 Reeves ................... G06F 13/14 T10/304 * cited by examiner U.S. Patent Sep. 13, 2016 Sheet 1 of 12 US 9,444.912 B1 7/77 f(22 f(26 7(22. USER INPUT DATA DISPLAY PROCESSOR DEVICES STORAGE MONITOR COMMUNICATIONS INTERFACE SOFTWARE MODULES A/G / U.S. Patent Sep. 13, 2016 Sheet 2 of 12 US 9,444.912 B1 2739// |NEHTOETIEJOW SE|O||ABC1 U.S. Patent Sep. 13, 2016 Sheet 3 of 12 US 9,444.912 B1 –\EXEld|LIQWHEARIQQIQ&QNV__—|l–– — U.S. Patent Sep. 13, 2016 Sheet 4 of 12 US 9,444.912 B1 JeSMOJE MODUM J06eue.W JeAJG1eleuueO C:D U.S. Patent Sep. 13, 2016 Sheet 6 of 12 US 9,444.912 B1 REMOTE ANDROID 222 222 225 APP APP APP DALVIK VM ANDROID SYSTEM (X86) 222 DEVICE EMULATOR INPUT SCREEN SENSOR : 277t--- 273 L --- y22 26.7 267 267 262 F- l 2A3 DALVIK VMADNDROID SYSTEM (ARM) SENSOR SERVICE 26% LINUXKERNE AVG 6 U.S. Patent Sep. 13, 2016 Sheet 7 of 12 US 9.444.912 B1 202/career 277 DEVICE severcours 262 25/2 24 REMOTE CLIENT LOGIN SERVER ANDROD AUTHENTICATION 27/ LOGN START 25 START 252 + TOKEN KEY TOKEN. AUTHENTICATION 24 ACCESS + TOKEN ALLOW AVG 7 U.S. Patent Sep. 13, 2016 Sheet 9 of 12 US 9,444.912 B1 S 1 s S s U.S. Patent Sep. 13, 2016 Sheet 10 of 12 US 9,444.912 B1 LOCAL REMOTE weryoop DRD 2-cvban ELES U.S. Patent Sep. 13, 2016 Sheet 11 of 12 US 9,444.912 B1 LOCAL REMOTE 562 a2-cvenmi O, .a AVG /OC 36/ LOCAL REMOTE awlertyulop 362 Gwenytop agg asdfghDRD ge 2XCV9m3 sevenmi O, a AVG /O/O U.S. Patent Sep. 13, 2016 Sheet 12 of 12 US 9,444.912 B1 LOCAL REMOTE 524 9 input text G. 9Input text Google search results:... Google search results: ... wery.utop assign 363 -122BevBama 123 - - AVG /OA REMOTE 9 input text (a 9 input text a Google search results: ... Google search results: ... US 9,444,912 B1 1. 2 VIRTUAL MOBILE INFRASTRUCTURE FOR FIG. 7 shows a flow diagram of a method of logging into MOBILE DEVICES one of a plurality of ANDROID operating systems in accordance with an embodiment of the present invention. BACKGROUND OF THE INVENTION FIG. 8 shows a schematic diagram illustrating client-side rendering in accordance with an embodiment of the present 1. 1. Field of the Invention invention. The present invention relates generally to mobile devices, FIG. 9 shows a schematic diagram of a virtual input and more particularly but not exclusively to computing method editor (IME) operating with a local IME in accor infrastructures for Supporting operation of mobile devices. dance with an embodiment of the present invention. 2. 2. Description of the Background Art 10 FIG. 10, which consists of FIGS. 10A-10F, shows screen shots illustrating an example operation of a virtual IME and Mobile devices, such as smartphones and tablets, have a local IME in accordance with an embodiment of the become commonplace and are now employed as replace present invention. ments for portable (e.g., laptops and netbooks) and desktop The use of the same reference label in different drawings (e.g., personal computers) computing devices. For example, 15 Smartphones are now employed not just to make Voice calls indicates the same or like components. over traditional mobile telephone networks, but also to DETAILED DESCRIPTION browse the Internet, watch streamed video, and play online games. Some employers even allow employees to bring their In the present disclosure, numerous specific details are own devices, the so-called BYOD policy. provided. Such as examples of apparatus, components, and One problem with mobile devices is that they run mobile methods, to provide a thorough understanding of embodi operating systems, such as the ANDROID and the iOS ments of the invention. Persons of ordinary skill in the art operating systems. Unlike traditional desktop operating sys will recognize, however, that the invention can be practiced tems, such as the WINDOWS operating system, mobile without one or more of the specific details. In other operating systems are not as powerful and extensible, allow 25 instances, well-known details are not shown or described to ing them to run securely on a mobile device that has limited avoid obscuring aspects of the invention. computing resources. Accordingly, mobile devices running Referring now to FIG. 1, there is shown a schematic mobile operating systems cannot readily take advantage of diagram of a computer 100 that may be employed with Some computing infrastructures available to computers that embodiments of the present invention. The computer 100 run desktop operating systems. 30 may be employed as a mobile client device, a server computer for a virtual mobile infrastructure, and other SUMMARY devices described below. The computer 100 may have fewer or more components to meet the needs of a particular In one embodiment, a virtual mobile infrastructure for application. The computer 100 may include a processor 101. 35 The processor 101 may comprise an ARM processor when mobile devices includes mobile client devices and a server the computer 100 is a mobile client device or an x86 computer running remote mobile operating systems. The processor when the computer 100 is a server computer, for remote mobile operating systems share the same kernel, and example. The computer 100 may have one or more buses are each implemented on a container. A mobile client device 103 coupling its various components. The computer 100 running a mobile operating system, which may be the same 40 may include one or more user input devices 102 (e.g., as or different from the remote mobile operating systems, keyboard, touchscreen), one or more data storage devices may access one of the many remote mobile operating 106 (e.g., flash memory, universal serial bus (USB) drive), systems on the server computer. a display monitor 104 (e.g., touchscreen, liquid crystal These and other features of the present invention will be display), one or more communications interfaces 105 (e.g., readily apparent to persons of ordinary skill in the art upon 45 network adapter, cellular interface), and a main memory 108 reading the entirety of this disclosure, which includes the (e.g., random access memory).