JP6564845B2 - オペレーティングシステム起動加速 - Google Patents
オペレーティングシステム起動加速 Download PDFInfo
- Publication number
- JP6564845B2 JP6564845B2 JP2017500386A JP2017500386A JP6564845B2 JP 6564845 B2 JP6564845 B2 JP 6564845B2 JP 2017500386 A JP2017500386 A JP 2017500386A JP 2017500386 A JP2017500386 A JP 2017500386A JP 6564845 B2 JP6564845 B2 JP 6564845B2
- Authority
- JP
- Japan
- Prior art keywords
- service
- loading
- vehicle
- computing device
- class
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Description
本願は、2014年7月10日に出願された「OPERATING SYSTEM STARTUP ACCELERATION」と題されたインド特許出願第3427/CHE/2014号の優先権を主張し、すべての目的のためにその開示全体を参照により本明細書に組み込む。
本明細書は、例えば、以下の項目も提供する。
(項目1)
コンピューティングデバイスのオペレーティングシステムの初期化中のクラスの選択的なロード方法であって、
仮想マシンを初期化することと、
第一のクラスリストから選択されたクラスをロードすることと、
前記コンピューティングデバイスのリソースをロードすることと、
前記オペレーティングシステムのサービスを初期化してサービスマネージャを用いて前記サービスを登録するように構成されたサービスローディングプロセスをロードすることと、及び
前記サービスローディングプロセスのロード後に、第二のクラスリストから選択されたクラスをロードすることと、を含む、前記方法。
(項目2)
前記第一のクラスリストにおける各クラスが、ロード時間閾値よりも短いロード時間を有し、プロセス閾値よりも多い数のプロセスに利用される、項目1に記載の方法。
(項目3)
前記第二のクラスリストにおける各クラスが、前記ロード時間閾値よりも長いロード時間を有し、前記プロセス閾値よりも多い数のプロセスに利用される、項目1または2のいずれか1項に記載の方法。
(項目4)
アプリケーションを分岐するためのコマンドを受信するためのソケットを待機することと、及びリクエストされたアプリケーションを分岐するためのコマンドの受信に応答して、前記リクエストされたアプリケーションをロードするために前記リクエストされたアプリケーションを分岐することと、をさらに含む、項目1〜3のいずれか1項に記載の方法。
(項目5)
前記サービスローディングプロセスのローディングが、さらに、ヒューマンマシンインターフェースを立ち上げる前に前記サービスローディングプロセスによって重要サービスのみをロードすることを含む、項目1〜4のいずれか1項に記載の方法。
(項目6)
前記ヒューマンマシンインターフェースを立ち上げることと、及び前記ヒューマンマシンインターフェースを介して最後に使用されたアプリケーションを立ち上げることと、をさらに含む、項目5に記載の方法。
(項目7)
アプリケーションを立ち上げるためのリクエストに応答して前記アプリケーションを立ち上げることをさらに含む、項目1〜6のいずれか1項に記載の方法。
(項目8)
前記コンピューティングデバイスのサービスマネージャにおいて、リクエストされたサービスについてのアプリケーションからのリクエストを受信することと、前記リクエストされたサービスが前記コンピューティングデバイスにおいて既に実行されているかどうかを決定することと、前記リクエストされたサービスが未だ実行されていない場合に、前記リクエストされたサービスを起動することと、及び前記リクエストされたサービスが実行されている場合に、前記リクエストされたサービスに関連するサービスハンドルを前記アプリケーションに戻すことと、をさらに含む、項目1〜7のいずれか1項に記載の方法。
(項目9)
使用すべきドライバの通知を受信することと、前記ドライバを初期化することと、及び前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することと、をさらに含む、項目1〜8のいずれか1項に記載の方法。
(項目10)
前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することが、前記ドライバによってサポートされる各ハードウェアインスタンスに関連する初期化のステージを決定することと、及び第一の初期化のステージに関連する各ハードウェアインスタンスについて、そのハードウェアインスタンスを初期化することと、を含む、項目9に記載の方法。
(項目11)
前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することが、さらに、第一の初期化のステージに関連しない各ハードウェアインスタンスについて、前記ハードウェアインスタンスに関連する前記ステージにマッチする関連するステージリストに、そのハードウェアインスタンスについてのエントリを追加することを含む、項目10に記載の方法。
(項目12)
第一の初期化ステージ後の各初期化ステージにおいて、その初期化ステージに関連するステージリストを取り出すことと、及びその初期化ステージに関連する前記ステージリストに含まれる各ハードウェアインスタンスを初期化することと、をさらに含む、項目11に記載の方法。
(項目13)
プロセッサと、
前記プロセッサによって実行可能な命令を記憶するストレージデバイスと、を備えており、前記命令が、
仮想マシンを初期化することと、
第一のクラスリストから選択されたクラスをロードすることと、
コンピューティングデバイスのリソースをロードすることと、
オペレーティングシステムのサービスを初期化してサービスマネージャを用いて前記サービスを登録するように構成されたサービスローディングプロセスをロードすることと、
及び
前記サービスローディングプロセスのロード後に、第二のクラスリストから選択されたクラスをロードすることと、を含む、コンピューティングデバイス。
(項目14)
前記仮想マシンがDalvik仮想マシンを備えており、前記コンピューティングデバイスが、車両内に統合された車載コンピューティングデバイスを備えており、前記命令が、さらに、前記第一のクラスリストから選択された前記クラスをロードするためのZygoteプロセスを呼び出すように実行可能である、項目13に記載のコンピューティングデバイス。
(項目15)
前記サービスローディングプロセスが、プロセス間通信ソケットを介した、新規のアプリケーションを求めるコマンドの検出に応答して、前記新規のアプリケーションをロードするように構成された、項目13または14のいずれか1項に記載のコンピューティングデバイス。
Claims (14)
- コンピューティングデバイスのオペレーティングシステムの初期化中にクラスを選択的にロードする方法であって、前記方法は、
仮想マシンを初期化することと、
第一のクラスリストから選択されたクラスをロードすることと、
前記コンピューティングデバイスのリソースをロードすることと、
前記オペレーティングシステムのサービスを初期化してサービスマネージャを用いて前記サービスを登録するように構成されたサービスローディングプロセスをロードすることと、
前記サービスローディングプロセスのロード後に、第二のクラスリストから選択されたクラスをロードすることと
を含み、
前記第一のクラスリストにおける各クラスが、ロード時間閾値よりも短いロード時間を有し、プロセス閾値よりも多い数のプロセスに利用される、方法。 - 前記第二のクラスリストにおける各クラスが、前記ロード時間閾値よりも長いロード時間を有し、前記プロセス閾値よりも多い数のプロセスに利用される、請求項1に記載の方法。
- アプリケーションを分岐するためのコマンドを受信するためのソケットを待機することと、リクエストされたアプリケーションを分岐するためのコマンドの受信に応答して、前記リクエストされたアプリケーションをロードするために前記リクエストされたアプリケーションを分岐することとをさらに含む、請求項1〜2のいずれか1項に記載の方法。
- 前記サービスローディングプロセスをロードすることが、さらに、ヒューマンマシンインターフェースを立ち上げる前に前記サービスローディングプロセスによって重要サービスのみをロードすることを含む、請求項1〜3のいずれか1項に記載の方法。
- 前記ヒューマンマシンインターフェースを立ち上げることと、前記ヒューマンマシンインターフェースを介して、最後に使用されたアプリケーションを立ち上げることとをさらに含む、請求項4に記載の方法。
- アプリケーションを立ち上げるためのリクエストに応答して前記アプリケーションを立ち上げることをさらに含む、請求項1〜5のいずれか1項に記載の方法。
- 前記コンピューティングデバイスのサービスマネージャにおいて、リクエストされたサービスについてのアプリケーションからのリクエストを受信することと、前記リクエストされたサービスが前記コンピューティングデバイスにおいて既に実行されているかどうかを決定することと、前記リクエストされたサービスが未だ実行されていない場合に、前記リクエストされたサービスを起動することと、前記リクエストされたサービスが実行されている場合に、前記リクエストされたサービスに関連するサービスハンドルを前記アプリケーションに戻すこととをさらに含む、請求項1〜6のいずれか1項に記載の方法。
- 使用すべきドライバの通知を受信することと、前記ドライバを初期化することと、前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することとをさらに含む、請求項1〜7のいずれか1項に記載の方法。
- 前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することが、前記ドライバによってサポートされる各ハードウェアインスタンスに関連する初期化のステージを決定することと、第一の初期化のステージに関連する各ハードウェアインスタンスについて、そのハードウェアインスタンスを初期化することとを含む、請求項8に記載の方法。
- 前記ドライバによってサポートされるハードウェアインスタンスを選択的に初期化することが、さらに、第一の初期化のステージに関連しない各ハードウェアインスタンスについて、前記ハードウェアインスタンスに関連する前記ステージにマッチする関連するステージリストに、そのハードウェアインスタンスについてのエントリを追加することを含む、請求項9に記載の方法。
- 第一の初期化ステージ後の各初期化ステージにおいて、その初期化ステージに関連するステージリストを取り出すことと、その初期化ステージに関連する前記ステージリストに含まれる各ハードウェアインスタンスを初期化することとをさらに含む、請求項10に記載の方法。
- プロセッサと、
ストレージデバイスと
を備えるコンピューティングデバイスであって、
前記ストレージデバイスは、
仮想マシンを初期化することと、
第一のクラスリストから選択されたクラスをロードすることと、
前記コンピューティングデバイスのリソースをロードすることと、
オペレーティングシステムのサービスを初期化してサービスマネージャを用いて前記サービスを登録するように構成されたサービスローディングプロセスをロードすることと、
前記サービスローディングプロセスのロード後に、第二のクラスリストから選択されたクラスをロードすることと
を実行するように前記プロセッサによって実行可能な命令を記憶しており、
前記第一のクラスリストにおける各クラスが、ロード時間閾値よりも短いロード時間を有し、プロセス閾値よりも多い数のプロセスに利用される、コンピューティングデバイス。 - 前記仮想マシンがDalvik仮想マシンを備えており、前記コンピューティングデバイスが、車両内に統合された車載コンピューティングデバイスを備えており、前記命令が、さらに、前記第一のクラスリストから選択された前記クラスをロードするためのZygoteプロセスを呼び出すように実行可能である、請求項12に記載のコンピューティングデバイス。
- 前記サービスローディングプロセスが、プロセス間通信ソケットを介した、新規のアプリケーションを求めるコマンドの検出に応答して、前記新規のアプリケーションをロードするように構成される、請求項12または13のいずれか1項に記載のコンピューティングデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN3427CH2014 | 2014-07-10 | ||
IN3427/CHE/2014 | 2014-07-10 | ||
PCT/US2015/039735 WO2016007737A1 (en) | 2014-07-10 | 2015-07-09 | Operating system startup acceleration |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017520856A JP2017520856A (ja) | 2017-07-27 |
JP6564845B2 true JP6564845B2 (ja) | 2019-08-21 |
Family
ID=53761520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017500386A Active JP6564845B2 (ja) | 2014-07-10 | 2015-07-09 | オペレーティングシステム起動加速 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10379871B2 (ja) |
EP (2) | EP3167363B1 (ja) |
JP (1) | JP6564845B2 (ja) |
KR (1) | KR102442181B1 (ja) |
CN (1) | CN106537341A (ja) |
WO (1) | WO2016007737A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180009316A1 (en) * | 2015-01-07 | 2018-01-11 | Green Ride Ltd. | Vehicle-user human-machine interface apparatus and systems |
CN107220055B (zh) * | 2017-05-26 | 2024-03-29 | 上海传英信息技术有限公司 | 用于终端启动的方法、系统及终端 |
CN110780930B (zh) * | 2019-09-23 | 2023-06-06 | 广州视源电子科技股份有限公司 | 启动Android系统的方法、装置、电子设备及存储介质 |
US11928478B2 (en) * | 2019-10-29 | 2024-03-12 | Hewlett-Packard Development Company, L.P. | Tracking device state transitions |
KR20220109093A (ko) * | 2021-01-28 | 2022-08-04 | 삼성전자주식회사 | 전자 장치 및 이의 제어 방법 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3278885B2 (ja) * | 1992-03-06 | 2002-04-30 | 富士通株式会社 | コンピュータシステム |
JP2742394B2 (ja) * | 1994-12-02 | 1998-04-22 | 株式会社ナムコ | ゲームプログラムおよびデータの読込み方法、ならびにこれを用いたゲーム装置 |
US6944846B2 (en) * | 2001-12-14 | 2005-09-13 | Hewlett-Packard Development Company, L.P. | Algorithm for localization of a JAVA application using reflection API and a custom class loader |
US7174447B2 (en) * | 2003-11-14 | 2007-02-06 | Intel Corporation | Providing a pre-boot driver for use during operating system runtime of a computer system |
KR101017372B1 (ko) * | 2003-12-23 | 2011-02-28 | 삼성전자주식회사 | 작업 스케쥴러를 이용한 다수의 디바이스 초기화 방법 |
JP2006172305A (ja) * | 2004-12-17 | 2006-06-29 | Nec Corp | 無線基地局装置及びプログラムダウンロード方法並びにそのプログラム |
JP2006323549A (ja) * | 2005-05-18 | 2006-11-30 | Hitachi Ltd | システムの起動方法 |
US7461247B2 (en) * | 2005-06-03 | 2008-12-02 | Qnx Software Systems Gmbh & Co. Kg | Method for transitioning control of a peripheral device from a first device driver to a second device driver during operating system initialization |
US8074231B2 (en) * | 2005-10-26 | 2011-12-06 | Microsoft Corporation | Configuration of isolated extensions and device drivers |
US7499991B2 (en) * | 2005-11-10 | 2009-03-03 | International Business Machines Corporation | Autonomic application server unneeded process disablement |
KR100772867B1 (ko) * | 2006-02-23 | 2007-11-02 | 삼성전자주식회사 | 복수의 애플리케이션에 대해 부분적으로 분리된 수행환경을 제공하는 방법 및 이를 이용한 디지털 정보 기기 |
US8141075B1 (en) * | 2006-05-08 | 2012-03-20 | Vmware, Inc. | Rule engine for virtualized desktop allocation system |
US20080082665A1 (en) * | 2006-10-02 | 2008-04-03 | Dague Sean L | Method and apparatus for deploying servers |
KR20090008695A (ko) * | 2007-07-18 | 2009-01-22 | 삼성전자주식회사 | 이동통신 단말기에서 선택 적재를 위한 장치 및 방법 |
US7996666B2 (en) * | 2007-09-04 | 2011-08-09 | Apple Inc. | User influenced loading sequence of startup applications |
JP2009217711A (ja) * | 2008-03-12 | 2009-09-24 | Mitsubishi Electric Corp | 情報処理装置 |
CN101299848B (zh) * | 2008-05-30 | 2012-07-18 | 宇龙计算机通信科技(深圳)有限公司 | 一种移动终端应急应用的启动方法、系统及移动终端 |
JP2010079566A (ja) * | 2008-09-25 | 2010-04-08 | Alpine Electronics Inc | 情報処理装置およびアプリケーション起動方法 |
US9671241B2 (en) * | 2009-02-03 | 2017-06-06 | Telenav, Inc. | Navigation system having route customization mechanism and method of operation thereof |
JP5391918B2 (ja) * | 2009-08-10 | 2014-01-15 | 株式会社リコー | 情報処理装置、情報処理方法、及び情報処理プログラム |
JP2011043932A (ja) * | 2009-08-20 | 2011-03-03 | Ricoh Co Ltd | 情報処理装置 |
JP2011096145A (ja) * | 2009-10-30 | 2011-05-12 | Pioneer Electronic Corp | 情報処理装置、起動制御方法、起動制御プログラムおよび記録媒体 |
JP2011186657A (ja) * | 2010-03-05 | 2011-09-22 | Aisin Aw Co Ltd | 車載機器制御装置、車載機器制御方法、及び車載機器制御プログラム |
US9026343B2 (en) * | 2010-12-29 | 2015-05-05 | Paccar Inc | Systems and methods for improving the efficiency of a vehicle |
US9003175B2 (en) * | 2011-04-29 | 2015-04-07 | Lenovo (Singapore) Pte. Ltd. | System and method for accelerated boot performance |
JP5385347B2 (ja) * | 2011-08-02 | 2014-01-08 | レノボ・シンガポール・プライベート・リミテッド | メイン・メモリのフリー・メモリ量を拡大する方法およびコンピュータ |
US20130054945A1 (en) * | 2011-08-24 | 2013-02-28 | Microsoft Corporation | Adaptive sensing for early booting of devices |
CN102298532B (zh) * | 2011-09-15 | 2014-12-10 | 奇智软件(北京)有限公司 | 一种基于启动项的管理方法及装置 |
CN103092656B (zh) * | 2013-01-23 | 2016-09-14 | 深圳市航盛电子股份有限公司 | 一种导航系统及导航方法 |
CN103324506A (zh) * | 2013-06-24 | 2013-09-25 | 上海天奕达电子科技有限公司 | 一种控制Android应用程序安装的方法及手机 |
CN103488478A (zh) * | 2013-09-03 | 2014-01-01 | 厦门雅迅网络股份有限公司 | 基于android平台的设备管理框架 |
US9268610B2 (en) * | 2013-11-01 | 2016-02-23 | Vmware, Inc. | Rapid virtual machine cloning |
-
2015
- 2015-07-09 EP EP15742446.6A patent/EP3167363B1/en active Active
- 2015-07-09 KR KR1020177000365A patent/KR102442181B1/ko active IP Right Grant
- 2015-07-09 WO PCT/US2015/039735 patent/WO2016007737A1/en active Application Filing
- 2015-07-09 JP JP2017500386A patent/JP6564845B2/ja active Active
- 2015-07-09 EP EP20207127.0A patent/EP3796159B1/en active Active
- 2015-07-09 US US15/324,258 patent/US10379871B2/en active Active
- 2015-07-09 CN CN201580037826.8A patent/CN106537341A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR102442181B1 (ko) | 2022-09-08 |
US10379871B2 (en) | 2019-08-13 |
JP2017520856A (ja) | 2017-07-27 |
EP3796159A1 (en) | 2021-03-24 |
CN106537341A (zh) | 2017-03-22 |
WO2016007737A1 (en) | 2016-01-14 |
EP3167363B1 (en) | 2020-12-16 |
KR20170030515A (ko) | 2017-03-17 |
EP3167363A1 (en) | 2017-05-17 |
US20170168848A1 (en) | 2017-06-15 |
EP3796159B1 (en) | 2022-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6567642B2 (ja) | オペレーティングシステム起動加速 | |
US11034362B2 (en) | Portable personalization | |
JP6496502B2 (ja) | 車載コンピューティングシステムにおけるオペレーティングシステムの置換 | |
JP6564845B2 (ja) | オペレーティングシステム起動加速 | |
US20130167159A1 (en) | Vehicle comprising multi-operating system | |
US20170286785A1 (en) | Interactive display based on interpreting driver actions | |
JP2015032314A5 (ja) | ||
JP2015129753A (ja) | 車内通知提示のスケジューリング | |
JP6577566B2 (ja) | オペレーティングシステム起動加速 | |
KR20220065669A (ko) | 온-디바이스 캐시를 이용한 하이브리드 페칭 | |
US20170364138A1 (en) | In-vehicle computing system with power conserving maintenance tasks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180510 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190318 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190613 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190701 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190729 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6564845 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |