JP2011107987A - 電子機器用ソフトウェア構造 - Google Patents

電子機器用ソフトウェア構造 Download PDF

Info

Publication number
JP2011107987A
JP2011107987A JP2009262330A JP2009262330A JP2011107987A JP 2011107987 A JP2011107987 A JP 2011107987A JP 2009262330 A JP2009262330 A JP 2009262330A JP 2009262330 A JP2009262330 A JP 2009262330A JP 2011107987 A JP2011107987 A JP 2011107987A
Authority
JP
Japan
Prior art keywords
processing
application
software
data
software structure
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.)
Granted
Application number
JP2009262330A
Other languages
English (en)
Other versions
JP5482136B2 (ja
Inventor
Yasuhiko Abe
保彦 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Mobile Communications Ltd
Original Assignee
Fujitsu Toshiba Mobile Communication Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Toshiba Mobile Communication Ltd filed Critical Fujitsu Toshiba Mobile Communication Ltd
Priority to JP2009262330A priority Critical patent/JP5482136B2/ja
Publication of JP2011107987A publication Critical patent/JP2011107987A/ja
Application granted granted Critical
Publication of JP5482136B2 publication Critical patent/JP5482136B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ハードウェア変更の影響を受ける機能拡張部分のソフトウェア移植作業を軽減する。
【解決手段】アプリプラットフォーム層12からアプリコンテキストで実施する処理ソフト17を抜き出して別プロセス処理部20に移行させ、ミドル層13の主処理ソフト18を分割した解析、翻訳等の情報処理ソフト21を上記別プロセス処理部20に移行させ、上記主処理ソフト18を分割したリソース排他/割付処理ソフトをシステム層14とのインターフェース22とし、別プロセス処理部20のインターフェースをアプリケーション向けI/F16及びシステム層I/F22と接続固定する。ここで、ハードウェア変更が生じたとしても機能拡張部分のソフトウェアが主プロセス処理部20に移行され、ソース排他/割付処理がシステム層I/F22に組み込まれてドライバ19にアクセスできるため、拡張部分のソフトウェアを移植する作業は基本的に不要となる。
【選択図】 図1

Description

本発明は、例えば携帯電話機等の処理機能の拡張を伴う電子機器において、処理機能を実行するための処理をアプリケーション処理、複数のデータ処理、ハードウェア制御と階層化したソフトウェア構造に係り、特にハードウェア変更時において機能拡張部分のソフトウェア移植作業を構造的に軽減するための手法に関する。
携帯電話機のような小型コンピュータ搭載の電子機器では、アプリケーションの機能を標準仕様から拡張している場合に、チップセット等のハードウェアに変更が生じると、機能拡張部分のソフトウェアをハードウェアに埋め込む移植作業が行われている。
しかしながら、ブラウザのマルチメディア処理のような機能の拡張は頻繁に行われているため、ハードウェア変更の影響を受ける機能拡張した部分の移植作業も必然的に多くなっている。
特許文献1には、開発効率を高めるために、ゲート管理機能を基本部から独立させ、機本部、ミドルウェア部、アプリケーション部をそれぞれ独立したコンポーネントとして分離し、ゲート管理部によって各コンポーネント単位に入れ替えるソフトウェア構成とする発明が記載されている。
特開2005−084900号公報
上述の如く、従来の電子機器では、ハードウェア変更の影響を受ける機能拡張部分のソフトウェア移植作業を軽減する手法が求められている。
本発明は上記事情を考慮してなされたもので、ハードウェア変更の影響を受ける機能拡張部分のソフトウェア移植作業を軽減することのできる電子機器用ソフトウェア構造を提供することを目的とする。
上記目的を達成するために、本発明に係る電子機器用ソフトウェア構造は、以下のように構成される。
(1)処理機能の拡張を伴う電子機器に用いられ、前記処理機能を実行するための処理をアプリケーション処理、複数のデータ処理、ハードウェア制御処理と階層化したソフトウェア構造において、前記処理の内、ハードウェア変更によって影響を受ける部分と受けない部分に分離し、影響を受けない部分の処理を別プロセスとして格納する別プロセス処理部と、前記別プロセス処理部に格納された処理を元の階層と接続するためのインターフェース部とを具備することを一態様とする。
(2)(1)の構成において、前記別プロセス処理部には、前記アプリケーション処理毎に管理が必要な処理とハードウェア制御処理を分離したデータ処理を格納し、前記インターフェース部は、前記アプリケーション処理が要求する処理に対して識別情報を発行して前記アプリケーション処理と前記ハードウェア制御処理を分離したデータ処理とを連携させることを一態様とする。
(3)(2)の構成において、前記アプリーション処理と前記ハードウェア制御処理を分離したデータ処理が限定された同じデータ空間を参照、書き込みする共有の記録領域をさらに備え、この領域を使用してデータの受け渡しをすること一態様とする。
(4)(2)の構成において、前記アプリケーション処理を主プロセスとし、前記データ処理を従プロセスとして、主プロセスから従プロセス上のデータ空間を参照、書き込みする手段と、前記主プロセスから書き込まれたデータを従プロセスで処理し、結果を主プロセスで参照可能な状態とすることを一態様とする。
本発明によれば、ハードウェア変更の影響を受ける機能拡張部分のソフトウェア移植作業を軽減することのできる電子機器用ソフトウェア構造を提供することができる。
本発明が適用される携帯電話機用チップセットに対するソフトウェア構造の一実施形態を示す階層構成図。 図1に示す実施形態を説明するための従来の階層構造を示す階層構成図。 図1に示す実施形態の具体的な処理の流れを示すシーケンス図。 図1の実施形態とは別の処理方式による他の実施形態を示す階層構成図。 図4に示す実施形態の具体的な処理の流れを示すシーケンス図。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
図1は本発明の一実施形態として、携帯電話機用チップセットに対するソフトウェア構造を示す階層構成図、図2は図1に示す実施形態を説明するための従来の階層構造を示す階層構成図である。
図1、図2に示すソフトウェア構造は、アプリ層11、アプリプラットフォーム層12、ミドル層13、システム層14を備える。ここで、図2に示す従来の構造では、アプリ層11に各種アプリケーション15が格納され、アプリプラットフォーム層12にアプリケーション向けインターフェース(以下、アプリI/F)16及びアプリコンテキストで実施する、アプリ処理毎に個別の管理が必要な状態の遷移、情報等を含む処理(以下、コンテキスト用処理)17が配置され、ミドル層13に主処理18が配置され、システム層14にはドライバ19が配置される。主処理ソフト18は、リソースの排他/割付、解析、翻訳等の情報処理を実行するプログラムである。
上記構成において、ハードウェアに変更が生じた場合、機能拡張部分であるコンテキスト用処理17、主処理18の解析、翻訳等の情報処理、ドライバ19の処理を実行させるシステム層I/F22が影響を受ける。このため、従来ではハードウェア(チップセット等)の変更に伴い、ドライバ19を含むシステム層14の処理の変更が余儀なくされ、過去のソフト資産を移植する際に、その影響を受ける処理17,18等の修正を行わなければならなかった。
そこで、図1に示すソフトウェア構造では、アプリプラットフォーム層12からアプリコンテキストで実施するコンテキスト用処理17を抜き出して別プロセス空間の処理部(以下、別プロセス処理部)20に移行させる。また、ミドル層13の主処理18を解析、翻訳等の情報処理とリソース排他/割付処理に分割し、分割した情報処理21を上記別プロセス処理部20に移行させ、リソース排他/割付処理をシステム層14とのインターフェース22とする。そして、別プロセス処理部20のインターフェースをアプリI/F16及びシステム層I/F22と接続固定する。アプリI/F16及びシステム層I/F22は、アプリケーション処理15が要求する処理に対して識別のためのID情報を発行し、アプリケーション処理15とハードウェア制御処理を分離した情報(データ)処理とを連携させる処理を行う。
上記システム層14には共有(シェアード)メモリ23が配置される。この共有メモリ23には、アプリケーション15、コンテキスト用処理17が共にアクセス可能とする。
上記構成では、アプリケーション15はアプリケーション向けI/F16を介して別プロセス処理部20に移行させたコンテキストで実施する処理17、解析、翻訳等の情報処理ソフト21に処理を実行させ、情報処理ソフト21からシステム層I/F22を通じてドライバ19にアクセスすることができる。
ここで、ハードウェア変更が生じたとすると、従来はハードウェア変更により影響を受けていたプロセスの内の処理17,18にあった処理を別のプロセスに移行しているため、コンテキスト用処理17、情報処理18を修正する必要がなくなり、ソフト資産の移植にあたり、作業を軽減することができる。
具体的な処理の流れについて、図3に示すシーケンス図を参照して説明する。
まず、アプリーション15では、コンテキスト用処理17に処理を要求するとき、アプリI/F16に対して処理要求と共に処理対象データを格納した共有メモリ23のアクセス領域を指定するアドレス情報を送る。
アプリI/F16は、処理要求を受けると、処理内容を識別するためのID(Identification:識別)情報を発行してアプリケーション15に返送し、そのID情報をアプリケーション15からの処理要求及びアドレス情報に付加してコンテキスト用処理17に送る。
コンテキスト用処理17は、指定アドレス情報に従って処理対象データを格納した共有メモリ23にアクセスし、アクセス先のデータについて処理要求で指示される処理を実行し、処理結果を共有メモリ23の適当な領域に書き込み、その書き込みアドレス情報をID情報と共に処理終了通知に付加してアプリI/F16に送る。
アプリI/F16は、コンテキスト用処理17から処理終了通知を受けると、アプリケーション15にID情報で指定される処理の終了通知と書き込みアドレス情報を送る。これを受けたアプリケーション15は、終了通知から指示した処理が終了したことを認識し、指定された書き込みアドレスに基づき共有メモリ23にアクセスし、そのアドレスに書き込まれたデータを利用する。
ここで、ハードウェア変更が生じたとしても、従来はハードウェア変更の影響を受けていたプロセスの内のコンテキスト用処理17が別のプロセスに移行しているため、コンテキスト用処理17の修正は不要である。このように、ソフト資産の移植にあたり、作業を軽減することができる。
したがって、上記構成によるソフトウェア構造によれば、ハードウェア変更に伴って影響を受けていた各層の機能拡張処理を別プロセスで実行するようにしているため、拡張部分のソフトウェアの移植作業を軽減することができる。
図4は図1に示した実施形態とは別の処理方式による他の実施形態のソフトウェア構造を示す階層構成図である。すなわち、図1に示した実施形態では、共有メモリ23を備えている場合について説明したが、図4に示す構成図のように、共有メモリ23を用いずに、別プロセス処理部20が備えるバッファメモリ24を利用することも可能である。この場合、アプリケーション15は主プロセスとして外部からバッファメモリ24の読み出し/書き込みが可能であり、コンテキスト用処理17は従プロセスとして内部のバッファメモリ24のみの読み出し/書き込みが可能であるものとする。
具体的な処理の流れについて、図5に示すシーケンス図を参照して説明する。
図5において、アプリケーション15では、コンテキスト用処理17に処理を要求するとき、アプリI/F16に対して処理要求のみを送る。
アプリI/F16は、処理要求を受けると、処理内容を識別するためのID(Identification:識別)情報を発行してアプリケーション15に返送し、そのID情報をアプリケーション15からの処理要求に付加してコンテキスト用処理17に送る。
コンテキスト用処理17は、処理要求を受けると、バッファメモリ24の作業領域を示す書き込みアドレス情報をID情報と共にアプリI/F16に返送する。アプリI/F16は受け取った書き込みアドレス情報及びID情報をアプリケーション15に通知する。
この通知を受けたアプリケーション15は、通知によって指定された書き込みアドレス情報に従ってバッファメモリ24の作業領域に被処理データを書き込み、書き込み終了時に書き込み終了情報を発行してID情報と共にアプリI/F16に送る。アプリI/F16は、書き込み終了情報+ID情報を受け取ると、その情報をコンテキスト用処理17に送る。
コンテキスト用処理17は、書き込み終了情報+ID情報を受け取ると、バッファメモリ24にアクセスしてアプリケーション15に通知した書き込みアドレスから被処理データを受け取り、処理要求で指示された処理を実行し、処理結果をバッファメモリ24の適当な領域に書き込み、その処理結果の書き込みアドレス情報をID情報と共に処理終了通知に付加してアプリI/F16に送る。
アプリI/F16は、コンテキスト用処理17から送られてきた処理終了通知+書き込みアドレス情報+ID情報を受けると、アプリケーション15にその情報を通知する。これを受けたアプリケーション15は、指定された書き込みアドレスに基づきバッファメモリ24にアクセスし、そのアドレスに書き込まれたデータを利用する。
上記構成においても、先に述べた実施形態と同様に、ハードウェア変更が生じたとき、従来はハードウェア変更の影響を受けていたプロセスの内のコンテキスト用処理17が別のプロセスに移行しているため、コンテキスト用処理17の修正は不要である。このように、ソフト資産の移植にあたり、作業を軽減することができる。
さらに、上記各実施形態の構成によれば、ドライバ、システム(例えばファイルシステムなど)処理等に密結合していた処理を分離し、汎用的なインターフェースで結合するようにしているので、ハードウェア変更時の修正が極めて容易になる。
以上のように、本発明によれば、分離された処理を、チップセット等のハードウェアの変更により変更されるドライバ、システム(OS含む)処理の影響を受けない別プロセスに配置するようにしているので、ハードウェア変更時の修正作業が軽減される。
ここで、異なるプロセス上の処理が限定された同じデータ空間を参照、書き込みすることができる場合には、この領域を使用してデータの受け渡しが可能である(図3参照)。
あるいは、主プロセスから従プロセス上のデータ空間を参照、書き込みでき、主プロセスから書き込まれたデータを従プロセスで処理し、結果を主プロセスで参照可能なようにしてもよい(図5参照)。
上記実施形態では、ハードウェア変更に伴って影響を受ける機能拡張処理を全て別プロセスで実行できるようにしたが、一部の機能拡張処理だけでも効果的である。また、本発明は携帯電話機に限定されるものではなく、小型コンピュータ搭載の電子機器にも適用可能であることは言うまでもない。
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、本発明によれば、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
11…アプリ層、12…アプリプラットフォーム層、13…ミドル層、14…システム層、15…アプリケーション、16…アプリケーション向けI/F、17…コンテキスト用処理、18…主処理部、19…ドライバ、20…別プロセス処理部、21…情報処理、22…システム層I/F、23…共有メモリ、24…バッファメモリ。

Claims (4)

  1. 処理機能の拡張を伴う電子機器に用いられ、前記処理機能を実行するための処理をアプリケーション処理、複数のデータ処理、ハードウェア制御処理と階層化したソフトウェア構造において、
    前記処理の内、ハードウェア変更によって影響を受ける部分と受けない部分に分離し、影響を受けない部分の処理を別プロセスとして格納する別プロセス処理部と、
    前記別プロセス処理部に格納された処理を元の階層と接続するためのインターフェース部と
    を具備することを特徴とする電子機器のソフトウェア構造。
  2. 前記別プロセス処理部には、前記アプリケーション処理毎に管理が必要な処理とハードウェア制御処理を分離したデータ処理を格納し、
    前記インターフェース部は、前記アプリケーション処理が要求する処理に対して識別情報を発行して前記アプリケーション処理と前記ハードウェア制御処理を分離したデータ処理とを連携させることを特徴とする請求項1記載の電子機器のソフトウェア構造。
  3. 前記アプリーション処理と前記ハードウェア制御処理を分離したデータ処理が限定された同じデータ空間を参照、書き込みする共有の記録領域をさらに備え、この領域を使用してデータの受け渡しをすることを特徴とする請求項2記載の電子機器のソフトウェア構造。
  4. 前記アプリケーション処理を主プロセスとし、前記データ処理を従プロセスとして、主プロセスから従プロセス上のデータ空間を参照、書き込みする手段と、前記主プロセスから書き込まれたデータを従プロセスで処理し、結果を主プロセスで参照可能な状態とすることを特徴とする請求項2記載の電子機器のソフトウェア構造。
JP2009262330A 2009-11-17 2009-11-17 プログラム Expired - Fee Related JP5482136B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009262330A JP5482136B2 (ja) 2009-11-17 2009-11-17 プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009262330A JP5482136B2 (ja) 2009-11-17 2009-11-17 プログラム

Publications (2)

Publication Number Publication Date
JP2011107987A true JP2011107987A (ja) 2011-06-02
JP5482136B2 JP5482136B2 (ja) 2014-04-23

Family

ID=44231382

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009262330A Expired - Fee Related JP5482136B2 (ja) 2009-11-17 2009-11-17 プログラム

Country Status (1)

Country Link
JP (1) JP5482136B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11237198A (ja) * 1998-02-24 1999-08-31 Denso Corp 冷媒蒸発器
JPH11237981A (ja) * 1998-02-23 1999-08-31 Sony Corp 受信装置
JP2004192541A (ja) * 2002-12-13 2004-07-08 Denso Corp 車両用制御プログラム、車両用制御装置、車両用制御プログラムの生成方法
JP2007052668A (ja) * 2005-08-18 2007-03-01 Sony Corp 情報処理システム及び情報処理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11237981A (ja) * 1998-02-23 1999-08-31 Sony Corp 受信装置
JPH11237198A (ja) * 1998-02-24 1999-08-31 Denso Corp 冷媒蒸発器
JP2004192541A (ja) * 2002-12-13 2004-07-08 Denso Corp 車両用制御プログラム、車両用制御装置、車両用制御プログラムの生成方法
JP2007052668A (ja) * 2005-08-18 2007-03-01 Sony Corp 情報処理システム及び情報処理方法

Also Published As

Publication number Publication date
JP5482136B2 (ja) 2014-04-23

Similar Documents

Publication Publication Date Title
KR102137761B1 (ko) 이종 통합 메모리부 및 그것의 확장 통합 메모리 스페이스 관리 방법
US7472252B2 (en) Merging identical memory pages
US10592470B2 (en) Discovery of calling application for control of file hydration behavior
TW201220197A (en) for improving the safety and reliability of data storage in a virtual machine based on cloud calculation and distributed storage environment
US9478000B2 (en) Sharing non-page aligned memory
KR102106261B1 (ko) 메모리 컨트롤러의 작동 방법과 이를 포함하는 장치들의 작동 방법들
JP2017527877A (ja) フラッシュメモリから/フラッシュメモリへデータを読み取る/書き込むための方法および装置、ならびにユーザ機器
US9311153B2 (en) Core affinity bitmask translation
KR102617154B1 (ko) 저장된 교체 정보를 갖는 스누프 필터, 이에 대한 방법 및 희생자 전용 캐시와 스누프 필터 공유 교체 정책을 포함하는 시스템
US9424198B2 (en) Method, system and apparatus including logic to manage multiple memories as a unified exclusive memory
CN115470156A (zh) 基于rdma的内存使用方法、系统、电子设备和存储介质
CN113678104A (zh) 设备内符号数据移动系统
JP2018508894A (ja) マルチコアシステムにおいてデータ訪問者ディレクトリにアクセスするための方法及びデバイス
WO2014190700A1 (zh) 一种内存访问的方法、缓冲调度器和内存模块
US10657274B2 (en) Semiconductor device including memory protector
US20050246502A1 (en) Dynamic memory mapping
JP5482136B2 (ja) プログラム
KR102174337B1 (ko) 메모리 시스템 및 이를 포함하는 전자 장치
WO2023045250A1 (zh) 一种内存池资源共用的方法、装置、设备及可读介质
WO2021203591A1 (zh) 异构云存储系统的数据处理方法及其可读介质和系统
JPWO2007088582A1 (ja) 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体
CN104253825A (zh) 网络数据浏览方法和装置
US9251100B2 (en) Bitmap locking using a nodal lock
CN115658351B (zh) 2d拷贝方法、装置、电子设备和计算机可读存储介质
KR100652578B1 (ko) 이동단말기의 메모리 관리 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130910

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131219

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: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140203

R150 Certificate of patent or registration of utility model

Ref document number: 5482136

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees