(57)【特許請求の範囲】
【請求項１】
アプリケーション、ファイルシステム、及びデバイスドライバを含んで成る組み込みシステムであって、
前記アプリケーションから共通のインタフェースで利用可能とするために、前記ファイルシステムとして複数のファイルシステム及び前記デバイスドライバとして複数のデバイスドライバを管理及び制御する共通管理部を有し、
前記共通管理部は、
（１）前記アプリケーションと前記複数のファイルシステムとの間の、上位レイヤとして、前記アプリケーションから前記複数のファイルシステムを共通のインタフェースで利用可能とする処理を行う上位管理部と、
（２）前記複数のファイルシステムと前記複数のデバイスドライバとの間の、下位レイヤとして、前記ファイルシステムから前記デバイスドライバを共通のインタフェースで利用可能とする処理を行う下位管理部と、
（３）前記上位管理部との連携のインタフェース及び前記下位管理部との連携のインタフェースを有し、前記上位管理部の前記複数のファイルシステムの前記共通のインタフェースで利用可能とするための管理と、前記下位管理部の前記複数のデバイスドライバの前記共通のインタフェースで利用可能とするための管理とを、管理情報を用いて実現する処理を行う、レイヤ管理部と、を有し、
前記上位管理部は、
前記アプリケーションに対して前記ファイルシステム及び前記デバイスドライバに関する共通の操作インタフェースを提供する上位共通インタフェース部と、
前記複数のファイルシステムに共通する制御の処理を行う上位ファイルシステム共通制御部と、
前記複数のファイルシステムの個々のファイルシステムに固有の制御の処理を行う上位ファイルシステム固有制御部と、
前記複数のファイルシステムに対するインタフェースを提供する制御インタフェース部と、
前記複数のデバイスドライバに共通する制御の処理を行う上位デバイスドライバ共通制御部と、
前記複数のデバイスドライバの個々のデバイスドライバに固有の制御の処理を行う上位デバイスドライバ固有制御部と、
前記レイヤ管理部との連携のための管理インタフェース部と、を有し、
前記下位管理部は、
前記ファイルシステム及び前記レイヤ管理部に対して共通のインタフェースを提供する下位共通インタフェース部と、
前記複数のデバイスドライバに共通する制御の処理を行う下位デバイスドライバ共通制御部と、
前記複数のデバイスドライバの個々のデバイスドライバに固有の制御の処理を行う下位デバイスドライバ固有制御部と、を有し、
前記レイヤ管理部は、
前記上位管理部との連携のための上位連携インタフェース部と、
前記ファイルシステムと前記デバイスドライバとの関係を前記管理情報に管理する処理を行う管理部と、
前記管理情報に基づいて前記ファイルシステム及び前記デバイスドライバを制御する処理を行う制御部と、
前記下位管理部との連携のための下位連携インタフェース部と、を有し、
前記管理部は、前記管理情報に、前記複数の各々のファイルシステムの識別子を含む情報と、前記複数の各々のデバイスドライバの識別子を含む情報と、前記ファイルシステムとそのファイルシステムが利用する前記デバイスドライバとの組み合わせの関係を示す管理ＩＤと、を登録して管理し、
前記レイヤ管理部は、前記アプリケーションから前記上位管理部を通じて利用準備のアクセスを受けると、前記管理情報を確認して、登録ＩＤを提供し、前記アプリケーションから前記登録ＩＤを用いて前記上位管理部を通じて利用登録のアクセス受けると、利用準備として、前記アプリケーションが利用する前記ファイルシステムと前記デバイスドライバとの組み合わせについての前記管理ＩＤを登録し、前記管理ＩＤを前記アプリケーションに渡して利用許可し、
前記上位管理部は、前記アプリケーションから前記管理ＩＤを用いて前記利用登録済みの前記ファイルシステムに対するアクセスを受けると、前記デバイスドライバに共通する制御の処理を行う場合には、前記ファイルシステムから前記下位管理部へ直接アクセスさせ、前記デバイスドライバに固有の制御の処理を行う場合には、前記レイヤ管理部を通じて前記下位管理部へアクセスさせ、
前記下位管理部は、前記直接アクセスに応じて前記デバイスドライバにアクセスして前記共通の処理を行わせ、前記レイヤ管理部を通じたアクセスに応じて前記デバイスドライバに固有の処理を行わせる、
組み込みシステム。
【請求項２】
アプリケーション、ファイルシステム、及びデバイスドライバを含んで成る組み込みシステムにおいて実行されるプログラムであって、
前記アプリケーションから共通のインタフェースで利用可能とするために、前記ファイルシステムとして複数のファイルシステム及び前記デバイスドライバとして複数のデバイスドライバを管理及び制御する共通管理部を実現するプログラムを有し、
前記共通管理部のプログラムは、
（１）前記アプリケーションと前記複数のファイルシステムとの間の、上位レイヤとして、前記アプリケーションから前記複数のファイルシステムを共通のインタフェースで利用可能とする処理を行う上位管理部を実現するプログラムと、
（２）前記複数のファイルシステムと前記複数のデバイスドライバとの間の、下位レイヤとして、前記ファイルシステムから前記デバイスドライバを共通のインタフェースで利用可能とする処理を行う下位管理部を実現するプログラムと、
（３）前記上位管理部との連携のインタフェース及び前記下位管理部との連携のインタフェースを有し、前記上位管理部の前記複数のファイルシステムの前記共通のインタフェースで利用可能とするための管理と、前記下位管理部の前記複数のデバイスドライバの前記共通のインタフェースで利用可能とするための管理とを、管理情報を用いて実現する処理を行う、レイヤ管理部を実現するプログラムと、を有し、
前記上位管理部のプログラムは、
前記アプリケーションに対して前記ファイルシステム及び前記デバイスドライバに関する共通の操作インタフェースを提供する上位共通インタフェース部を実現するプログラムと、
前記複数のファイルシステムに共通する制御の処理を行う上位ファイルシステム共通制御部を実現するプログラムと、
前記複数のファイルシステムの個々のファイルシステムに固有の制御の処理を行う上位ファイルシステム固有制御部を実現するプログラムと、
前記複数のファイルシステムに対するインタフェースを提供する制御インタフェース部を実現するプログラムと、
前記複数のデバイスドライバに共通する制御の処理を行う上位デバイスドライバ共通制御部を実現するプログラムと、
前記複数のデバイスドライバの個々のデバイスドライバに固有の制御の処理を行う上位デバイスドライバ固有制御部を実現するプログラムと、
前記レイヤ管理部との連携のための管理インタフェース部を実現するプログラムと、を有し、
前記下位管理部のプログラムは、
前記ファイルシステム及び前記レイヤ管理部に対して共通のインタフェースを提供する下位共通インタフェース部を実現するプログラムと、
前記複数のデバイスドライバに共通する制御の処理を行う下位デバイスドライバ共通制御部を実現するプログラムと、
前記複数のデバイスドライバの個々のデバイスドライバに固有の制御の処理を行う下位デバイスドライバ固有制御部を実現するプログラムと、を有し、
前記レイヤ管理部のプログラムは、
前記上位管理部との連携のための上位連携インタフェース部を実現するプログラムと、
前記ファイルシステムと前記デバイスドライバとの関係を前記管理情報に管理する処理を行う管理部を実現するプログラムと、
前記管理情報に基づいて前記ファイルシステム及び前記デバイスドライバを制御する処理を行う制御部を実現するプログラムと、
前記下位管理部との連携のための下位連携インタフェース部を実現するプログラムと、を有し、
前記管理部のプログラムは、前記管理情報に、前記複数の各々のファイルシステムの識別子を含む情報と、前記複数の各々のデバイスドライバの識別子を含む情報と、前記ファイルシステムとそのファイルシステムが利用する前記デバイスドライバとの組み合わせの関係を示す管理ＩＤと、を登録して管理する処理を実行させ、
前記レイヤ管理部のプログラムは、前記アプリケーションから前記上位管理部を通じて利用準備のアクセスを受けると、前記管理情報を確認して、登録ＩＤを提供し、前記アプリケーションから前記登録ＩＤを用いて前記上位管理部を通じて利用登録のアクセス受けると、利用準備として、前記アプリケーションが利用する前記ファイルシステムと前記デバイスドライバとの組み合わせについての前記管理ＩＤを登録し、前記管理ＩＤを前記アプリケーションに渡して利用許可する処理を実行させ、
前記上位管理部のプログラムは、前記アプリケーションから前記管理ＩＤを用いて前記利用登録済みの前記ファイルシステムに対するアクセスを受けると、前記デバイスドライバに共通する制御の処理を行う場合には、前記ファイルシステムから前記下位管理部へ直接アクセスさせ、前記デバイスドライバに固有の制御の処理を行う場合には、前記レイヤ管理部を通じて前記下位管理部へアクセスさせる処理を実行させ、
前記下位管理部のプログラムは、前記直接アクセスに応じて前記デバイスドライバにアクセスして前記共通の処理を行わせ、前記レイヤ管理部を通じたアクセスに応じて前記デバイスドライバに固有の処理を行わせる処理を実行させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み込み装置の技術に関し、ファイルシステムやドライバ（デバイスドライバ）の管理の技術に関する。
【背景技術】
【０００２】
近年、組み込み装置は特別なものではなくなり、例えば携帯電話を例に挙げても身近で多様なものが利用されており、今後は多種多様な組み込み装置の需要が見込まれる。
【０００３】
一般に組み込み装置の開発では、対象機器の制約や、最適にハードウェアを制御する必要性から、規模の大きい汎用ＯＳではなく、小規模でカスタマイズ可能なＯＳが利用されている。また、ハードウェア毎に特化した固有処理を組み込み装置（対象機器）に独自実装し、様々な機能を実現してサービスを提供している。
【０００４】
これら組み込み装置では、今後、処理が複雑化・肥大化する傾向にあり、これら開発における制御の標準化を図る方式が求められている。例えば特開２００４−０７０９６４号公報（特許文献１）では、上記開発における制御の標準化を図る方法について記載されている。
【０００５】
特許文献１（「デバイスドライバ制御共通化方法」）では、上位アプリケーション階層と下位デバイスドライバ階層との間に中間層としてデバイス独立アクセス階層を位置させて相互インタフェースを提供し、上位アプリケーション階層と下位デバイスドライバ階層を独立的に共通化して使用可能に使用する方法を提供する旨が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−０７０９６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
組み込み装置の開発は、汎用ＯＳではなく、TRON，LINUX(登録商標)といった利便性の良く拡張に優れたリアルタイム・マルチタスク管理が可能なＯＳが多く利用される。その反面、ＯＳの中核となるカーネル以外では、ファイルシステムや通信プロトコルスタックといったものを含め、必要となる対象機器毎に準備する必要がある。
【０００８】
また、組み込み装置でハードウェアを制御するプログラムについては明確に規格化されておらず、個々のデバイスを制御するプログラムを管理するような汎用ＯＳが持つ、デバイスドライバの規定に相当するものは存在しない。
【０００９】
このため、個々のハードウェアへの合わせ込みは実装依存が実情であり、ＯＳ及びハードウェア双方のバランスを意識した難易度の高い開発が求められる。
【００１０】
一方、短期開発が要求されるサービスを実現させるアプリケーション開発においても、ハードウェア制御や、ＯＳ、ファイルシステム、通信プロトコルスタックといった個々の要素を意識して組み込み装置毎の開発を行わざるを得ず、ますます大規模化する組み込みシステムに対して、迅速な対応と開発サイクルの維持が困難となっている。
【００１１】
これらへの対応として、例えば前記特許文献１では、ドライバ制御の共通化を図るための標準化規則が記載されている。しかし、特許文献１の場合では、ドライバ（デバイスドライバ）とアプリケーションとの間の関係に対応したものとなり、ファイルシステムや通信プロトコルスタックといった、組み込み装置の開発で必要な要素技術への適応まではできていない。
【００１２】
以上を鑑み、本発明の主な目的は、組み込みシステム（組み込み装置）の技術に関して、アプリケーション、デバイスドライバ及びファイルシステム等の要素の汎用性（独立性）・再利用性を高める（言い換えれば各々固有（異種）の要素を並用可能とする）ことができる技術を提供することである。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明のうち代表的な形態は、組み込み装置（組み込み装置におけるファイルシステム及びデバイスドライバの管理と制御の方式）などであって、以下に示す構成を有することを特徴とする。
【００１４】
本形態の組み込み装置（管理方式）は、第１に、複数（異種）のデバイスドライバにおけるそれぞれの固有デバイスドライバを共通で管理する手段を備え、第２に、固有のデバイスドライバが具備する機能を固有機能として提供する手段を備え、第３に、複数（多種）のファイルシステムへの共通なアクセス手段を備え、更に第４に、ファイルシステムとデバイスドライバとの関係を管理する手段を備える。
【００１５】
第１に、本形態の組み込み装置（管理方式）は、上位アプリケーションと複数のファイルシステムとの間に、複数のファイルシステムを共通管理（差異の吸収など）する処理を行う上位管理部（上位レイヤ）を有し、上位アプリケーションに対して汎用性の高いインタフェースを提供する。
【００１６】
第２に、本形態の組み込み装置（デバイスドライバ管理方式）は、複数のファイルシステムと複数のデバイスドライバの間に、複数のデバイスドライバを共通管理する処理を行う下位管理部（下位レイヤ）を有し、上位（アプリケーション及びファイルシステム）に対して、汎用性の高いインタフェースを提供する。
【００１７】
第３に、本形態の組み込み装置（ファイルシステム及びデバイスドライバの管理方式）は、上記インタフェース、複数のファイルシステムの共通管理、複数のデバイスドライバの共通管理を統合管理するレイヤ管理部を備える。
【００１８】
本形態の組み込み装置は、例えば、プログラム処理で実現される、複数のファイルシステム及び複数のデバイスドライバを管理及び制御する共通管理部を有し、前記共通管理部は、（１）前記アプリケーションと前記複数のファイルシステムとの間に、前記複数のファイルシステムを共通管理してそれらの差異を吸収し前記アプリケーションに対して汎用性の高いインタフェースを提供する処理を行う上位管理部と、（２）前記複数のファイルシステムと前記複数のデバイスドライバとの間に、前記複数のデバイスドライバを共通管理してそれらの差異を吸収し前記アプリケーション及びファイルシステムに対して汎用性の高いインタフェースを提供する処理を行う下位管理部と、（３）前記上位管理部とのインタフェース及び前記下位管理部とのインタフェースを有し、前記上位管理部の複数のファイルシステムの共通管理と前記下位管理部の複数のデバイスドライバの共通管理とを管理情報を用いて総合管理する処理を行う、レイヤ管理部と、を有する。
【発明の効果】
【００１９】
本発明のうち代表的な形態によれば、組み込みシステム（組み込み装置）の技術に関して、アプリケーション、デバイスドライバ及びファイルシステム等の要素の汎用性（独立性）・再利用性を高める（言い換えれば各々固有（異種）の要素を並用可能とする）ことができる。
【００２０】
特に、各々のファイルシステムやデバイスドライバが変更された場合でも、共通管理部が差異を吸収するので、アプリケーションからは既存の仕組み（インタフェース）のまま利用可能となる。また同様に、アプリケーションに変更がある場合でも、上記共通管理部があるため、ファイルシステムやデバイスドライバへその影響の波及を避けることができる。上記のように共通化（カプセル化）により、アプリケーション、ファイルシステム及びデバイスドライバのそれぞれの独立性を高めることにより、開発変更の影響度を抑えることができ、新規開発時の部分転用が容易となり（流用性を確保でき）、システム（組み込み装置）の開発の短期化が可能となる効果が期待できる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施の形態のシステム（組み込み装置）の構成として、ファイルシステム及びデバイスドライバの管理・制御方式の機能ブロックを示す図である。
【図２】共通管理部のうちの上位管理部の構成例を示す図である。
【図３】共通管理部のうちのレイヤ管理部の構成例を示す図である。
【図４】共通管理部のうちの下位管理部の構成例を示す図である。
【図５】共通管理部及び管理情報の構成例を示す図である。
【図６】本システムでの動作シーケンス例を示す図である。
【発明を実施するための形態】
【００２２】
以下、図１〜図６を用いて、本発明の一実施の形態のシステム（組み込み装置、ファイルシステム及びデバイスドライバの管理方式など）について詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。
【００２３】
本方式では、組み込み装置において、サービスを実施するアプリケーションと、ファイルシステムの使用を前提とする複数の異種のデバイスドライバとの間に、これらファイルシステム及びデバイスドライバの差異を吸収する共通の管理部（ファイルシステム・デバイスドライバ管理部）を設け、アプリケーションに対して共通の操作手段（インタフェース）により、ファイルシステムと連動してデバイスの持つ機能を提供する。上記共通の管理部による、ファイルシステムとデバイスドライバとの双方の共通管理と、個々（固有）のデバイスドライバの差異の吸収（カプセル化）により、アプリケーション、ファイルシステム及びデバイスドライバ等を含む要素の汎用性（独立性）を高め、再利用可能とする。
【００２４】
本形態は、新たに設けた共通管理部により複数のファイルシステムと複数のデバイスドライバの管理・制御を行う方式である。各々のファイルシステムやデバイスドライバが変更された場合でも、共通管理部が差異を吸収し、アプリケーションからは既存の仕組み（インタフェース）のまま利用可能となる。また、アプリケーションに変更がある場合でも、上記共通管理部があるため、ファイルシステムやデバイスドライバへその影響の波及を避けることができる。
【００２５】
［システム構成］
図１に、本実施の形態のシステム（組み込み装置）の全体構成として、ファイルシステム及びデバイスドライバの管理・制御方式の機能ブロック構成を示している。本システム（組み込み装置）は、組み込みアプリケーション１０１（ＡＰと略す）と、複数のファイルシステム１０３（ＦＳと略す）と、複数のデバイスドライバ１０４（ＤＤと略す）と、ＦＳ・ＤＤ管理部（共通管理部、レイヤ管理部）１０２とを有する構成である。なお本システム（組み込み装置）は、その他図示しないが、一般的に組み込み装置に具備されるＯＳ（カーネル）や、ＤＤ１０４からアクセスされる内部／外部のハードウェア（デバイス）等を備える。デバイスの一例は、ディスプレイ、ＵＳＢモジュールなどがある。１０２を含む各部は、組み込み装置における一般的なプロセッサ及びメモリ等による本実施の形態のプログラムの処理（実装された論理回路の処理など）で実現できる。
【００２６】
ＡＰ１０１は、組み込みで使用するアプリケーション（サービスを実施するプログラム）であり、１つ以上を有する。
【００２７】
ＦＳ１０３は、ＡＰ１０１が利用するファイルシステムであり、図１では異種で各々固有の２つ（＃１、＃２）を有する場合である。
【００２８】
ＤＤ１０４は、ＦＳ１０３の使用を前提とするデバイスドライバであり、ＡＰ１０１がＦＳ１０３を通じて利用するデバイス（ハードウェア）を制御するデバイスドライバであり、図１では異種で各々固有の２つ（＃１、＃２）を有する場合である。
【００２９】
そして本システムは、これらＡＰ１０１とＦＳ１０３とＤＤ１０４との間に、共通管理部（レイヤ管理部）であるＦＳ・ＤＤ管理部１０２を備え、このＦＳ・ＤＤ管理部１０２は、上位管理部２１（上位レイヤ）と、下位管理部２２（下位レイヤ）と、それら（２１，２２）を管理するレイヤ管理部２０とから構成される。
【００３０】
ＦＳ・ＤＤ管理部１０２では、上位管理部２１でＡＰ１０１に対する１０３の個別ＦＳの差異を吸収し、デバイス操作を共通で提供する。
【００３１】
またＦＳ・ＤＤ管理部１０２は、デバイス固有の機能（即ち固有のＤＤ１０４の機能）については、個別に提供可能とする拡張機能を具備する（オプション）。
【００３２】
レイヤ管理部２０では、個別のＤＤ１０４（対応する個別デバイス）毎の情報を一元管理すると共に、ＦＳ１０３とＤＤ１０４との関係を管理する。
【００３３】
下位管理部２２では、ＤＤ１０４とＦＳ１０３との間の調整（差異の吸収）を行い、及び個々のＤＤ１０４同士の差異を吸収し、ＦＳ１０３に対する機能の共通化を図る。
【００３４】
上記ＡＰ１０１とＦＳ１０３とＤＤ１０４との間に、２１，２２のように、機能を共通化した抽象階層のインタフェース（レイヤ）を持つ構成により、ＡＰ１０１とＦＳ１０３とＤＤ１０４の独立性（汎用性）が保たれる。更に、レイヤ管理部２０により上記抽象階層のインタフェース（２１，２２）を管理する構成により、ＦＳ１０３やＤＤ１０４が複数管理可能となる。即ち、ＦＳ１０３やＤＤ１０４は複数の異種のものを並列使用可能であり、ＡＰ１０１は共通の操作手段（インタフェース）でそれらＦＳ１０３やＤＤ１０４の機能を利用可能である。
【００３５】
次に、図２〜図４を用いて、共通管理部１０２の手段（構成要素）について説明する。
【００３６】
［上位管理部］
図２は、上位管理部２１の構成例を示す。上位管理部２１は、上位管理部共通ＩＦ（ＦＳ・ＤＤ操作ＩＦ）２０１と、ＦＳ共通制御部２０２と、ＦＳ固有制御部２０３と、ＦＳ吸収制御ＩＦ２０４と、ＤＤ共通制御部２０５と、ＤＤ固有制御部２０６と、レイヤ管理部ＩＦ２０７とを有する。なおＩＦはインタフェースの略である。
【００３７】
上位管理部共通ＩＦ（ＦＳ・ＤＤ操作ＩＦ）２０１では、（ＡＰ１０１に対し）ＦＳ１０３経由でＤＤ１０４操作を行うための共通インタフェースを提供する。ここでは、個別のＦＳ１０３に対する共通操作を行う汎用性のあるファイル操作インタフェースを具備する（例えば「ファイルオープン」「データリード」といった操作（命令受付）を可能とする）。
【００３８】
また上記（インタフェース）とは別に、ＤＤ共通制御部２０５が管理するドライバ（ＤＤ）管理情報（それに対応するレイヤ管理部２０の管理情報２０９）を提供するインタフェースと、ＤＤ固有制御部２０６が持つＤＤ１０４（デバイス）固有操作に必要なインタフェースとを、自由度を持たせたプラグインのインタフェースとして具備する。
【００３９】
ＦＳ共通制御部２０２は、上記ファイル操作インタフェースからの要求により、ＦＳ固有制御部２０３経由でＦＳ吸収制御ＩＦ２０４へと制御を渡す。この時に使用するＦＳ固有制御部２０３は、共通操作に対するＦＳ１０３毎の機能や使用方法、シーケンスの差異などを吸収する役目を行う。
【００４０】
ＦＳ吸収制御ＩＦ２０４では、個別ＦＳ１０３が提供するインタフェースレベルの調整（差異の吸収）を行う。
【００４１】
ＤＤ共通制御部２０５は、ＦＳ共通制御部２０２が必要とする上記のドライバ（ＤＤ）情報の管理を行う。ここでのドライバ（ＤＤ）情報の管理は、ＦＳ１０３が認識するデバイス（ＤＤ）識別の単位に行われる。
【００４２】
ＤＤ固有制御部２０６は、上記プラグインのインタフェースで要求のあった情報を固有ＤＤ１０４へ渡すための制御とインタフェースの調整を行う。
【００４３】
［レイヤ管理部］
図３は、レイヤ管理部２０の構成例を示す。レイヤ管理部２０は、レイヤ管理部ＩＦ２０７と、ＦＳ・ＤＤ管理部２０８と、管理情報２０９と、ＦＳ・ＤＤ制御部２１０と、下位管理部共通ＩＦ（ＤＤ制御ＩＦ）２１１とを有する。なお管理情報２０９は、本組み込み装置内のいずれかの記憶装置内に格納すればよい。
【００４４】
レイヤ管理部２０では、ＡＰ１０１から発生する要求を、個々のＤＤ１０４に伝えるための役割と、複数のＦＳ１０３と複数のＤＤ１０４との関係を管理し（管理情報２０９）、ＡＰ１０１経由でＦＳ１０３がファイル操作を行う対象を認識させるための管理とを行う。
【００４５】
上記個々のＤＤ１０４に伝えるための役割について、レイヤ管理部ＩＦ２０７では、上位管理部２１からのＤＤ操作要求を受付け、下位管理部２２経由で固有ＤＤ１０４に対するアクセスを行う。
【００４６】
下位管理部共通ＩＦ２１１（ＤＤ制御ＩＦ）は、ＤＤ１０４の登録や初期化、終了といった共通のインタフェースと、ＤＤ１０４が提供する固有機能単位のインタフェースとを備える。
【００４７】
ＦＳ１０３とＤＤ１０４との関係の管理については、ＦＳ・ＤＤ管理部２０８において、（ＤＤ１０４からアクセスする）デバイス識別のためのディスクリプタ情報管理と、ＦＳ１０３に認識させる処理で使用するインスタンス情報管理とを含む情報を、管理情報２０９（ＦＳ・ＤＤ管理情報）により一元管理する。管理情報２０９のテーブルで管理する情報の例としては、ＦＳ１０３とＤＤ１０４との関係（組）を識別する管理ＩＤと、ＦＳ１０３を識別するＦＳ識別子、及びインスタンス情報と、ＤＤ１０４（対応するデバイス）を識別するＤＤ識別子、及びディスクリプタ情報とを有する。
【００４８】
ＦＳ・ＤＤ制御部２１０は、対象とするＦＳ１０３とデバイス（対応するＤＤ１０４）とを組み付ける（関連付ける）処理を行い、その組み付け（関連）をドライバ（ＤＤ）情報として、上位管理部共通ＩＦ２０１経由でＡＰ１０１がファイル操作要求時に利用する。
【００４９】
［下位管理部］
図４は、下位管理部２２の構成例を示す。下位管理部２２は、下位管理部共通ＩＦ２１４と、ＤＤ共通制御部２１２と、ＤＤ固有制御部２１３とを有する。
【００５０】
下位管理部共通ＩＦ２１４は図３の２１１と対応している共通ＩＦである。
【００５１】
下位管理部２２では、ＦＳ１０３からの要求に従い、またはレイヤ管理部２０からのＤＤ操作要求に従い、デバイス（対応するＤＤ１０４）に対する直接処理を行う。
【００５２】
ＤＤ共通制御部２１２は、ＤＤ１０４の初期化／終了、デバイス初期化、ファイル操作に必要な情報取得・設定で使用する送受信、といった共通機能（個々の固有のＤＤ１０４に依らない機能）を実現する。
【００５３】
ＤＤ固有制御部２１３は、ＤＤ１０４に対応するデバイス（ハードウェア）が持つ固有機能に対して直接操作を行う。
【００５４】
［レイヤ管理部の処理例］
次に図５を用いて、上記共通管理部１０２のレイヤ管理部２０の実行する処理例（情報管理例）について説明する。なお図５の構成例と図６の構成例とは概ね対応した内容となっている。
【００５５】
レイヤ管理部２０では、ＦＳ・ＤＤ管理部２０８とＦＳ・ＤＤ制御部２１０とで管理情報２０９を中心に各ＦＳ１０３とＤＤ１０４との関係を構築する。
【００５６】
ＦＳ・ＤＤ管理部２０８では、ＡＰ１０１から利用登録（図６のｂと対応する。例えばシステム初期化時の利用登録）がある場合、指定のＦＳ１０３とＤＤ１０４に対して利用準備（図６のｃに対応する）を行い、当該ＦＳ１０３に関するインスタンス情報を管理情報２０９に登録する。なお２０８内の「利用準備」は各回実行時の利用準備を示し、図６のａと対応している。
【００５７】
上位管理部２１からＤＤ操作要求がある場合には、管理情報２０９内に持つ（ＦＳ１０３の）インスタンス情報を決定し、ＦＳ・ＤＤ制御部２１０へ対応する要求を行う。
【００５８】
一方、ＦＳ・ＤＤ制御部２１０では、ＦＳ・ＤＤ管理部２０８から渡されたインスタンス情報と、上位ＩＦ情報・下位ＩＦ情報とをもとに、決定済みのＦＳ１０３とＤＤ１０４へアクセスするために必要な情報を生成する。
【００５９】
これらの情報のもととなる管理情報２０９では、ＦＳ１０３とＤＤ１０４の組み合わせを管理ＩＤにより一意に識別・管理する。
【００６０】
図５の構成例では、Ｔ１，Ｔ２，Ｔ３で示す３つのＦＳ・ＤＤ管理情報（レコード）を生成・管理している。本構成例では少なくともこのような３種類の管理情報が必要である。
【００６１】
Ｔ１で示す、上位ＩＦカテゴリ、下位ＩＦカテゴリは、ＦＳ識別子と利用ＤＤ識別子のそれぞれに対応した固有のインタフェース形式の識別に用いる情報である。ＦＳ識別子は、ＦＳ１０３の種別を含めて一意に認識するための識別番号である。利用ＤＤ識別子は、ドライバ（ＤＤ１０４）の種別を含めて一意に認識するための識別番号である。Ｔ２，Ｔ３で示す、インスタンス情報は、実際のＦＳ１０３とＤＤ１０４へアクセスを行う際に必要となる固有のインスタンス情報を扱う。
【００６２】
これらの固有の管理情報（Ｔ１〜Ｔ３）は、システム初期化時などに予め準備しておき、ＡＰ１０１からの利用登録が発生した際に、指定のＦＳ１０３とＤＤ１０４に対して利用準備を行った結果のインスタンスを登録・管理させる手段を用いる。
【００６３】
［動作例］
次に図６を用いて、本管理・制御方式における動作例を説明する（ｓ１等は処理ステップを示す）。
【００６４】
ＡＰ１０１から利用する場合、前述の上位管理部２１で提供するＩＦを使用し、ＦＳ１０３の識別子及びＤＤ１０４の識別子の情報により、利用準備の要求を行う（ｓ１）。レイヤ管理部２０では、ｓ１の情報をもとに、管理情報２０９を確認して登録ＩＤを公開する（ｓ２）。ＡＰ１０１は登録ＩＤを取得する（ｓ３）。なお登録ＩＤと前述の管理ＩＤとは別の概念である（登録ＩＤから管理ＩＤを取得して用いる）。
【００６５】
次に、ＡＰ１０１からの利用登録の要求（登録ＩＤを用いる）（ｓ４）により、上位管理部２１経由でレイヤ管理部２０で、対象の登録ＩＤへの利用登録を受け付ける（ｓ５）。利用登録を受け付けると、レイヤ管理部２０では、利用準備（ｓ６）として、管理情報２０９をもとに、指定のＤＤ１０４への初期化及びアクセス準備を下位管理部２２経由で行い、同様に、指定のＦＳ１０３へ利用登録（利用準備）を行う（ｓ７）。上記処理（ｓ６，ｓ７）では、指定のＦＳ１０３とＤＤ１０４とを組み付け（関連付け）、当該組合せを管理ＩＤとして管理する。
【００６６】
上記処理（ｓ７）の際、管理情報２０９内の利用ＤＤ識別子と下位ＩＦカテゴリの情報から、下位管理部２２で提供するＩＦをＦＳ１０３に登録する。また、これら初期化や利用登録で実際に使用したインスタンス情報（ないしディスクリプタ情報）を管理情報２０９内に登録した後、利用許可として管理ＩＤをＡＰ１０１へ返却する（ｓ８）。
【００６７】
ＡＰ１０１では、上記管理ＩＤを受け取って利用許可を得た後（ｓ９）、ＦＳ１０３及びＤＤ１０４に対して利用開始する（ｓ１０）。即ち、ＡＰ１０１は、管理ＩＤを用いて、上位管理部２１が提供するＩＦ経由で、ＦＳ１０３に対する例えばデータのリード／ライト要求などを行う。この要求（ｓ１０）の際、上位管理部２１では、提供するＩＦにより、共通処理（ｓ１１）を行うものについては、ＦＳ１０３から下位管理部２２へ直接アクセスさせ、固有処理（ｓ１２）を行うもの（固有ＤＤ操作要求）については、レイヤ管理部２０経由で下位管理部２２へアクセスさせるように、振り分けを行う。
【００６８】
上記のような動作・構成により、ＡＰ１０１では、上位管理部２１経由で、個々のＦＳ１０３を意識する事なく、ＦＳ１０３と関係を持つ個々のＤＤ１０４へ、ファイル操作によるアクセスが可能である。
【００６９】
また、複数のＦＳ１０３及びＤＤ１０４に対する操作の差異を下位管理部２２で吸収し、これらの関係をレイヤ管理部２０（共通管理部１０２）で管理する構成により、ＦＳ１０３とＤＤ１０４の双方に対して明確な独立性を保つことができる。即ち、ＦＳ１０３やＤＤ１０４の流用や追加といった場合への対応を容易化させることができる。
【００７０】
［効果等］
以上説明したように、本実施の形態によれば、組み込み装置における、アプリケーション１０１、ファイルシステム１０３及びデバイスドライバ１０４等の要素の汎用性（独立性）・再利用性を高める（言い換えれば各々固有（異種）の要素を並用可能とする）ことができる。特に、組み込み装置の開発において、各々のＦＳ１０３やＤＤ１０４が変更された場合でも、共通管理部１０２が差異を吸収するので、ＡＰ１０１からは既存の仕組み（インタフェース）のまま利用可能となる。また同様に、ＡＰ１０１に変更がある場合でも、上記共通管理部１０２があるため、ＦＳ１０３やＤＤ１０４へその影響の波及を避けることができる。複数のＦＳ１０３及びＤＤ１０４の操作への汎用的なインタフェースをＡＰ１０１に対して提供し、個々のＦＳ１０３及びＤＤ１０４を意識しない共通インタフェースによる利用を可能とする。また、個々のＦＳ１０３及びＤＤ１０４の間でレイヤ管理を行う方式により、ＡＰ１０１、ＦＳ１０３、ＤＤ１０４のそれぞれの独立性を高める。
【００７１】
上記のように複数のＦＳ１０３及びＤＤ１０４に関する共通化（カプセル化）により、ＡＰ１０１、ＦＳ１０３及びＤＤ１０４のそれぞれの独立性を高めることにより、開発変更の影響度を抑えることができ、新規開発時の部分転用が容易となり（流用性を確保でき、移植性を上げることができ）、システム（組み込み装置）の開発の短期化が可能となる効果が期待できる。
【００７２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。例えばファイルシステムに限らず、通信プロトコルスタック等を対象として同様に管理する方式なども可能である。
【産業上の利用可能性】
【００７３】
本発明は、組み込みシステムの開発などに利用可能である。
【符号の説明】
【００７４】
２０…レイヤ管理部、２１…上位管理部、２２…下位管理部、１０１…組み込みアプリケーション（ＡＰ）、１０２…共通管理部（ファイルシステム（ＦＳ）・デバイスドライバ（ＤＤ）管理部）、１０３…固有ファイルシステム（ＦＳ）、１０４…固有デバイスドライバ（ＤＤ）、２０１…ＦＳ・ＤＤ操作インタフェース（上位管理部共通インタフェース）、２０２…ＦＳ共通制御部、２０３…ＦＳ固有制御部、２０４…ＦＳ吸収制御インタフェース、２０５…ＤＤ共通制御部、２０６…ＤＤ固有制御部、２０７…ＦＳ・ＤＤ管理インタフェース（レイヤ管理部インタフェース）、２０８…ＦＳ・ＤＤ管理部、２０９…管理情報（ＦＳ・ＤＤ管理情報）、２１０…ＦＳ・ＤＤ制御部、２１１…ＤＤ制御インタフェース（下位管理部共通インタフェース）、２１２…ＤＤ共通制御部、２１３…ＤＤ固有制御部、２１４…下位管理部共通インタフェース、Ｔ１，Ｔ２，Ｔ３…ＦＳ・ＤＤ管理情報。
【図１】
0005905316.tif 000002
【図２】
0005905316.tif 000003
【図３】
0005905316.tif 000004
【図４】
0005905316.tif 000005
【図５】
0005905316.tif 000006
【図６】
0005905316.tif 000007