(12) United States Patent (10) Patent No.: US 9,003,173 B2 Baribault Et Al
Total Page:16
File Type:pdf, Size:1020Kb
US009003173B2 (12) United States Patent (10) Patent No.: US 9,003,173 B2 Baribault et al. (45) Date of Patent: Apr. 7, 2015 (54) MULTI-OS (OPERATING SYSTEM) BOOT 6,374,353 B1 4/2002 Settsu et al. VA MOBILE DEVICE 6,732,265 B2 5, 2004 Esfahani et al. 6,928,542 B2 * 8/2005 Wen et al. ......................... 713/2 6,957,075 B1 * 10/2005 Iverson ...................... 455,456.3 (75) Inventors: Gregory P. Baribault, Lynnwood, WA 6,971,002 B2 11/2005 Austen et al. (US); Larry A. Morris, Kirkland, WA 6,973,447 B1 * 12/2005 Aguilar et al. ........................ 1.1 (US); Shai Guday, Redmond, WA (US); 7,424,601 B2 * 9/2008 Xu ................. ... 713.1 John Mark Miller, Kirkland, WA (US) 7,673,131 B2 * 3/2010 AZZarello et al. T13/2 7,793,088 B2* 9/2010 Inohiza .......... ... 713.1 7,822,962 B2 * 10/2010 Lam ........ T13/2 (73) Assignee: Microsoft Technology Licensing, LLC, 2001/0003835 A1 6/2001 Watts ............................ TO9,318 Redmond, WA (US) 2002/0166046 A1 11/2002 Bidarahalli 2003/0093.658 A1 5/2003 Wen et al. (*) Notice: Subject to any disclaimer, the term of this 2003/0097.554 A1* 5/2003 Cheston et al. ................... 713/2 patent is extended or adjusted under 35 2003.01.10331 A1 6/2003 Kawano U.S.C. 154(b) by 540 days. 2003. O182546 A1 9, 2003 Suzuki (Continued) (21) Appl. No.: 11/864,648 FOREIGN PATENT DOCUMENTS (22) Filed: Sep. 28, 2007 CN 159.1331 A 8, 2004 (65) Prior Publication Data EP 1507 188 A2 2, 2005 US 2009/OO89569 A1 Apr. 2, 2009 (Continued) OTHER PUBLICATIONS (51) Int. C. G06F 9/00 (2006.01) International Search Report for PCT Application No. PCT/US2008/ G06F 15/177 (2006.01) 076619, dated Mar. 19, 2009, 11 pages. G06F 15/16 (2006.01) (Continued) G06F 9/44 (2006.01) (52) U.S. C. Primary Examiner – Zahid Choudhury CPC ................ G06F 15/16 (2013.01); G06F 9/441 (74) Attorney, Agent, or Firm — Kate Drakos; John Jardine: (2013.01) Micky Minhas (58) Field of Classification Search USPC ........................ - - - - - - - - - - - 713/1, 2; 717/174, 175 (57) ABSTRACT See application file for complete search history. A system that facilitates different levels of operating system (56) References Cited (OS) boot so as to provide users with rapid access to certain mobile device functionalities, security, applications, etc. is U.S. PATENT DOCUMENTS provided. An OS can be loaded in phases or stages commen Surate with policies, preferences, actions, context, etc. Simi 4,663,707 A 5, 1987 Dawson larlv, a particular OS or group of OSs can be loaded to address 6,032,255 A 2, 2000 Shim et al. 6,055,631 A 4, 2000 Chadha a particular scenario or requirement. 6,065,037 A 5, 2000 Hitz et al. 6,178,503 B1* 1/2001 Madden et al. ................... 713/2 15 Claims, 11 Drawing Sheets 10. is da DATASTRE MASTERBOT CODE (MBC) 1 PARTITIONTABLE WASTER ENTRY BOOT RECORD (MBR) 2 PARTITIONTABLE PARTITION ENTRY TABLE M'PARTITIONTABLE ENTRY BOOTSECTOR PRIMARY PARTITN ONE DATA BOOTSECTOR M PRIMARY PARTITIN DATA BOOTSECTOR EXTENDED PARTITIN DATA - - - US 9,003,173 B2 Page 2 (56) References Cited OTHER PUBLICATIONS U.S. PATENT DOCUMENTS Linux Start up and Run Levels. http://www.comptechdoc.org/ost linux, howlinuxWorkS/linux hlrunlevels.html. Last accessed on Feb. 2003/0188144 A1* 10, 2003 Du et al. ........................... T13/1 15, 2007. 2003/019 1623 A1 10, 2003 Salmonsen Hussein. Multiple-Boot with Platform Flash PROMs. Aug. 7, 2006. 2004/0003222 A1 1/2004 Rich et al. ......................... T13/1 http://direct.Xilinx.com/bvdocs/appnotes/xapp483.pdf. 2004/0249992 A1* 12/2004 Komarla et al. .................. T10.8 T. Chen, et al. Multi-level Cross Platform BSP Framework (MCBF). 2005/0038982 A1 2/2005 Park et al. ......................... T13/1 http://www.actapress.com/PaperInfo.aspx?PaperID=27357. Last 2006, OO 10314 A1 1, 2006 Xu accessed on Feb. 15, 2007. 2006, O126656 A1 6/2006 Ayyar et al. “European Search Report'. Mailed Date: Sep. 24, 2010, Application 2006/0227806 A1 10/2006 Tseng 2006/0282654 A1 12/2006 van der Veen et al. No. EP/08/83/6596, Filed Date: Sep. 23, 2010, pp. 7. 2007/0005947 A1 1/2007 Chartrand et al. ................ T13/1 "Cloud computing”. Retrieved at < http://en.wikipedia.org/w/in 2007/010.0480 A1* 5, 2007 Sinclair et al. ..... TOO/48 dex.php?title=Cloud computing&Oldid=157288708 >>, Sep. 12, 2007/0239978 A1* 10/2007 Bharathy et al. 713.2 2007, pp. 1. 2007/0250692 A1* 10, 2007 Linn ................................. T13/1 “Context awareness'. Retrieved at <<http://en.wikipedia.org/w/in 2008.0020803 A1 1/2008 Rios et al. ..................... 455,565 dex.php?title=Context awareness&oldid=160540010 >>, Sep. 26. 2008/0162914 A1* 7/2008 Adrangietal 713/2 2007, pp. 4. 2008/0209255 A1* 8/2008 Seguin et al. ..................... T14/2 EP OA dated Oct. 12, 2010 for European Patent Application No. 08836596.0-1243 ? 2193437, 1 page. International Preliminary Report on Patentability mailed Mar. 19. FOREIGN PATENT DOCUMENTS 2009 for PCT Application No. PCT/US2008/076619, 10 pages. JP H11-265289 A 9, 1999 “Japanese Office Action'. Mailed Date: Mar. 25, 2013, Application JP 2000-172359 A 6, 2000 No. 2010-527030, Filed date: Sep. 17, 2008. JP 2002-108485 4/2002 Office Action (JP2010-527030), 10/29/20012. JP 3003-351671 12/2002 English abstract/summary of JP-2002-108485. JP 20O2373317 A 12/2002 “Notice of Final Rejection Received for Japan Patent Application No. JP 2003-196096 T 2003 2010-527030”, Mailed Date: Oct. 4, 2013, Filed Date: Sep. 17, 2008, JP 2003-280915 10, 2003 3 Pages. JP 200408.6330 A 3, 2004 “Notice of Allowance Received for Japan Patent Application No. JP 2004-252276 A 9, 2004 JP 2005-518603 6, 2005 2010-527030”, Mailed Date: Mar. 26, 2014, Filed Date: Sep. 17, JP 2005-533328 A 11, 2005 2008, 4 Pages. JP 2007-195157 A 8, 2007 “Office Action Issued in Japan Patent Application No. 2014 KR 2005OO45773 5, 2005 019123”. Mailed Date: Dec. 1, 2014, 5 Pages. KR 10-2006-0.124.047. A 12/2006 Korean Office Action, mailed Oct. 28, 2014, Application No. KR 2006-0.124.047 12/2006 10-2010-7006351. KR 10-2007-0 122342 A 12/2007 WO 2004008781 A2 1, 2004 * cited by examiner U.S. Patent Apr. 7, 2015 Sheet 1 of 11 US 9,003,173 B2 - 100 ----------------- MOBILE DEVICE : 102 BOOT : MANAGEMENT COMPONENT 104 1 TOM : DATA STORE OPERATING SYSTEMS FIG. 1 U.S. Patent Apr. 7, 2015 Sheet 2 of 11 US 9,003,173 B2 START IDENTIFY AVAILABLE OSS POLICY CONTEXT BASED2 BASED2 ACCESS POLICY ESTABLISH CONTEXT LOCATE APPROPRIATE OS LAUNCH APPROPRIATE OS FIG. 2 U.S. Patent Apr. 7, 2015 Sheet 3 of 11 US 9,003,173 B2 START IDENTIFY OSS 302 IDENTIFY POLICY 304 MAP POLICY TO OSS 306 PARTITION 308 DATA STORE INSTALL OSS 310 FIG. 3 U.S. Patent Apr. 7, 2015 Sheet 4 of 11 US 9,003,173 B2 MOBILE DEVICE BOOT 102 MANAGEMENT COMPONENT DATA STORE -PARTITION 1- 104 -PARTITION 2 -PARTITIONN FIG. 4 U.S. Patent Apr. 7, 2015 Sheet 5 of 11 US 9,003,173 B2 - 104 DATA STORE MASTER BOOT CODE (MBC) 1 PARTITION TABLE MASTER ENTRY BOOT RECORD (MBR) 2NP PARTITION TABLE PARTITION ENTRY TABLE M'PARTITION TABLE ENTRY BOOT SECTOR PRIMARY PARTITION ONE DATA PRIMARY BOOT SECTOR PARTITION TWO BOOT SECTOR EXTENDED PARTITION FIG. 5 U.S. Patent Apr. 7, 2015 Sheet 6 of 11 US 9,003,173 B2 M 102 SELECTION 602 COMPONENT BOOT MANAGEMENT COMPONENT IMPLEMENTATION 604 COMPONENT FIG. 6 U.S. Patent Apr. 7, 2015 Sheet 7 of 11 US 9,003,173 B2 SELECTION COMPONENT 702 704 CONTEXT-BASED IDENTITY-BASED SELECTION SELECTION COMPONENT COMPONENT U.S. Patent Apr. 7, 2015 Sheet 8 of 11 US 9,003,173 B2 IMPLEMENTATION COMPONENT 802 PARTITION LOCATOR COMPONENT U.S. Patent Apr. 7, 2015 Sheet 9 of 11 US 9,003,173 B2 006_^ GIOIAEIGI LVYHEIdIOAVTdISICIYHO JL[ldNIYH@HATRICI ?ÅRHOVNIHWN @HOVYHOLS NOILVOINÍTVNWOO WEILSÄSSIONS AVTdISICI(SO)NOIJLOEITHS 606LNGINOd?VNOO YHOSS@HOOYHCH 6"OIH (SO) NOIJLVJLNGIVNIHTAIWNI LNGINOdIVNOO YHTIWN LNGINOdIVNOO U.S. Patent Apr. 7, 2015 Sheet 10 of 11 US 9,003,173 B2 PROCESSING UNIT OPTICAL DRIVE '(WIRED WIRELESS) INPUT DEVICE INTERFACE REMOTE COMPUTER(S) NETWORK 1050 ADAPTER (WIRED/WIRELESS) C MEMORY/ STORAGE FIG 10 U.S. Patent Apr. 7, 2015 Sheet 11 of 11 US 9,003,173 B2 1102 COMMUNICATION 1 104 FRAMEWORK CLIENT DATA STORE(S) SERVER DATA STORE(S) FIG 11 US 9,003,173 B2 1. 2 MULTI-OS (OPERATING SYSTEM) BOOT computing devices by enabling logical OS selection. In other VA MOBILE DEVICE words, robust OSs can be installed to enable execution of Sophisticated applications such as word processors, browsers, BACKGROUND media players, network applications, etc. Additionally, if desired, a more limited OS could be installed to facilitate In the personal computer (PC) world, oftentimes a user quick access to desired functionality (e.g., dialer in a Smart desires an ability to select a particular operating system (OS) phone) rather than waiting for a robust OS boot process to be at startup or boot. This multi-OS feature can be desired as a implemented. function of specific applications or merely userpreference. In Moreover, different levels of authentication can be associ other words, there are often situations where a particular OS 10 ated with the respective boot levels. These authentication is required to run a particular computer application. As well, levels can be employed to enhance security by limiting access because users become so adept at using a particular OS, there is often a strong preference to the features, functions and to data and/or functionalities.