JP5694301B2 - 非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行する端末装置、および非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行するプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行する端末装置、および非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行するプログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP5694301B2 JP5694301B2 JP2012512939A JP2012512939A JP5694301B2 JP 5694301 B2 JP5694301 B2 JP 5694301B2 JP 2012512939 A JP2012512939 A JP 2012512939A JP 2012512939 A JP2012512939 A JP 2012512939A JP 5694301 B2 JP5694301 B2 JP 5694301B2
- Authority
- JP
- Japan
- Prior art keywords
- module
- layer
- application
- native
- platform
- 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.)
- Expired - Fee Related
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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
Description
図1は、本発明にかかる異種アプリケーション実行のための仮想マシン基盤の階層構造を有する端末装置100の全体構成を概略的に示すブロック図である。
ミドルウェアモジュール20は、プラットフォーム層モジュール30とアプリケーション層モジュール10との間に位置し、アプリケーション層モジュール10に備えられた第2のアプリケーションを媒介する。
図2は、図1におけるミドルウェアモジュール20の構成を詳細に示すブロック図である。
例えば、ポーティング層モジュール23には、カーネル(DLL、pthread、etc)、システム(ファイル、メモリ、ソケット、stdio、stdlib、string、math、時間)、装置(フレームバッファ、メディア、インプット、3D、etc)、Utils(ログ、デバッグ、etc)などが備えられる。
仮想マシン22−1は、ダルビック仮想マシンを修正したものである。ダルビック仮想マシンは、グーグルアンドロイドプラットフォームで提供する仮想マシンであり、Java仮想マシンより小さいメモリ環境で動作することができるように、Java仮想マシンとやや相違する概念で作られた仮想マシンを意味する。
その他にも、仮想マシン22−1は、マルチタスキングを支援することなく、シングルタスクで動作する端末装置100でも動作することができるように、既存のダルビック仮想マシンを修正してシングルタスクで動作が可能である。つまり、仮想マシン22−1は、ポーティング層モジュール23を介してプラットフォーム層モジュール30と連動してシングルタスクで動作する。
ネイティブライブラリ22−2は、上位層のライブラリを実現するための基盤となり、Linux以外の他のプラットフォームに合わせてポーティングされて備えられる。
前述した図3に続いて、ネイティブライブラリ層モジュール22には、ポーティング層モジュール23のハードウェア管理モジュールと連動して動作する多様なネイティブライブラリ22−2を備える。
以上の説明は、本発明の技術思想を例示的に説明したものにすぎず、本発明の属する技術分野における通常の知識を有する者であれば、本発明の本質的な特性から逸脱しない範囲で多様な修正および変形が可能である。したがって、本発明に開示された実施形態は、本発明の技術思想を限定するためのものではなく、説明するためのものであり、このような実施形態により本発明の技術思想の範囲が限定されるものではない。本発明の保護範囲は、下記の請求の範囲によって解釈されなければならず、それと同等の範囲内にあるすべての技術思想は、本発明の権利範囲に属するものと解釈されなければならない。
Claims (6)
- 非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行する端末装置であって、
少なくとも一つのアンドロイドアプリケーションを含むアプリケーション層モジュールと、
前記端末装置のハードウェアリソースを動作させる前記非アンドロイドプラットフォームのネイティブプラットフォーム層モジュールと、
前記ネイティブプラットフォーム層モジュールと前記アプリケーション層モジュールとを媒介し、クラスライブラリ層モジュールと、ネイティブライブラリ層モジュールと、ポーティング層モジュールとを備えるミドルウェアモジュールとを含んで構成され、
前記クラスライブラリ層モジュールは、前記アンドロイドアプリケーションを実行させるのに必要なクラスライブラリを備えるアプリケーションフレームワークモジュール、およびJavaAPI(アプリケーション・プログラム・インターフェース)を提供するコアクラスライブラリモジュールを含み、
前記ポーティング層モジュールは、前記ネイティブライブラリ層モジュールと前記ネイティブプラットフォーム層モジュールとを接続し、ファイルシステム、メモリ割り当てモジュール、ネットワークモジュール、基本ライブラリ、タイマー、デバイス制御モジュールのうちの1つ以上のハードウェア管理モジュールを含み、前記ハードウェア管理モジュールは、オペレーティングシステムを活用することにより、前記端末装置のハードウェアを管理するためのLinux標準APIを提供し、
前記ネイティブライブラリ層モジュールは、仮想マシンおよびネイティブライブラリを含み、前記仮想マシンは、前記クラスライブラリと前記クラスライブラリ層モジュールに備えられた前記JavaAPIとを介した前記アンドロイドアプリケーションの実行にあたり、前記ポーティング層モジュールで提供する前記Linux標準APIを介してハードウェアを使用し、前記仮想マシンは、該仮想マシンに含まれ、かつプラットフォーム独立型モジュールであるスレッド管理モジュール、動的ライブラリ管理モジュール、他言語関数インターフェース、同期モジュール、メモリ管理モジュールを用いて、前記アンドロイドアプリケーションを、Linuxではない、前記ネイティブプラットフォーム層モジュールを介して実行するように構成され、前記ネイティブライブラリは、前記アプリケーションフレームワークモジュールのクラスライブラリを実現するために用いられ、
前記仮想マシンは、前記プラットフォーム独立型モジュールにより既存のアンドロイドのLinux依存的機能から脱してプラットフォームに影響を受けずに、前記ポーティング層モジュールを介して前記ネイティブプラットフォーム層モジュールと連動してシングルタスクで動作することを特徴とする、端末装置。 - 前記ネイティブライブラリ層モジュールは、前記ポーティング層モジュールのハードウェア管理モジュールと連動して動作する1つ以上のネイティブライブラリを備えることを特徴とする、請求項1に記載の端末装置。
- 前記アプリケーションフレームワークモジュールは、電話サービス、位置サービス、ブルートゥースサービス、WIFIサービス、USBサービス、センササービスのうちの1つ以上のサービスモジュールを含み、前記アンドロイドアプリケーションの実行によって当該サービスをバックグラウンドで実行することを特徴とする、請求項2に記載の端末装置。
- 非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを端末装置のコンピュータに実行させるプログラムを記録した非一時的コンピュータ読み取り可能な記録媒体であって、
前記プログラムは、コンピュータを
少なくとも一つのアンドロイドアプリケーションを含むアプリケーション層手段と、
前記端末装置のハードウェアリソースを動作させる前記非アンドロイドプラットフォームのネイティブプラットフォーム層手段と、
前記ネイティブプラットフォーム層手段と前記アプリケーション層手段とを媒介し、クラスライブラリ層手段と、ネイティブライブラリ層手段と、ポーティング層手段とを備えるミドルウェア手段として機能させ、
前記クラスライブラリ層手段は、前記アンドロイドアプリケーションを実行させるのに必要なクラスライブラリを備えるアプリケーションフレームワーク手段、およびJavaAPI(アプリケーション・プログラム・インターフェース)を提供するコアクラスライブラリ手段を含み、
前記ポーティング層手段は、前記ネイティブライブラリ層手段と前記ネイティブプラットフォーム層手段とを接続し、ファイルシステム、メモリ割り当て手段、ネットワーク手段、基本ライブラリ、タイマー、デバイス制御手段のうちの1つ以上のハードウェア管理手段を含み、前記ハードウェア管理手段は、オペレーティングシステムを活用することにより、前記端末装置のハードウェアを管理するためのLinux標準APIを提供し、
前記ネイティブライブラリ層手段は、仮想マシンおよびネイティブライブラリを含み、前記仮想マシンは、前記クラスライブラリと前記クラスライブラリ層手段に備えられた前記JavaAPIとを介した前記アンドロイドアプリケーションの実行にあたり、前記ポーティング層手段で提供する前記Linux標準APIを介してハードウェアを使用し、前記仮想マシンは、該仮想マシンに含まれ、かつプラットフォーム独立型手段であるスレッド管理手段、動的ライブラリ管理手段、他言語関数インターフェース、同期手段、メモリ管理手段を用いて、前記アンドロイドアプリケーションを、Linuxではない、前記ネイティブプラットフォーム層手段を介して実行されるように構成され、前記ネイティブライブラリは、前記アプリケーションフレームワーク手段のクラスライブラリを実現するために用いられ、
前記仮想マシンは、前記プラットフォーム独立型手段により既存のアンドロイドのLinux依存的機能から脱してプラットフォームに影響を受けずに、前記ポーティング層手段を介して前記ネイティブプラットフォーム層手段と連動してシングルタスクで動作することを特徴とする、記録媒体。 - 前記ネイティブライブラリ層手段は、前記ポーティング層手段のハードウェア管理手段と連動して動作する1つ以上のネイティブライブラリを備えることを特徴とする、請求項4に記載の記録媒体。
- 前記アプリケーションフレームワーク手段は、電話サービス、位置サービス、ブルートゥースサービス、WIFIサービス、USBサービス、センササービスのうちの1つ以上のサービス手段を含み、前記アンドロイドアプリケーションの実行によって当該サービスをバックグラウンドで実行することを特徴とする、請求項5に記載の記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090121002A KR100989613B1 (ko) | 2009-12-08 | 2009-12-08 | 비안드로이드 플랫폼에서 안드로이드 어플리케이션을 실행하는 단말장치 |
KR10-2009-0121002 | 2009-12-08 | ||
PCT/KR2009/007439 WO2011071202A1 (ko) | 2009-12-08 | 2009-12-11 | 이종 어플리케이션 실행을 위한 가상머신 기반의 계층구조를 갖는 단말장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012528374A JP2012528374A (ja) | 2012-11-12 |
JP5694301B2 true JP5694301B2 (ja) | 2015-04-01 |
Family
ID=43135767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012512939A Expired - Fee Related JP5694301B2 (ja) | 2009-12-08 | 2009-12-11 | 非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行する端末装置、および非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行するプログラムを記録したコンピュータ読み取り可能な記録媒体 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8555280B2 (ja) |
EP (1) | EP2511815A4 (ja) |
JP (1) | JP5694301B2 (ja) |
KR (1) | KR100989613B1 (ja) |
CA (1) | CA2768752C (ja) |
RU (1) | RU2486579C2 (ja) |
WO (1) | WO2011071202A1 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101328981B1 (ko) * | 2011-02-24 | 2013-11-13 | 주식회사 케이티 | 상이한 동작 환경에서 제공되는 서비스를 상이한 단말기에서 실행시키기 위한 장치 |
KR101249735B1 (ko) | 2011-04-04 | 2013-04-03 | 주식회사 인프라웨어테크놀러지 | 범용 운영체제 상에서 안드로이드 어플리케이션을 실행하기 위한 단말장치 및 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체 |
WO2012138046A1 (ko) * | 2011-04-04 | 2012-10-11 | 주식회사 인프라웨어테크놀러지 | 범용 운영체제 상에서 안드로이드 어플리케이션을 실행하기 위한 단말장치 및 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체 |
KR101290565B1 (ko) * | 2011-09-20 | 2013-07-31 | 주식회사 인프라웨어테크놀러지 | 안드로이드 앱의 행위정보 동적분석 에뮬레이터 및 이를 포함하는 행위정보 동적분석 시스템, 그리고 안드로이드 앱의 행위정보 동적분석 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 |
US8707050B1 (en) * | 2011-12-23 | 2014-04-22 | Emc Corporation | Integrity self-check of secure code within a VM environment using native VM code |
KR101291690B1 (ko) * | 2011-12-23 | 2013-08-01 | 전자부품연구원 | 스마트 단말기에 대한 범용 방송수신 동글 및 그 서비스 방법 |
KR101335512B1 (ko) | 2012-01-20 | 2013-12-02 | 주식회사 인프라웨어테크놀러지 | 안드로이드 기반의 공용 플랫폼을 탑재한 m2m 라우터 장치 |
US9218103B2 (en) * | 2012-09-19 | 2015-12-22 | Shenzhen Coocaa Network Technology Co. Ltd. | 3D interface implementation method and system based on the android system |
KR101427561B1 (ko) * | 2013-05-16 | 2014-08-07 | 주식회사 인프라웨어테크놀러지 | 안드로이드 어플리케이션의 타이젠 설치가능 패키지 자동변환을 이용한 적응 실행 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체 |
CN103530165B (zh) * | 2013-09-06 | 2016-06-15 | 北京雅鲁藏布科技有限公司 | 一种应用于物联网行业的java解决方案 |
US9934128B2 (en) | 2013-11-14 | 2018-04-03 | Red Hat, Inc. | Dynamic per-method probing during runtime |
KR101577285B1 (ko) * | 2014-01-14 | 2015-12-14 | 호서대학교 산학협력단 | 유헬스 애플리케이션 개발을 위한 안드로이드 기반 센서 추상화 장치 |
EP3111321A4 (en) | 2014-02-24 | 2017-08-23 | Sierra Wireless, Inc. | Wireless device customization resources |
CN104123162B (zh) * | 2014-07-29 | 2017-06-16 | 北京奇虎科技有限公司 | 控制应用程序自启的方法及装置 |
CN105373718A (zh) * | 2014-08-25 | 2016-03-02 | 中兴通讯股份有限公司 | 虚拟机运行处理方法及装置 |
KR101606021B1 (ko) * | 2014-10-24 | 2016-03-24 | 주식회사 모비데이즈 | 어플리케이션 내부검색방법 및 시스템 |
US9764837B2 (en) * | 2014-11-14 | 2017-09-19 | Top Flight Technologies, Inc. | Micro hybrid generator system drone |
KR101659494B1 (ko) * | 2015-04-07 | 2016-09-23 | 주식회사 위시링크 | 서버에서 관리 가능한 네이티브 어플리케이션 제공 방법 및 그 어플리케이션 |
KR101648402B1 (ko) * | 2015-04-30 | 2016-08-16 | (주) 카피앤패이스트 | 어플리케이션 처리 시스템 |
US10019298B2 (en) | 2016-08-17 | 2018-07-10 | Google Llc | Middleware interface and middleware interface generator |
WO2019031630A1 (ko) * | 2017-08-10 | 2019-02-14 | 주식회사 드림에이스 | 차량 시스템 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7415270B2 (en) * | 2002-02-15 | 2008-08-19 | Telefonaktiebolaget L M Ericsson (Publ) | Middleware services layer for platform system for mobile terminals |
US8549166B2 (en) * | 2004-03-01 | 2013-10-01 | Qualcomm Incorporated | Execution of unverified programs in a wireless, device operating environment |
US7738863B2 (en) | 2005-08-25 | 2010-06-15 | Nokia Corporation | IP datacasting middleware |
US20070240171A1 (en) * | 2006-03-29 | 2007-10-11 | Nokia Corporation | Device, Method, And Computer Program Product For Accessing A Non-Native Application Executing In Virtual Machine Environment |
KR100842084B1 (ko) * | 2007-04-03 | 2008-06-30 | (주)엔타즈 | 모바일 단말기에 계층적 구조로 탑재되는 어플리케이션 및모바일 단말기에서의 그 실행 방법 |
US20090172657A1 (en) * | 2007-12-28 | 2009-07-02 | Nokia, Inc. | System, Method, Apparatus, Mobile Terminal and Computer Program Product for Providing Secure Mixed-Language Components to a System Dynamically |
-
2009
- 2009-12-08 KR KR1020090121002A patent/KR100989613B1/ko active IP Right Grant
- 2009-12-11 EP EP09852095.0A patent/EP2511815A4/en not_active Withdrawn
- 2009-12-11 CA CA2768752A patent/CA2768752C/en not_active Expired - Fee Related
- 2009-12-11 JP JP2012512939A patent/JP5694301B2/ja not_active Expired - Fee Related
- 2009-12-11 RU RU2011139980/08A patent/RU2486579C2/ru not_active IP Right Cessation
- 2009-12-11 WO PCT/KR2009/007439 patent/WO2011071202A1/ko active Application Filing
- 2009-12-11 US US13/262,332 patent/US8555280B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP2511815A1 (en) | 2012-10-17 |
US20120023496A1 (en) | 2012-01-26 |
KR100989613B1 (ko) | 2010-10-26 |
EP2511815A4 (en) | 2014-01-22 |
WO2011071202A1 (ko) | 2011-06-16 |
US8555280B2 (en) | 2013-10-08 |
JP2012528374A (ja) | 2012-11-12 |
RU2486579C2 (ru) | 2013-06-27 |
CA2768752C (en) | 2015-02-24 |
CA2768752A1 (en) | 2011-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5694301B2 (ja) | 非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行する端末装置、および非アンドロイドプラットフォームにおいてアンドロイドアプリケーションを実行するプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
KR101015573B1 (ko) | Rtos 기반의 안드로이드 어플리케이션 실행 장치 | |
US11853820B2 (en) | Cross-process communication method, apparatus, and device | |
EP3223151A1 (en) | Hot-handover method and device for operating systems, and mobile terminal | |
WO2016160204A1 (en) | Application container for live migration of mobile applications | |
JP2000029713A (ja) | 拡張可能なアプリケ―ションのためのフレ―ムワ―クの実現技術 | |
CN110780930B (zh) | 启动Android系统的方法、装置、电子设备及存储介质 | |
JP2017146966A (ja) | パッケージファイルに対する機能拡張方法およびシステム | |
Andrus et al. | Cider: Native execution of ios apps on android | |
KR101249735B1 (ko) | 범용 운영체제 상에서 안드로이드 어플리케이션을 실행하기 위한 단말장치 및 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체 | |
WO2012138046A1 (ko) | 범용 운영체제 상에서 안드로이드 어플리케이션을 실행하기 위한 단말장치 및 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체 | |
CN102262555B (zh) | 加载java三方库的不同版本的方法和装置 | |
KR20120071060A (ko) | 동적으로 확장 가능한 기능을 제공하는 스토리지 장치 및 그것의 동작 방법 | |
Khan et al. | Android Architecture and Related Security Risks | |
CN109240733A (zh) | 一种基于安卓系统更新广告sdk的方法及终端 | |
CN112131208A (zh) | 全量数据迁移方法、装置、设备及计算机可读存储介质 | |
CN103530165B (zh) | 一种应用于物联网行业的java解决方案 | |
WO2021239073A1 (zh) | 物联网操作系统构建方法、系统、云平台及物联网设备 | |
TWI447647B (zh) | 用於執行機器人應用程序的終端裝置 | |
US20130263126A1 (en) | System and method for increasing the capabilities of a mobile device | |
WO2012015083A1 (ko) | Rtos 기반의 안드로이드 어플리케이션 실행 장치 | |
CN106775608B (zh) | 独立系统进程的实现方法和装置 | |
WO2021097683A1 (zh) | 安卓系统启动的方法、装置、设备及存储介质 | |
WO2021129853A1 (zh) | 移动服务升级方法、装置和终端 | |
Chandrashekar et al. | Comparative Analysis of Modern Mobile Operating Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130604 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130903 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130910 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140401 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140630 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140707 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141215 |
|
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: 20150120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5694301 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |