JP2004326923A - 情報処理装置、情報処理方法、プログラム、記憶媒体 - Google Patents
情報処理装置、情報処理方法、プログラム、記憶媒体 Download PDFInfo
- Publication number
- JP2004326923A JP2004326923A JP2003119948A JP2003119948A JP2004326923A JP 2004326923 A JP2004326923 A JP 2004326923A JP 2003119948 A JP2003119948 A JP 2003119948A JP 2003119948 A JP2003119948 A JP 2003119948A JP 2004326923 A JP2004326923 A JP 2004326923A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- information
- data
- unit data
- hdcc
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Abstract
【解決手段】コンテンツデータ管理のためのデータベースファイルFL1をHDD21に記憶させておく。そのうえで、データベースを基として作成されたhdcc処理対象データFL2a(hdcc処理対象ファイルFL2のデータイメージ)を保持しておく。アプリケーションは、このhdcc処理対象データFL2aを利用して、コンテンツデータに関する所要の処理を実行する。そして、アプリケーションの処理結果に応じてデータベースについての登録処理が必要となったときには、必ず、hdcc処理対象データFL2aについての登録処理も実行するようにされる。これにより、hdcc処理対象データFL2aは、常にデータベースファイルFL1と同期した状態が得られる。
【選択図】 図3
Description
【発明の属する技術分野】
本発明は、例えばコンテンツデータの再生等をはじめとした、コンテンツデータを対象とする各種の処理を実行可能な情報処理装置、及びその方法に関する。また、このような情報処理装置に実行させるプログラム、また、このプログラムが記憶された記憶媒体に関する。
【0002】
【従来の技術】
近年、安価な大容量のハードディスク(HDD)が普及してきている。これに伴って、例えばCD(Compact Disc)などのメディアに記録されているオーディオデータをハードディスクに記録して保存する、いわゆるリッピングを行うことが広く普及している。このようなリッピングは、例えばCDを再生可能なディスクドライブと、HDDとを組み合わせたオーディオ機器を構成することで可能となる。また、例えばパーソナルコンピュータによっても行うことが可能とされる。
なお、CDの音源をリッピングするのにあたっては、例えばATRAC(Adaptive Transform Acoustic Coding)方式やMP3(MPEG Audio Layer III)方式などによりオーディオデータを圧縮して記録することが一般には行われる。
【0003】
このようにして、リッピングにより、多数の楽曲などのオーディオデータをファイルとしてハードディスクに記憶させておくようにすれば、ユーザは、逐一自分が聴きたいアルバムのCDを交換して再生するような煩わしさから開放されることになり、これまでよりも充実した音楽リスニング環境を得ることができる。
なお、本明細書において、上記したオーディオデータをはじめとして、HDD等の記憶媒体に記憶されるファイル単位のAV(Audio Video)データについては、「コンテンツデータ」ともいうことにする。
【0004】
そして、HDDに記録された多数のコンテンツデータを管理、再生するコンテンツ管理アプリケーションでは、コンテンツデータの管理、再生を効率的に行うために、データベースを利用するのが一般的である。
【0005】
このようなデータベースも、上記コンテンツ管理アプリケーションにより作成され、HDDに記憶される。
そして、このデータベースによっては、コンテンツデータごとのHDDにおけるディレクトリ(パス)が管理される。また、コンテンツデータごとについてのタイトル、アーティスト名、圧縮フォーマットなどをはじめとする各種の属性情報も管理される。さらに、コンテンツデータには、アルバムジャケットや歌詞カードとしての画像データなどに代表されるフリンジデータといわれる関連データも付随してHDDに記録される場合があるが、このようなフリンジデータのパスを示すなど、フリンジデータについての管理も行うようになっている。
【0006】
そして、例えば上記コンテンツ管理アプリケーションが起動されるときには、データベースから必要な情報を選択、抽出して収集し、これらの収集された情報を利用して、コンテンツ管理アプリケーションがコンテンツ管理、再生のために直接的に利用する、コンテンツ処理対象データを作成するようにされる。このコンテンツ処理対象データとしては、例えば、データベースに登録されているコンテンツをリストとして一覧表示させるのに必要なリストデータを挙げることができる。従って、このような場合のコンテンツ管理アプリケーションに対する操作は、上記コンテンツ処理対象データの作成が完了してリスト表示が行われた後にはじめて可能となる。
【0007】
このようにして作成されたコンテンツ処理対象データは、HDDではなく、例えばRAMなどによるキャッシュに展開される。コンテンツ管理アプリケーションは、このようにして、キャッシュ上に展開されたコンテンツ処理対象データを解釈して、例えば上記したようなリスト表示等を実行するようにされている。つまり、コンテンツ処理対象データをキャッシュに保持させた後は、HDDに記憶されるデータベースではなく、このキャッシュの領域にアクセスしてコンテンツ処理対象データを処理すればよいこととなり、効率的なコンテンツ管理、再生動作を得ることができる。例えば、このようなキャッシュを利用したデータリード/ライトのための技術としては、特許文献1に記載されたものが知られている。
なお、ここでいうキャッシュとは、あくまでもRAMなどの揮発性のメモリ上においてコンテンツ処理対象データが展開される領域を指すものであり、例えば、いわゆるキャッシュメモリともいわれる、CPUとRAM、HDDなどの間に介在するメモリとは意味が異なる。
【0008】
【特許文献1】
特開2002−27419号公報
【0009】
【発明が解決しようとする課題】
しかしながら、上記したようなコンテンツ処理対象データの作成にあたり、データベースから必要な情報をフィルタリングして抽出する処理は比較的重いものであり、相応に時間を要する。
従って、現状においては、例えばリスト表示が完了するなど、コンテンツ管理アプリケーションが起動を完了して操作が可能となるまでには、或る程度の時間がかかってしまっている。これは、例えばユーザにとってはストレスとなるので好ましいことではない。特に、管理するコンテンツデータ数が増えるにしたがって、コンテンツ処理対象データを作成するのに要する時間も長くなるので、この場合には、上記した問題がさらに顕著となってしまう。
【0010】
また、実際のシステムでは、コンテンツ処理対象データを作成するのに時間がかかることを考慮して、例えばリスト表示に関すれば、1画面分を表示するのに必要とされる情報のみによりコンテンツ処理対象データを作成するようにしている。そして、例えばリスト表示がスクロールされるのに応じて、リスト表示のためのデータが無くなるのに応じて、また、データベースにアクセスしてコンテンツ処理対象データを作成するようにしている。このようにして、現状では必要最小限のコンテンツ処理対象データを逐次作成するという処理アルゴリズムとしているのが一般的である。
【0011】
このような処理アルゴリズムである場合、コンテンツ処理対象データを作成するごとに相応の処理時間を要するのであるから、例えばスクロールに応じたリスト表示もスムーズなものではなくなってしまい、この点でも、ユーザに対してストレスを与えることになる。
また、スクロール操作などに応じて不定期でデータベースへのアクセスが実行されることになるから、例えば、コンテンツデータについての再生など、実時間的処理を実行している他の処理の速度を遅くする要因にもなる。これにより、例えばコンテンツデータの安定した再生を阻害する可能性がある。また、同じ理由から、例えばライブ音源などのようにコンテンツデータ間での連続再生が要求されるような再生や、リピート再生及びランダム再生などの特殊再生を安定して実行することが困難となる可能性がある。
【0012】
このようにして、現状におけるコンテンツ処理対象データの作成、及びキャッシュのための処理では、コンテンツ処理対象データを作成するのに相応の時間を要することから、コンテンツ管理アプリケーションの起動が開始されてから操作が可能となるまでの時間も相応に長いものとなっており、また、他の処理プロセスの安定性を阻害する可能性があるという問題を有している。
【0013】
【課題を解決するための手段】
そこで、本発明は上記した課題を考慮して、情報処理装置として次のように構成する。
つまり、所定の記憶媒体に記憶されている1以上の単位データを管理するデータベースが記憶される第1の不揮発性記憶手段と、データベースに対する登録処理を実行する第1の登録手段と、データベースを形成する情報のうちから所定の情報を利用して作成されたものであり、単位データを対象とする所要の処理に利用される、単位データ処理用情報が保持される第1の情報保持手段と、単位データ処理用情報を利用して、単位データについての所要の処理を実行する単位データ対象処理手段と、単位データ処理用情報に対する登録処理を実行する第2の登録手段とを備える。
そして、上記第2の登録手段は、単位データ対象処理手段が実行した処理結果に応じて、第1の登録手段によるデータベースに対する登録処理が実行されるときには、上記処理結果に応じた単位データ処理用情報に対する登録処理を実行するように構成する。
【0014】
また、情報処理方法としては、所定の記憶媒体に記憶されている1以上の単位データを管理する情報であり、不揮発性記憶領域に記憶されているデータベースに対する登録処理を実行する第1の登録処理と、データベースを形成する情報のうちから所定の情報を利用して作成され、単位データを対象とする所要の処理に利用される情報であり、情報保持領域に保持されるコンテンツ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理と、コンテンツ処理用情報に対する登録処理を実行する第2の登録処理とを実行するものとされる。
そして、上記第2の登録処理は、単位データ対象処理としての処理結果に応じて、第1の登録処理によるデータベースに対する登録処理が実行されるときには、上記処理結果に応じた単位データ処理用情報に対する登録処理を実行するように構成することとしている。
【0015】
また、プログラムとしては、所定の記憶媒体に記憶されている1以上の単位データを管理する情報であり、不揮発性記憶領域に記憶されているデータベースに対する登録処理を実行する第1の登録処理と、データベースを形成する情報のうちから所定の情報を利用して作成され、単位データを対象とする所要の処理に利用される情報であり、情報保持領域に保持されるコンテンツ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理と、コンテンツ処理用情報に対する登録処理を実行する第2の登録処理とを情報処理装置に実行させるものとされる。
そして、上記第2の登録処理は、単位データ対象処理としての処理結果に応じて、第1の登録処理によるデータベースに対する登録処理が実行されるときには、上記処理結果に応じた単位データ処理用情報に対する登録処理を実行するように構成するものである。
【0016】
また、上記プログラムを記憶して記憶媒体を構成することとした。
【0017】
上記各構成によれば、第1の不揮発性手段(不揮発性領域)に記憶されているデータベースを基にして作成されたコンテンツ処理用情報が第1の情報保持手段(情報保持領域)に保持されていることになる。
そして、単位データを対象とした単位データ対応処理を実行するのにあたっては、上記第1の情報保持手段(情報保持領域)に保持されているコンテンツ処理用情報を利用するようにされる。
そして、単位データ対応処理の処理結果に応じて、データベースへの登録処理を行うときには、これと共に、同じ単位データ対応処理の処理結果に応じて、上記第1の情報保持手段(情報保持領域)に保持されているコンテンツ処理用情報についての登録処理も行うようにされる。
これにより、最初にデータベースを基にしてコンテンツ処理用情報を作成した後は、上記した登録処理によって、データベースとコンテンツ処理用情報との内容について同期している状態が常に得られていることになる。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。なお、以降の説明は次の順序で行う。
1.記録再生装置の構成
2.コンテンツデータのディレクトリ管理
3.コンテンツデータ管理のためのプログラム構成
4.ファイル構造
5.初期化処理
6.登録処理
7.終了処理
【0019】
1.記録再生装置の構成
図1のブロック図は、本発明の実施の形態としての情報処理装置が適用される記録再生装置1の構成例を示している。
CPU(Central Processing Unit)11は、起動されたプログラムに基づいて記録再生装置1の全体の制御、演算処理を行う。例えばネットワークを介した通信動作、ユーザーに対する入出力動作、メディアからのコンテンツ再生やリッピング、HDD21へのコンテンツ記憶やそのための管理などを行う。なお、以降の説明を単純なものとするために、本実施の形態の記録再生装置1が対応して記録再生可能なコンテンツデータとしては、オーディオのコンテンツデータであることとする。
CPU11はバス12を介して各回路部との間で制御信号やデータのやりとりを行う。
【0020】
ROM13は、CPU11が実行すべき動作プログラム、プログラムローダーや、各種演算係数、プログラムで用いるパラメータ等が記憶される。
また、RAM20には、CPU11が実行すべきプログラムが展開される。また、CPU11が各種処理を実行する際において必要となるデータ領域、タスク領域としても用いられる。
【0021】
操作入力部15は、記録再生装置1の筐体に設けられた操作キーやジョグダイヤル、タッチパネルなどの各種操作子などから成る部位である。なお、GUI(Graphical User Interface)操作のためのキーボードやマウスが操作入力部15として設けられてもよい。また、操作入力部15としては、リモートコントローラとされてもよい。
操作入力部15で入力された情報は入力処理部14において所定の処理が施され、CPU11に対して操作コマンドとして伝送される。CPU11は入力された操作コマンドに応答した機器としての動作が得られるように、所要の演算や制御を行う。
【0022】
ディスプレイモニタ17としては、例えば液晶ディスプレイなどの表示デバイスが接続され、各種情報表示が行われる。
CPU11が各種動作状態や入力状態、通信状態に応じて表示情報を表示処理部16に供給すると、表示処理部16は供給された表示データに基づいてディスプレイモニタ17に表示動作を実行させる。
例えば本実施の形態の場合であれば、リッピングされたオーディオファイルを再生管理するプログラムに従っては、オーディオファイルを管理、再生するためのGUI画面が表示される。
【0023】
この場合のメディアドライブ19は、所定のメディアに対応して少なくとも再生が可能なドライブとされる。もちろんのこと、所定メディアに対応して、再生だけではなく、記録が可能なドライブとされても良い。
また、この場合のメディアドライブ19が対応するメディアとしては、特に限定されるべきものではないが、例えばCD、DVD、ミニディスクなどの各種光学ディスク状記録媒体とされても良い。あるいは、フラッシュメモリなどのメモリ素子により構成されたメディアとされてもよい。また、メディアドライブとしては、例えばこれらの各種メディアに対応した各種のドライブが個々に設けられてバス12と接続される構成とされてもよいものである。
【0024】
例えばユーザーが操作入力部15に対する操作によって、メディアドライブ19による再生指示を行った場合は、CPU11は、メディアドライブ19に対してメディアに対する再生を指示する。これに応じて、メディアドライブ19は、装填されているメディアから、指定されたデータにアクセスして読み出しを実行する。
【0025】
このようにして読み出されたデータが、オーディオコンテンツである場合には、必要に応じてCPU11の処理によってデコード処理等が施された後、オーディオ入出力処理部24に転送される。オーディオ入出力処理部24においては、イコライジング等の音場処理や音量調整、D/A変換、増幅等の処理が施され、スピーカ部25から出力される。
【0026】
またメディアドライブ19にて再生されたデータは、CPU11の制御によって、HDD21にオーディオデータファイルとして蓄積することもできる。つまり、いわゆるリッピングにより得たオーディオデータファイルをコンテンツデータとして記憶させることができる。
なお、このオーディオデータファイルの形式としては、CDフォーマットにおけるサンプリング周波数44.1KHzで16ビット量子化のデジタルオーディオデータとされてもよいし、HDD21の容量を節約するために、所定方式にしたがって圧縮処理が施された形式の圧縮オーディオデータとされてもよい。また、圧縮方式としても限定されるものではないが、ATRAC(Adaptive Transform Acoustic Coding)方式やMP3(MPEG Audio Layer III)方式などを採用することができる。
【0027】
チューナ部27は、例えばAM・FMラジオチューナとされ、CPU11の制御に基づいて、アンテナ26で受信された放送信号を復調する。もちろんテレビチューナや衛星放送チューナ、デジタル放送チューナなどとしてのチューナでもよい。
復調された放送音声信号は、オーディオデータ処理部24において所要の処理が施され、スピーカ部25から放送音声として出力される。
【0028】
通信処理部22は、CPU11の制御に基づいて送信データのエンコード処理、受信データのデコード処理を行う。
ネットワークインターフェイス23は、通信処理部22でエンコードされた送信データをネットワークを介して所定の外部ネットワーク対応機器に送信する。またネットワークを介して外部ネットワーク対応機器から送信されてきた信号を通信処理部22に受け渡す。
通信処理部22は受信した情報をCPU11に転送する。
【0029】
なお、記録再生装置1の構成は、この図1の構成に限られるものではなく、更に多様に考えられる。
例えばUSB(Universal Serial Bus)、IEEE1394、Bluetoothなどの通信方式による周辺機器とのインターフェースが設けられるようにしてもよい。
そして、上記ネットワークインターフェイス23によりネットワークを介してダウンロードしたオーディオのコンテンツデータや、上記USB、IEEE1394などのインターフェイスを経由して転送されてきたオーディオのコンテンツデータについても、HDD21に対して記憶させることができる。
またマイクロホンや外部のヘッドホンの接続に用いられる端子や、DVD再生時に対応するビデオ出力端子、ライン接続端子、光デジタル接続端子等が設けられてもよい。
またPCMCIAスロット、メモリカードスロットなどが形成され、外部の情報処理装置やオーディオ機器とデータのやりとりが可能とされてもよい。
【0030】
2.コンテンツデータのディレクトリ管理
上記図1による説明から理解されるように、本実施の形態の記録再生装置1では、HDD21に対して、オーディオデータファイルとしてのコンテンツデータを記憶することができる。
このコンテンツデータは、HDD21上において、図2に示すようにして管理される。
先ず、rootディレクトリの下層に対しては、規定範囲内での任意の数のfolderを置くことができる。このfolderは、例えばコンテンツデータが属するジャンル、または所有ユーザなどに対応して作成される。
そして、このfolderの下層には、規定範囲内での任意の数のalbumを置くようにされている。albumは、例えば1つのアルバムタイトルごとに対応する。そして、このalbumのディレクトリ下において、そのalbumに属するとされる1以上のtrackを位置させるようにしている。このtrackごとの単位データが、1つのコンテンツデータとなるものである。
このようなコンテンツデータについてのディレクトリ管理は、HDD21に記憶されているデータベースファイルによって行われている。なお、データベースファイルについては後述する。
【0031】
3.コンテンツデータ管理のためのプログラム構成
そして、本実施の形態では、コンテンツデータについての管理/再生を可能とするためのプログラムもHDD21にインストールされるようにして記憶されている。
図3は、このようなコンテンツデータ管理/再生のためのプログラムの構成をブロック図として示している。なお、確認のために述べておくと、この図に示される各種プログラムは、OS(Operating System)上で動作するものである。
先ず、プログラムとして最上層に位置しているアプリケーション31は、コンテンツデータに対応した所要の機能動作を実行可能なアプリケーションプログラムである。ここでは、アプリケーション31は、HDD21に記憶されているオーディオデータファイルとしてのコンテンツについて管理、再生等が可能な、いわゆるコンテンツプレーヤとしての機能を有しているものとされる。
このアプリケーション31は、例えばユーザによるアプリケーション31に対する操作やプログラム動作の流れに従って、下位層に対してコマンド、イベント等の発行を行う。これにより、アプリケーション31としての動作が実現される。
【0032】
なお、この図に示すプログラム構成において、本実施の形態のデータベースキャッシュを利用しながら、コンテンツデータを対象とした処理を実行するアプリケーションとしては、上記コンテンツプレーヤとしてのアプリケーション31以外のものであってもよい。また、このような本実施の形態のデータベースキャッシュを利用するアプリケーションが複数インストールされていてもよいものである。そして、このようなアプリケーションが複数インストールされている場合には、例えば、これらのアプリケーションを同時に起動させたうえで、これらのアプリケーションの間で、これより下層のプログラムによるデータベースキャッシュシステムを共用するようにすることも考えられる。
【0033】
アプリケーション31の下層にはハードディスクコンテンツコントローラ(hdcc)32としてのプログラムが位置する。
このhdcc32は、アプリケーション31から発行されるコマンド等を解釈することができる。そして、アプリケーション31から発行されるコマンドに応じた処理として、下層のコンテンツデータアクセスモジュール33に対する制御を実行する。
【0034】
また、hdcc32は、RAM20内のhdcc−cache領域20A(第1の情報保持手段)に保持される、hdcc処理対象データFL2aについての管理、処理を行う。
hdcc処理対象データFL2aは、最初は、データベースファイルFL1を形成しているテーブル群から、アプリケーション31がコンテンツ管理、再生を実行するのに必要とされる所要の情報を抽出して作成されるデータである。
アプリケーション31の起動中においては、HDD21に記憶されているコンテンツのリストを、その属性情報(タイトル、アーティスト、属するアルバムタイトル等)、及びアルバムジャケットの画像データをはじめとしたコンテンツに関連するデータ(フリンジデータ)などと共に表示する。hdcc処理対象データFL2aは、例えばこのようなコンテンツデータのリスト表示に必要とされる属性情報、デコード処理後のフリンジデータなどを有して構築されている。
また、例えばコンテンツデータが記憶されるHDD21上のパスなどの情報も有している。このコンテンツデータのパスの情報を参照することで、例えばファイルシステムを利用して再生対象のコンテンツデータをHDD21から読み出して再生処理を実行することが可能となる。
【0035】
つまり、hdcc処理対象データFL2aは、アプリケーション31、又はhdcc32が、コンテンツデータを対象とした管理、再生などの所要の処理を実行するのに利用する情報となる。換言すれば、データベースファイルFL1を、アプリケーション31、又はhdcc32が処理可能な形式に再構築した情報である。
【0036】
コンテンツデータアクセスモジュール(cdam)33は、コンテンツデータに関連したデータの読み出し、書き込みのためのHDD21へのアクセスを担当するプログラムである。このために、cdam33の下層には、HDD21(第1の不揮発性記憶手段)に記憶されるデータベースファイルFL1についての処理を実行するプログラムであるデータベースモジュール(db)34が位置する。また、HDD21からファイル単位での読み出し/書き込みを実行するファイルシステム(fsys)35が位置する。この図では、HDD21(第2,第3の不揮発性記憶手段)に記憶されるファイルであって、ファイルシステム(fsys)35により読み出し/書き込みされるべきファイルとして、コンテンツデータ管理に関連するhdcc処理対象ファイルFL2が示されている。なお、hdcc処理対象ファイルFL2については図4により後述する。
【0037】
また、cdam33は、RAM20におけるheader−cache領域20B(第2の情報保持手段)に保持されるheader情報FL3についての書き込み/読み出し処理を実行する。なお、このheader情報FL3についても図4により後述する。
【0038】
このようにして、コンテンツデータを管理するプログラム構成としては、アプリケーション31、hdcc32、cdam33、データベースモジュール3434、及びファイルシステム35から成るものとされる。
そして、これらのプログラム構成の下で、コンテンツデータ管理のために利用する情報としては、データベースファイルFL1、hdcc処理対象ファイルFL2、hdcc処理対象データFL2a、及びheader情報FL3とされている。
ここで、データベースファイルFL1、hdcc処理対象ファイルFL2は、不揮発性の記憶領域であるHDD21に記憶されるデータであり、例えば電源供給が停止しても保存されるデータである。
これに対して、hdcc処理対象データFL2a、header情報FL3は、揮発性の記憶領域であるRAM20内において確保される記憶領域に対して保持されるものであり、例えば、アプリケーション31の終了に伴って、消去されてもよい情報である。
【0039】
4.ファイル構造
上記のようにして、本実施の形態において、コンテンツデータ管理のために利用する情報は、データベースファイルFL1、hdcc処理対象ファイルFL2、hdcc処理対象データFL2a、及びheader情報FL3となる。これらの情報の説明のために、図4を参照して、データベースファイルFL1及びhdcc処理対象ファイルFL2の構造について説明する。
【0040】
図4(a)には、データベースファイルFL1が示されている。
このデータベースファイルFL1には、先に図2に示したようなコンテンツデータ間のディレクトリ構造を管理する情報が格納されている。
また、例えばコンテンツデータごとのHDD21におけるディレクトリ(パス)が管理される。
また、コンテンツデータごとについてのタイトル、アーティスト名、圧縮フォーマットなどをはじめとする各種の属性情報も管理される。
さらに、コンテンツデータには、アルバムジャケットや歌詞カードとしての画像データなどに代表されるフリンジデータといわれる関連データも付随してHDD21に記録される場合があるが、このようなフリンジデータのパスを示すなど、フリンジデータについての管理も行うようにされているものである。
【0041】
そして、本実施の形態のデータベースファイルFL1としては、上記したような各種所要の情報を、テーブル単位ごとに所定の構造により格納すると共に、図4(a)に示しているように、所定領域に対して、所定のデータサイズによるIdentifier Valueを格納することとしている。
このIdentifier Valueは、後述するようにして、HDD21に記憶されるデータベースファイルFL1と、同じくHDD21に記憶されるhdcc処理対象ファイルFL2との内容について、整合性確認を行う(同期状態を調べる)のに必要とされる情報である。本実施の形態では、Identifier Valueは、データベースファイルFL1に対して最後に登録(更新)が行われた日時を示す情報であることとしている。また、データエントリ数、やデータ構造を示す情報などをはじめ、データ内容を識別する所定のデータ内容識別情報とされてもよい。また、これら日時情報と所定のデータ内容識別情報との組み合わせとされてもよい。
【0042】
図4(b)には、HDD21に記憶される、hdcc処理対象ファイルFL2の構造が示されている。
なお、後述するようにして、hdcc−cache領域20Aに保持されるhdcc処理対象データFL2aを初期化するのにあたっては、通常はデータベースファイルFL1から再構築をするのではなく、hdcc処理対象ファイルFL2のデータイメージをそのままhdcc−cache領域20Aに転送して保持させるようにしている。
つまり、hdcc処理対象ファイルFL2は、データベースシステムにおけるキャッシュデータとしての意味を持つ。そこで、以降においては、このhdcc処理対象ファイルFL2について、cache fileともいう場合がある。
【0043】
この図4(b)に示すようにして、hdcc処理対象ファイルFL2は、先頭に所定サイズのheader領域が配置され、これに続けて、hdcc処理対象ファイルFL2としての実データである、データイメージが格納される。
そして、hdcc処理対象ファイルFL2のheader領域のデータが、RAM20のheader−cache領域20B内に格納されるheader情報FL3となる。また、hdcc処理対象ファイルFL2のデータイメージが、そのまま、RAM20内のhdcc−cache領域20Aに格納されるべき、hdcc処理対象データFL2aのデータ内容となる。
【0044】
つまり、HDD21にアクセスして、hdcc処理対象ファイルFL2のheader領域のデータを取得し、このデータをheader−cache領域20Bに書き込んで保持させることで、header情報FL3が得られる。
同様にして、HDD21にアクセスして、hdcc処理対象ファイルFL2のデータイメージを取得し、このデータイメージをhdcc−cache領域20Aに書き込んで保持させることで、hdcc処理対象データFL2aが得られる。
【0045】
図4(c)には、hdcc処理対象ファイルFL2のheader領域の構造が示されている。確認のために述べておくと、header−cache領域20Bにて保持されるheader情報FL3も同様の構造を有する。
先ず、先頭の所定サイズの領域には、ファイル種別を識別するための識別情報が格納される。つまり、この領域に格納される値により、ファイル種別がhdcc処理対象ファイルFL2であることを示す。この場合には、例えば「C D M A」との記述に対応したビットの値が格納される。
【0046】
Edit Flagは、データ保護のために必要となる情報であり、このフラグの値を参照することで、HDD21への書き込みが正常に行われたか否かを推定することができる。
【0047】
本実施の形態において、hdcc処理対象ファイルFL2(cache file)は、複数記憶される場合がある。cache IDは、このような場合に対応して、個々のhdcc処理対象ファイルFL2を識別するための識別子である。
Format Versionには、hdcc処理対象ファイルFL2としてのフォーマットのバージョンを示す値が格納される。
【0048】
このheader領域におけるIdentifier Valueは、先に図4(a)により示したデータベースファイルFL1のIdentifier Valueと同じ意義を有する。
つまり、HDD21に記憶されるデータベースファイルFL1と、同じくHDD21に記憶されるhdcc処理対象ファイルFL2との内容についての同期をとる(整合性を確認する)ために必要とされる情報であり、データベースファイルFL1に対して最後に登録(更新)が行われた日時を示す。
【0049】
ここで、上記したファイル種別識別情報(C D M A)、Edit Flag、cache ID、Format Version、及びIdentifier Valueが格納される領域は、cdam33が解釈して処理する情報とされる。
これに対して、user areaの領域に対しては、hdcc32が解釈して処理可能な任意の情報を格納することができることとされている。
【0050】
例えば、cdam33は、アプリケーション側の層にあるとされるプログラムではなく、OS側の層(システム側)にあるとされるプログラムであり、比較的プリミティブな処理を実行する。これに対して、cdam33の上層にあるhdcc32は、アプリケーション側のプログラムであり、より高度な処理を実行する。例えば、コンテンツデータのディレクトリに関すれば、hdcc32は、データベースの情報を参照して、例えば図2に示したディレクトリ構造全体におけるコンテンツデータの位置を認識することが可能である。これに対して、cdam33は、1つのディレクトリを基準とした親又は子のディレクトリについての認識にとどまる。
そこで、必要に応じて、hdcc32が対応して処理すべき所要のデータをuser areaに格納しておくようにすれば、hdcc処理対象ファイルFL2を効率的に利用して、コンテンツ管理等に関しての高度な機能を付加することが可能になる。
【0051】
5.初期化処理
これまでの説明を踏まえて、本実施の形態におけるコンテンツ対応のデータベースキャッシュのための処理動作について説明を行っていくこととし、先ず、初期化処理について説明することとする。
【0052】
ところで、以降の説明から理解されることであるが、hdcc処理対象データFL2aは、元々は、データベースファイルFL1を再構築して作成されたものである。しかしながら、本実施の形態では、hdcc処理対象データFL2aについて、HDD21に記憶させたhdcc処理対象ファイルFL2から取得したデータイメージを、そのままhdcc処理対象データFL2aとしてhdcc−cache領域20Aに保持させるようにしている。つまり、データベースシステムにおいて、hdcc処理対象ファイルFL2は、hdcc処理対象データFL2aを取得する際のキャッシュデータとして扱われる。ここでいうデータベースキャッシュとは、このようなシステム動作をいうものである。
また、ここでいう初期化処理とは、例えばアプリケーション31が起動されることなどに応じて、これまでは空き領域であった、hdcc−cache領域20Aに対して、hdcc処理対象データFL2aをマウント(保持)させるための処理である。
【0053】
図5は、初期化処理の流れをフローチャートにより示している。なお、この図に示す処理は、例えば図4に示したプログラム構成の下で、CPU11がこれらのプログラム従って実行するものとされる。
例えば、アプリケーション31が起動されるなどして初期化を実行するためのコマンドが発行されたとすると、ステップS101の処理を実行することになる。
ステップS101においては、HDD21に記憶されているデータベースファイルFL1にアクセスして、データベースファイルFL1を形成している各テーブルから、Identifier Valueを取得する。つまり、図4(a)にて説明したようにして、データベースファイルFL1の各テーブルの構造内に格納されるIdentifier Valueの読み込みを実行する。
【0054】
次のステップS102においては、HDD21に記憶されているcache file(hdcc処理対象ファイルFL2)にアクセスする。そして、header領域に格納されているIdentifier Valueを取得する。
【0055】
上記ステップS101及びステップS102の処理によっては、データベースファイルFL1及びhdcc処理対象ファイルFL2のIdentifier Valueが取得されたことになる。そして、ステップS103においては、このデータベースファイルFL1のIdentifier Valueと、hdcc処理対象ファイルFL2のIdentifier Valueとについて比較を行い、これらのIdentifier Valueについて値が一致しているか否かについて判定する。
後述する登録処理及び終了処理が正常に行われれば、データベースファイルFL1のIdentifier Valueと、hdcc処理対象ファイルFL2のIdentifier Valueとは一致していることになる。Identifier Valueが一致している場合、データベースファイルFL1の内容と、hdcc処理対象ファイルFL2のデータイメージの内容とは同期している(整合性が得られている)ことを意味する。これに対して、一致していなければ、例えば何らかの要因によって、データベースファイルFL1の内容と、hdcc処理対象ファイルFL2のデータイメージの内容との間で整合が得られていない状態であることを示すことになる。つまり、ステップS103の処理は、データベースファイルFL1とhdcc処理対象ファイルFL2のデータイメージとの間で同期が得られている状態にあるか否かを判定する処理である。
【0056】
そして、ステップS103において、Identifier Valueが一致しているとして肯定結果が得られた場合には、ステップS104の処理に進む。Identifier Valueが一致している場合、hdcc処理対象ファイルFL2(cache file)のデータイメージの内容は、データベースファイルFL1の登録内容と同期が得られている。つまり、現在のデータベースファイルFL1の登録内容が正常に反映された内容を有しているということであり、このデータイメージを、そのままhdcc処理対象データとして利用して良いということになる。
そこで、ステップS104の処理としては、HDD21に記憶されるhdcc処理対象ファイルFL2(cache file)にアクセスして、データイメージを読み込んで取得する。そして、この取得したデータイメージを、hdcc処理対象データFL2aとして、RAM20のhdcc−cache領域20Aに対して書き込んで展開させる。以降、hdcc−cache領域20Aには、hdcc処理対象データFL2aが保持された状態が得られる。
【0057】
一方、ステップS103において、Identifier Valueが一致していないとして否定結果が得られた場合、hdcc処理対象ファイルFL2(cache file)のデータイメージの内容は、データベースファイルFL1の登録内容と整合していない、つまり、同期していないということになる。
ここで、hdcc処理対象ファイルFL2のイメージデータは、あくまでもデータベースファイルFL1を基として作成されるものである。つまり、データベースファイルFL1の登録内容が基準となるものであり、従って、hdcc処理対象ファイルFL2(cache file)のデータイメージと、データベースファイルFL1とでは、データベースファイルFL1の内容を信頼すべきこととなる。
このことに基づいて、ステップS105以降の処理は、データベースファイルFL1を利用して新たに作成したhdcc処理対象データFL2aを、hdcc−cache領域20Aにマウントするための処理となる。
【0058】
つまり、ステップS105では、HDD21に記憶されるデータベースファイルFL1にアクセスして、hdcc処理対象データFL2aを構築するのに必要な情報を各テーブルから選択、抽出して収集する処理を実行する。
次のステップS106では、収集した情報によりhdcc処理対象データFL2aを作成する。そして、この作成したhdcc処理対象データFL2aを、hdcc−cache領域20Aに転送して書き込み、ここに展開して保持させる。
上記ステップS104又はステップS106の処理が終了して以降においては、例えばアプリケーション31、及びhdcc32は、hdcc−cache領域20Aに保持されたhdcc処理対象データFL2aを利用して、例えばリスト表示をはじめとした所要の処理を実行することができる。これは、ステップS104又はステップS106の処理の完了を以て、アプリケーション31に対する操作が可能となることを意味する。
【0059】
この図5に示した処理によると、初期化処理にあたって、hdcc処理対象ファイルFL2(cache file)のデータイメージとデータベースファイルFL1の登録内容とについて同期が得られている限りは、このデータイメージをそのままhdcc処理対象データFL2aとして扱って、hdcc−cache領域20Aに対してマウントすることになる。
本実施の形態の場合、例えば後述する登録処理及び終了処理等が正常に実行されていさえすれば、hdcc処理対象ファイルFL2(cache file)のデータイメージとデータベースファイルFL1の登録内容とについて同期が得られるようにされている。従って、通常の初期化処理としてはステップS104の処理が実行されるものである。
【0060】
データベースファイルFL1からhdcc処理対象データFL2aを構築する処理は、例えば、所定のフィルタ条件に応じてデータベースファイルFL1から必要な情報を抽出する必要があるために相応に時間がかかるものであり、管理すべきコンテンツデータ数が増加すれば処理時間はさらに長くなってしまう。そして、従来においては、初期化処理が実行されるごとに、データベースファイルFL1からhdcc処理対象データFL2aを構築することを行っていたものである。つまり、常にステップS105→S106の処理を実行することとしていた。
【0061】
これに対して、本実施の形態では、通常の初期化処理としてはステップS104の処理を実行する。つまり、初期化処理ごとに、逐一、データベースファイルFL1からhdcc処理対象データFL2aを構築することは行っていない。
ステップS104の処理は、HDD21上のhdcc処理対象ファイルFL2(cache file)からデータイメージを読み込んで転送し、RAM20に書き込む処理となることから、短時間で終了することになる。つまり、通常の初期化処理としては非常に短時間で完了させることが可能になる。また、ステップS104の処理は、HDD21から読み出したデータをRAM20に書き込むだけの軽い処理であるから、例えば同時に他のプロセスを実行していたとしても、この他のプロセスにはほとんど影響を与えない。例えば他のプロセスとして、コンテンツデータを再生しているような場合にも、その再生出力の連続性が保証されるなど、安定した再生出力を維持することができる。
【0062】
また、従来の場合であれば、初期化時ごとに、データベースファイルFL1からhdcc処理対象データFL2aを作成することになるから、処理時間を最小限とするために、例えば1画面分のコンテンツデータのリスト表示が可能なだけの情報により、hdcc処理対象データFL2aを作成していた。このために、リスト画面のスクロールなどに応じて、データベースファイルFL1からhdcc処理対象データFL2aを作成する処理が比較的高い頻度で割り込むこととなっていた。これによっては、スクロール表示がスムーズに行えないことになる。また、例えば他のプロセスが影響を受ける頻度も高くなるため、例えばコンテンツデータの連続再生や、ランダム再生、リピート再生などの特殊再生などが安定して行えないなどの不都合が生じる場合があった。
これに対して、本実施の形態では、最初においてデータベースファイルFL1からhdcc処理対象データFL2aを作成しさえすれば、以降においては、このhdcc処理対象データFL2aは、データベースファイルFL1と同期が得られていることになる。
そこで、本実施の形態としては、最初にデータベースファイルFL1からhdcc処理対象データFL2aを作成するときには、データベースファイルFL1全体の登録内容を利用して作成するようにされる。この場合、hdcc処理対象データFL2aの作成には相当の時間がかかるが、一旦作成してしまえば、以降においては、キャッシュファイルからの読み出しにより、hdcc処理対象データFL2aが得られることになるので、この場合にも短時間の軽い処理で済む。そして、この場合には、例えばリスト画面のスクロールが行われたときにも、RAM20のhdcc−cache領域20Aから、表示に必要なデータを読み出してくればよいので、スムーズなリスト画面のスクロール表示が得られる。
また、リスト画面のスクロールなどに応じて、データベースファイルFL1からhdcc処理対象データFL2aを作成する処理が発生することはないから、例えば先に述べたコンテンツデータの連続再生や特殊再生などを安定して実行することも容易となる。
【0063】
なお、この場合における、ステップS105→ステップS106の処理は、データベースファイルFL1と、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データFL2a)との間での同期が得られなくなったとされるエラー状態に対応して、再同期を図るための処理となる。
このステップS105→ステップS106の処理としては、上述もしているように、比較的時間がかかることとなってしまう。しかしながら、この処理は、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データFL2a)との間で同期が得られるように回復を図るために必要な処理である。また、この処理は、高い頻度で実行されるものではないので、例えばユーザに与えるストレスは最小限で済む。
【0064】
続いては、本実施の形態としての初期化処理を、図3に示したプログラム構成の基での処理シーケンスとして説明する。この説明には、図6及び図7のアローチャートを参照する。
図6には、データベースファイルFL1と、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データFL2a)との間での同期(整合性)が得られている場合に対応した初期化処理のシーケンスが示される。この図6に示す処理シーケンスは、先に図5に示したフローチャートにおいては、ステップS101→S102→S103→S104としての処理に相当する。
【0065】
図6においては、先ず、ステップS201の処理として、アプリケーション31からhdcc32に対して初期化(Initialize)のコマンドが発行される。このInitializeのコマンドに応じて、hdcc32は、ステップS202の処理として、cdam33に対してキャッシュ初期化(Init Cache)のコマンドを発行する。cdam33は、Init Cacheのコマンドに応じて、ステップS203の処理により、ファイルシステム35を利用して、Get Identifier Valueとしての処理を実行する。つまり、cdam33は、HDD21に記憶されているhdcc処理対象ファイルFL2のheader領域に記憶されているIdentifier Valueを取得する。但し、この場合においては、Identifier Valueを取得するのにあたり、hdcc処理対象ファイルFL2のheader領域全体のデータを取得するようにされる。
【0066】
そして、cdam33は、上記のようにしてIdentifier Valueを取得すると、ステップS204のPut Identifier Valueとしての処理により、この取得したIdentifier Valueを、header−cache領域20Bに対して書き込んで展開するための処理を実行する。なお、この場合においては、header−cache領域20Bに対して、ステップS203により取得したheader領域全体のデータを展開することを以て、header−cache領域20BにIdentifier Valueを展開させたこととしている。
このステップS203→S204の処理を完了させると、cdam33は、ステップS205の処理を実行する。つまり、hdcc32に対して、Init Cacheのコマンドに対応した処理が完了したことを、例えばcompleteのレスポンスとして通知する。
【0067】
completeの通知を受けたhdcc32は、続いて、ステップS206により、Check Cacheのコマンドをcdam33に対して発行する。
これに応じて、cdam33は、ステップS207の処理として、先のステップS204よりheader−cache領域20Bに対して展開されたIdentifier Valueを取得するための処理を実行する。
なお、図5のステップS102の処理としては、HDD21に記憶されているhdcc処理対象ファイルFL2のheader領域から、Identifier Valueを取得することとしている。この点で、図6に示すステップS204、S207による得られる処理手順とは相違する。しかしながら、この図6におけるステップS204、S207の処理としても、取得されるIdentifier Valueとしては、HDD21に記憶されているhdcc処理対象ファイルFL2のheader領域に格納されているものと実質的に同一となるものである。
また、cdam33は、ステップS207に続くステップS208の処理によって、データベースモジュール34にコマンドを発行して、データベースファイルFL1から、Identifier Valueを取得する。
【0068】
次のステップS209では、上記ステップS207,S208により取得したhdcc処理対象ファイルFL2とデータベースファイルFL1のIdentifier Valueについて比較を行う。これは、図5におけるステップS103の処理に相当する。この場合には、hdcc処理対象ファイルFL2とデータベースファイルFL1とは同期しているので、一致(ok)の比較結果が得られることになる。
このようにしてokの比較結果が出力された場合、cdam33は、ステップS210の処理により、Check Cacheの結果がokであったことを、hdcc32に対して、レスポンス(Check Ok)の返信により通知する。
【0069】
上記Check Okの通知を受けたhdcc33は、ステップS211として、cdam33に対してGet Cache From fsysのコマンドを発行する。cdam33は、Get Cache From fsysのコマンドに応じて、ステップS212としての処理を実行する。ステップS212では、ファイルシステム35にコマンドを発行することで、HDD21に記憶されているhdcc処理対象ファイルFL2からデータイメージを読み込ませる。そして、この読み込まれたデータイメージを取得する。
そして、次のステップS213としての処理により、hdcc32は、cdam33が取得したとされるデータイメージを、hdcc−cache領域20Aに対して展開する処理を実行する(Set Cache)。ここまでのステップS211→S212→S213の処理が、図5におけるステップS104の処理に相当する。
hdcc32は、このSet Cacheの処理を完了させると、次のステップS214としての処理として、アプリケーション31から発行されたInitializeのコマンド(S201)に応答した初期化処理が完了したことを、アプリケーション31に対してCompleteのレスポンスにより通知する。この通知をアプリケーション31が認識することで、初期化処理のシーケンスが完了したこととなる。
【0070】
図7は、データベースファイルFL1と、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データFL2a)との間での同期(整合性)が得られていない場合に対応した初期化処理のシーケンスが示される。図5に示したフローチャートにおいては、ステップS101→S102→S103→S105→S106としての処理シーケンスに相当する。
【0071】
図7において、ステップS301〜S308までの処理は、図6におけるステップS201〜S208までの処理と同様であることから、ここでの説明は省略する。
そして、この場合においては、ステップS309によるhdcc処理対象ファイルFL2とデータベースファイルFL1のIdentifier Valueについての比較結果として、一致していないというNGの結果が得られている。Identifier Valueが一致していない場合、何らかの処理エラーなどによって、hdcc処理対象ファイルFL2のイメージデータの内容は、データベースファイルFL1の登録内容が反映されておらず、同期が得られていないということを意味する。
【0072】
この場合、cdam33は、ステップS301の処理により、ステップS309による比較の結果がNGであることを、hdcc32からのCheck Cacheのコマンドに応答したレスポンス(Cache Ng)の返信により、通知する。
この通知を受けたhdcc32は、ステップS311の処理により、cdam33に対して、Get Data From dbのコマンドを発行する。このコマンドを受けたcdam33は、ステップS312の処理によって、データベースモジュール34に対してコマンドを発行して、データベースファイルFL1の読み出しを実行させる。
hdcc32は、次のステップS313としての処理によって、上記ステップS312の処理によって読み出されたデータベースファイルFL1から必要とされる情報を抽出して、hdcc処理対象データFL2aを作成する。そして、続くステップS314としての処理によって、この作成したhdcc処理対象データFL2aを、hdcc−cache領域20Aに対して転送して展開(保持)させる。そして、この処理の完了を以て、次のステップS315としての処理により、初期化処理が終了したことをアプリケーション31に通知する。
【0073】
この図7に示す処理において、ステップS311〜S314の処理シーケンスが、図5におけるステップS105→S106による処理に相当する。そして、ステップS311〜S314の処理シーケンスにおいて、ステップS312及びS313は、相応の時間を要する重い処理となる。これと比較して、例えば先に図6に示したステップS211〜S213の処理シーケンスにおいては、特に時間がかかる重い処理は無いものとされる。
【0074】
6.登録処理
続いては、本実施の形態のデータベースキャッシュのための処理における登録処理について説明する。この登録処理は、コンテンツデータについての管理状態が変更されたのに応じて、この新たな管理状態を反映させるためにデータベースファイルFL1の内容を変更する処理となる。
ここでの、コンテンツデータについての管理状態が変更される場合としては、例えば、コンテンツデータの追加、又は削除が行われた場合を挙げることができる。また、アプリケーションに対する操作などに応じて、既に登録されたコンテンツデータについての分割、連結などの編集が行われた場合にも登録処理が必要となる。さらには、コンテンツデータに対応付けられた属性情報が変更されたり、また、フリンジデータについての追加、削除、編集などが行われた場合も登録処理が必要となる。
【0075】
図8は、登録処理の流れをフローチャートにより示している。
例えば上記のようにしてコンテンツデータについての管理状態が変更されることに応じては、登録処理の実行を指示するコマンドが発行される。このコマンドの発行に応じては、ステップS401としての処理により、今回のコンテンツデータについての管理状態の変更内容が反映されるようにして、HDD21に記憶されるデータベースファイルFL1に対して、データを登録するようにされる。なお、このデータ登録にあたっては、データベースファイルFL1に格納されるIdentifier Valueについての更新を伴う。この場合には、このステップS401としての処理によりデータ登録を行った日時情報をIdentifier Valueとしてセットする。
【0076】
次のステップS402においては、同じく、今回の今回のコンテンツデータについての管理状態の変更内容が反映されるようにして、hdcc−cache領域20Aに現在展開されている、hdcc処理対象データに対してデータ登録を実行する。
【0077】
つまり、本実施の形態では、コンテンツデータについての管理状態が変更されることに応じて、データベースモジュール34の登録処理を実行すべきときには、必ず、hdcc−cache領域20Aに保持されるhdcc処理対象データFL2aについても、その変更内容が反映されるようにして、データ登録を実行するようにしている。
これにより、hdcc処理対象データFL2aの情報内容と、データベースファイルFL1の登録内容とについては、常に整合性が得られることになる。換言すれば、例えばデータベースファイルFL1が変更されるのに応じてhdcc処理対象データFL2aに整合性を与えるために、その都度、データベースファイルFL1から情報収集をしてhdcc処理対象データFL2aを作成する必要がないということになる。つまり、hdcc処理対象データFL2aと、データベースファイルFL1との実質的な情報内容について同期を図るための処理(ステップS402)としても、短時間で軽いものとなっている。
【0078】
そして、次のステップS403によっては、header−cache領域20Bに現在保持されているheader情報FL3のIdentifier Valueを、先のステップS401による処理により更新した、データベースファイルFL1のIdentifier Valueと同じ値となるように書き換える(登録する)。このステップS403の処理により、データベースファイルFL1に格納されるIdentifier Valueと、header−cache領域20Bにおけるheader情報FL3に格納されるIdentifier Valueとは、同一の値を有することになる。
このステップS403の処理は、データベースファイルFL1と、cachefileであるhdcc処理対象ファイルFL2との間で同期が得られていることを認識可能とするための準備的な処理となるものである。
【0079】
また、図3に示したプログラム構成の基での上記登録処理のシーケンスは、図9に示すものとなる。
先ず、図9においては、ステップS501としての処理により、アプリケーション31からhdcc32に対して、データベースファイルFL1に対するデータ登録を指示するコマンド(Set Data)が発行される。hdcc32は、このコマンドに応じて、ステップS502の処理として示すように、さらにcdam33に対して、データベースファイルFL1に対するデータ登録を指示するコマンド(Set Data)を発行する。
このSet Dataのコマンドを受けたcdam33は、ステップS503の処理によって、データベースモジュール34にコマンドを発行してコントロールすることで、HDD21に記憶されるデータベースファイルFL1に対して、データ登録を実行する。確認のために述べておくと、このときには今回の登録の日時を示すIdentifier Valueを登録することも行う。
そして、このステップS503としてのデータベースファイルFL1対象のデータ登録の処理を完了させると、ステップS504として示すように、このデータ登録処理が完了したことを、hdcc32に対して、completeのレスポンスにより、通知する。
ここまでの処理が、図8におけるステップS401の処理となる。
【0080】
上記ステップS504による通知を受けたhdcc32では、次に、ステップS505としての処理(Set Data)を実行する。
この処理としては、現在hdcc−cache領域20Aに保持されているhdcc処理対象データFL2aを対象としてデータ登録を実行する。この処理が、図5におけるステップS402の処理に相当する。
【0081】
そして、ステップS506以降の処理が、図5におけるステップS403に相当する処理となる。
ステップS506では、hdcc32からcdam33に対して、Sync Cacheのコマンドが送信される。このコマンドに応じた処理として、cdam33は、先ず、ステップS507として示すように、HDD21に記憶されているデータベースファイルFL1のIdentifier Valueをデータベースモジュール34により読み出させて取得するための処理を実行する。ここで取得されたIdentifier Valueは、先のステップS503による登録処理時に対応した更新日時を示している、最新の値である。
そして、次のステップS508としての処理によって、header−cache領域20Bに保持されているheader情報FL3のIdentifier Valueの領域に対して、取得したIdentifier Valueの値をセットするようにされる。これにより、先にも述べたようにして、データベースファイルFLと、header−cache領域20Bのheader情報FL3のIdentifier Valueとは、同一の値となる。
【0082】
ステップS508の処理を完了させると、cdam33は、ステップS509の処理として、ステップS506によるSync Cacheのコマンドに対するレスポンスとして、completeを返す。つまり、Sync Cacheのコマンドに応答した処理が完了したことを通知する。このcompleteのレスポンスを受けたhdcc32は、ステップS510の処理により、さらに、ステップS502によるSet Dataのコマンドに対するレスポンスとして、アプリケーション31に対してcompleteを返す。
【0083】
7.終了処理
次に、本実施の形態のデータベースキャッシュのための処理における終了処理について説明する。終了処理は、アプリケーション31が終了するのに伴って実行される処理である。
ここでのアプリケーション31が終了される場合としては、先ず、アプリケーション31が起動されている状態でメイン電源をオフとすることで、アプリケーション31が終了する場合を挙げることができる。また、メイン電源がオン状態であっても、ユーザ操作によって、アプリケーション31の起動を終了が指示された場合、或いは、アプリケーション31から他のアプリケーションをアクティブにするようにして、アプリケーションの切り換えが行われた場合なども、アプリケーションの終了となる。
【0084】
図10は、このような終了処理についての処理をフローチャートにより示している。アプリケーション31が終了されることに伴って、終了を指示するコマンドが発行されると、この図に示す終了処理が開始される。
先ず、ステップS601により、現在、header−cache領域20Bに展開されているheader情報FL3を、HDD21に記憶されるhdcc処理対象ファイルFL2(cache file)における、header領域の情報として登録する。なお、この処理に伴い、これまでheader−cache領域20Bに展開されていたheader情報FL3はクリアしてもよい。
【0085】
また、次のステップS602においては、hdcc−cache領域20Aに展開されていたhdcc処理対象データを、HDD21に記憶されるhdcc処理対象ファイルFL2(cache file)における、イメージデータとして登録する。なお、ステップS602の処理に伴っても、これまでhdcc−cache領域20Aに展開されていたhdcc処理対象データをクリアするようにしてよい。
【0086】
また、この終了処理を、図3に示したプログラム構成の下での処理シーケンスとして示した場合には、図11に示すものとなる。
図11においては、先ず、ステップS701としての処理により、アプリケーション31から、終了処理の実行を指示するterminateのコマンドが、hdcc32に対して発行される。
このterminateのコマンドに応答して、hdcc32は、ステップS702としての処理によって、hdcc−cache領域20Aからhdcc処理対象データFL2aを取得する。
そして、次のステップS703としての処理によっては、cdam33に対して、cache file(hdcc処理対象ファイルFL2)の保存を指示するSave Cacheのコマンドを発行する。
【0087】
Save Cacheのコマンドに応答して、cdam33は、先ず、ステップS704としての処理によって、header−cache領域20Bに保持されているheader情報FL3を取得する。これにより、先のステップS703によるhdcc処理対象データFL2aと、上記header情報FL3とが取得されたことになる。
そこで、cdam33は、次のステップS705の処理によって、ファイルシステム35に対して指示を行うことで、header情報FL3とhdcc処理対象データFL2aとを、それぞれ、HDD21に記憶されるhdcc処理対象ファイルFL2のheader領域の情報、及びデータイメージとして登録するようにして保存処理を実行する。
【0088】
上記ステップS705の処理が完了したとされると、cdam33は、ステップS706としての処理によって、Save Cacheの処理が終了したことを、completeのレスポンスによって、hdcc32に通知する。
この通知を受けたhdcc32は、ステップS7607の処理によって、さらに、アプリケーション31に対して、ステップS701により発行されたterminateのコマンドに応答した処理が終了したことを、completeのレスポンスにより通知する。
【0089】
これら図10及び図11に示す処理によると、アプリケーション終了時においては、これまでhdcc−cache領域20Aに保持されていたhdcc処理対象データFL2aと、header−cache領域20Bに保持されていたheader情報FL3とにより、HDD21に記憶されるhdcc処理対象ファイルFL2のheader領域の情報、及びデータイメージが更新されることになる。
【0090】
なお、図10においては、header−cache領域20Bのheader情報FL3をcache file(hdcc処理対象ファイルFL2)に登録し、次に、hdcc−cache領域20Aのhdcc処理対象データFL2aを、cache file(hdcc処理対象ファイルFL2)に登録するようにされている。
これに対して、図11に示す処理は、先ず、hdcc−cache領域20Aのhdcc処理対象データFL2a、header−cache領域20Bのheader情報FL3の順に情報取得を行ったうえで、ステップS705の処理によって、これらの情報を一括的に、cache file(hdcc処理対象ファイルFL2)に登録することとしており、図10とは若干処理手順が異なる。
しかしながら、本実施の形態としては、結果的に、hdcc−cache領域20Aのhdcc処理対象データFL2aと、header−cache領域20Bのheader情報FL3とにより、hdcc処理対象ファイルFL2が更新されるのであれば、そのための処理手順は適宜変更されて構わない。この点については、先に説明した初期化処理及び登録処理についても同様である。
【0091】
そして、上記のようにして終了処理によって更新されたHDD21上のhdcc処理対象ファイルFL2(cache file)のデータ内容については、次のようなことが言える。
先ず、イメージデータについては、hdcc処理対象データFL2aにより更新されている。このhdcc処理対象データFL2aは、先の登録処理が正常に実行されてさえいれば、データベースファイルFL1の登録内容に常に同期した情報内容を有している。従って、終了処理後におけるイメージデータの内容も、データベースファイルFL1の登録内容と同期していることになる。
また、header領域は、header−cache領域20Bのheader情報FL3により更新されるが、header情報FL3に格納されるIdentifier Valueは、先の登録処理の説明から理解されるように、常に、データベースファイルFL1のIdentifier Valueと同じ値となるようにされている。従って、終了処理後において、hdcc処理対象ファイルFL2(cache file)に格納されているIdentifier Valueとしても、データベースファイルFL1のIdentifier Valueと一致しているべきものであることになる。
【0092】
つまり、終了処理後においてHDD21に保存されているhdcc処理対象ファイルFL2は、データイメージ(hdcc処理対象データ)として、現在のデータベースファイルFL1の登録内容に同期した内容を有していることになる。このことから、先に図5及び図6により説明したように、hdcc処理対象データFL2aを初期化するのにあたり、hdcc処理対象ファイルFL2のデータイメージをそのまま利用しても良いことが理解される。
【0093】
また、上記もしているように、データベースキャッシュのための各種処理(初期化処理、登録処理、終了処理等)が正常に実行されている限りは、終了処理後においてHDD21に保存されているhdcc処理対象ファイルFL2のIdentifier Valueと、データベースファイルFL1のIdentifier Valueとは、一致していることになる。これは、両者のIdentifier Valueが一致していることを以て、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データ)と、データベースファイルFL1の登録内容との間で整合性が得られているとみなして良いということになる。
【0094】
これに対して、両者のIdentifier Valueが一致していない場合には、これまでのデータイメージキャッシュの処理が実行された過程において、何らかのエラーが発生するなどして、hdcc処理対象ファイルFL2のデータイメージ(hdcc処理対象データ)のデータ内容と、データベースファイルFL1の登録内容との間で整合性が失われている可能性が高いことが推定できる。
先に図5〜図7により説明した初期化処理おいて、同期が得られているか否かの判定を行うのにあたり、これらのIdentifier Valueの比較により行うこととしているのは、上記したことを根拠としているものである。
【0095】
ところで、上記実施の形態における本発明としての動作を実現するのは、CPU11が実行すべきプログラムであるとして説明した。このようなプログラムは、例えばHDD21、又はROM13にインストールされるようにして格納されるものである。
あるいは、プログラムは、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory)、MO(Magnet Optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
例えば、本実施の形態であれば、メディアドライブ19が対応するメディアなどにプログラムを記録し、パッケージソフトウェアとして提供することができる。これにより、記録再生装置1では、メディアドライブ19によりメディアからプログラムを読み出し、HDD21やROM13に記憶させることでインストールできる。また、このようなパッケージソフトウェアとすることで、例えば汎用のパーソナルコンピュータにも、本発明が適用されたシステムのプログラムをインストールすることは可能になる。
また、プログラムは、上記のようなリムーバブルな記録媒体からインストールする他、プログラムを記憶しているサーバなどから、LAN(Local Area Network)、インターネットなどのネットワークを介してダウンロードすることもできる。
【0096】
さらには、例えば本発明が適用された機能を後から追加するためのアップデートプログラムを構成し、このアップデートプログラムをパッケージメディアとして配布したり、ネットワーク上で配布するようにすることも考えられる。ユーザは、このアップデートプログラムを入手して、既存のシステムがインストールされている環境に対して、このアップデートプログラムをインストールすればよい。
【0097】
なお、本発明としては、上記実施の形態として説明した構成に限定されるものではなく、各種変更が可能である。
例えば、実施の形態においては、HDD21に記憶されるhdcc処理対象ファイルFL2に対して、同期情報であるIdentifier Valueとを格納しているが、この同期情報としてのIdentifier Valueは、hdcc処理対象ファイルFL2とは独立したもう1つのデータファイルとして、HDD21上に保存するように構成することも考えられる。つまり、本発明としての第2の不揮発性記憶手段と、第3の不揮発性記憶手段は、ハードウェア的に個別であっても共通であってもよい。
但し、本実施の形態のようにして、第2、第3の不揮発性記憶手段は共通であることとして、hdcc処理対象ファイルFL2に対して、同期情報であるIdentifier Valueを格納した1つのデータファイルとすることのほうが、データ管理が簡易に成るなどのメリットが得られることになって好ましい。
【0098】
また、hdcc処理対象データFL2aを格納するhdcc−cache領域20Aと、header情報FL3を格納するheader−cache領域20Bは、RAM20に対して共通に設けられる領域であるが、これらについても、ハードウェア的には異なるメモリデバイスに各領域が設定されるようにしても良いし、ハードウェア的に共通とされるメモリ領域内に保持されるようにしても良い。
この点については、HDD21に記憶されるデータベースファイルFL1とhdcc処理対象ファイルFL2についても同様であり、互いにハードウェア的に異なる記憶装置となるHDDに記憶されていてもよいものである。
つまり、本発明における第1、第2の情報保持手段は、それぞれ異なる記憶デバイスであってもよいし、共通のデバイスであってもよい。そして、本発明における第1〜第3の不揮発性記憶手段の関係としても、同様のことがいえる。
【0099】
また、hdcc処理対象データFL2aを保持するhdcc−cache領域20Aと、header情報FL3を保持するheader−cache領域20Bは、共に揮発性の記憶領域、即ちRAMであることとしているが、不揮発性の領域であってもよい。つまり、例えば初期化処理時において、hdcc処理対象ファイルFL2を形成するheader領域の情報、及びデータイメージにより、不揮発性領域に記憶されるheader情報FL3及びhdcc処理対象データFL2aの上書きを行ってしまえば、これまでに説明した実施の形態と同じデータベースキャッシュのシステム動作が得られるものである。
【0100】
また、コンテンツデータ及びデータベースファイルFL1、及びcache file(hdcc処理対象ファイルFL2)を保存することに関しても、HDDに限定されるべきものではなく、任意の不揮発性の記憶装置、記憶媒体とされてよいものである。
【0101】
また、本発明の下では、初期化時において実行される、同期が得られているか否かの検証を、アプリケーション31が起動中においても実行できるように構成することも考えられる。この場合には、例えば図10及び図11として示した終了時の処理(つまり、hdcc処理対象データFL2a及びheader情報FL3の登録によってhdcc処理対象ファイルFL2を更新する処理)を、アプリケーション31が起動中における所定の機会、タイミングで実行させる。
そのうえで、これもアプリケーション31が起動中における所定の機会、タイミングにより、例えば図5のステップS101→S102→S103の処理を実行すればよい。そして、ステップS103の処理として、肯定結果が得られたのであれば、特に処理は実行せずに、これまでのhdcc処理対象データFL2aの保持を継続すればよい。これに対して、否定結果が得られたのであれば、ステップS105→S106の処理を所要の機会で実行することで、hdcc処理対象データFL2aと、データベースファイルFL1との再同期を図るようにすればよい。
【0102】
また、実施の形態では、コンテンツ対応のアプリケーションが利用するhdcc処理対象データFL2aとして、コンテンツのリスト表示に必要なリストデータであることとしているが、これに限定されるものではない。つまり、データベースファイルの情報を利用、又は参照することで得られる情報であり、コンテンツ管理、再生などのためにアプリケーションが利用できる情報でありさえすればよいものとされる。
【0103】
また、実施の形態では、本発明としての情報処理を、図1に示す構成の記録再生装置1により実行させることとしているが、このような記録再生装置の構成についても適宜変更されて構わない。例えば、パーソナルコンピュータなどにより本発明としての情報処理装置を実現することも可能である。
さらに、データベースの管理対象となるコンテンツデータは、オーディオデータファイルに限定される必要はなく、例えばビデオデータであっても良い。
【0104】
【発明の効果】
以上説明したように本発明は、コンテンツデータ(単位データ)管理のためのデータベースをHDD(不揮発性記憶手段/記憶領域)に記憶させておくようにしている。そのうえで、このデータベースを基として作成されたhdcc処理対象データ(hdcc処理対象ファイルのデータイメージ:単位データ処理用情報)を保持しておくようにされる。アプリケーション(単位データ対象処理手段)は、このhdcc処理対象データを利用して、コンテンツデータに関する所要の処理を実行するようにされる。
そして、例えば上記アプリケーションの処理結果に応じてデータベースについての登録処理が必要となったときには、必ず、hdcc処理対象データについての登録処理も実行するようにされる。
これにより、本発明としては、最初にデータベースを利用してhdcc処理対象データを作成しさえすれば、以降は、データベースに同期したhdcc処理対象データが得られていることになる。従って、例えばアプリケーションの起動時などに伴ってhdcc処理対象データをマウントする必要が生じたときには、逐一、データベースの情報を利用して作成するのではなく、これまでのhdcc処理対象データをそのままマウントして利用すればい良いことになる。
データベースの情報を利用してhdcc処理対象データを作成する処理は、重い処理であり時間もかかる。これに対して、既に在るhdcc処理対象データをマウントする処理は軽いものであり処理時間も短い。これにより、本発明によっては、例えばアプリケーションが起動して、hdcc処理対象データを処理可能となるまでの時間が大幅に短縮されることになる。つまり、アプリケーションが起動を完了して操作が可能となるまでの時間が短縮されるものである。また、このときの処理も軽いものであることから、他の処理プロセスの実行効率を阻害することもない。
【図面の簡単な説明】
【図1】本発明の実施の形態としての記録再生装置の構成例を示すブロック図である。
【図2】本実施の形態の記録再生装置のHDDに記憶されるコンテンツデータのディレクトリ管理を示す説明図である。
【図3】コンテンツデータ管理/再生のためのプログラムの構成を示すブロック図である。
【図4】実施の形態のデータベースファイル、及びhdcc処理対象ファイルの構造例を示す図である。
【図5】データベースキャッシュのための処理として、初期化処理を示すフローチャートである。
【図6】図2に示すプログラム構成のもとでの初期化処理のシーケンスを示すアローチャートである。
【図7】図3に示すプログラム構成のもとでの初期化処理のシーケンスを示すアローチャートである。
【図8】データベースキャッシュのための処理として、登録処理を示すフローチャートである。
【図9】図3に示すプログラム構成のもとでの登録処理のシーケンスを示すアローチャートである。
【図10】データベースキャッシュのための処理として、終了処理を示すフローチャートである。
【図11】図3に示すプログラム構成のもとでの終了処理のシーケンスを示すアローチャートである。
【符号の説明】
1 記録再生装置、11 CPU、12 バス、13 ROM、14 操作入力部、15 入力処理部、16 表示処理部、17 ディスプレイモニタ、18CDドライブ制御部、19 メディアドライブ、20 RAM、21 HDD、22 通信処理部、23 ネットワークインターフェイス、24 オーディオデータ処理部、25 スピーカ、26 アンテナ、27 チューナ、31 アプリケーション、32 hdcc(ハードディスクコンテンツコントローラ)、33 cdam(コンテンツデータアクセスモジュール)、34 データベースモジュール、35 ファイルシステム、20A hdcc−cache領域、20B header−cache領域、FL1 データベースファイル、FL2 hdcc処理対象ファイル、FL2a hdcc処理対象データ、FL3 header情報
Claims (10)
- 所定の記憶媒体に記憶されている1以上の単位データを管理するデータベースが記憶される第1の不揮発性記憶手段と、
上記データベースに対する登録処理を実行する第1の登録手段と、
上記データベースを形成する情報のうちから所定の情報を利用して作成されたものであり、上記単位データを対象とする所要の処理に利用される、単位データ処理用情報が保持される第1の情報保持手段と、
上記単位データ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理手段と、
上記単位データ処理用情報に対する登録処理を実行する第2の登録手段と、を備え、
上記第2の登録手段は、
上記単位データ対象処理手段が実行した処理結果に応じて、上記第1の登録手段による上記データベースに対する登録処理が実行されるときには、上記処理結果に応じた上記単位データ処理用情報に対する登録処理を実行するようにされている、
ことを特徴とする情報処理装置。 - 上記単位データ対象処理手段として起動された処理が終了されるのに応じて、上記第1の情報保持手段に保持されていた単位データ処理用情報を、第2の不揮発性記憶手段に対して記憶させる記憶制御手段、
をさらに備えることを特徴とする請求項1に記載の情報処理装置。 - 上記単位データ対象処理手段が実行した処理結果に応じて、上記第1の登録手段による上記データベースに対する登録処理、及び上記第2の登録手段による単位データ処理用情報に対する登録処理が実行される場合に、上記データベース及び上記単位データ処理用情報の登録内容が同期していることを示すための同期情報を、上記単位データに対して格納すると共に、第2の情報保持手段に保持させる同期情報対応処理手段をさらに備え、
上記記憶制御手段は、上記第2の情報保持手段に保持されている上記同期情報を、第3の不揮発性記憶手段に対して記憶させる、
ことを特徴とする請求項2に記載の情報処理装置。 - 上記第3の不揮発性記憶手段と、上記第2の不揮発性記憶手段は、同一記憶領域を有するものとされ、
上記記憶制御手段は、上記単位データ処理用情報及び上記同期情報を有して形成されるファイルが形成されるようにして、上記単位データ処理用情報及び上記同期情報を上記同一記憶領域に記憶させる、
ことを特徴とする請求項3に記載の情報処理装置。 - 上記第3の不揮発性記憶手段に記憶されている上記同期情報と、上記データベースに格納されている上記同期情報とに基づいて、上記第2の不揮発性記憶手段に記憶されている単位データ処理用情報と、上記データベースの登録内容が同期しているか否かについて判定する判定手段、
をさらに備えることを特徴とする請求項3に記載の情報処理装置。 - 上記単位データ処理用情報を初期化するときに、上記判定手段により同期しているとの判定結果が得られた場合には、上記第2の不揮発性記憶手段に記憶されている単位データ処理用情報を、上記第1の情報保持手段に保持させるようにされた初期化手段、
を備えることを特徴とする請求項5に記載の情報処理装置。 - 上記単位データ処理用情報を初期化するときに、上記判定手段により同期していないとの判定結果が得られた場合には、上記第1の不揮発性記憶手段に記憶されているデータベースを利用して、上記単位データ処理用情報を作成し、この作成された上記単位データ処理用情報を、上記第1の情報保持手段に保持させるようにされた初期化手段、
を備えることを特徴とする請求項5に記載の情報処理装置。 - 所定の記憶媒体に記憶されている1以上の単位データを管理する情報であり、不揮発性記憶領域に記憶されているデータベースに対する登録処理を実行する第1の登録処理と、
上記データベースを形成する情報のうちから所定の情報を利用して作成され、上記単位データを対象とする所要の処理に利用される情報であり、情報保持領域に保持されるコンテンツ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理と、
上記コンテンツ処理用情報に対する登録処理を実行する第2の登録処理と、を実行するものとされ、
上記第2の登録処理は、
上記単位データ対象処理としての処理結果に応じて、上記第1の登録処理による上記データベースに対する登録処理が実行されるときには、上記処理結果に応じた上記単位データ処理用情報に対する登録処理を実行するようにされている、
ことを特徴とする情報処理方法。 - 所定の記憶媒体に記憶されている1以上の単位データを管理する情報であり、不揮発性記憶領域に記憶されているデータベースに対する登録処理を実行する第1の登録処理と、
上記データベースを形成する情報のうちから所定の情報を利用して作成され、上記単位データを対象とする所要の処理に利用される情報であり、情報保持領域に保持されるコンテンツ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理と、
上記コンテンツ処理用情報に対する登録処理を実行する第2の登録処理と、を情報処理装置に実行させるものとされ、
上記第2の登録処理は、
上記単位データ対象処理としての処理結果に応じて、上記第1の登録処理による上記データベースに対する登録処理が実行されるときには、上記処理結果に応じた上記単位データ処理用情報に対する登録処理を実行するものである、
ことを特徴とするプログラム。 - 所定の記憶媒体に記憶されている1以上の単位データを管理する情報であり、不揮発性記憶領域に記憶されているデータベースに対する登録処理を実行する第1の登録処理と、
上記データベースを形成する情報のうちから所定の情報を利用して作成され、上記単位データを対象とする所要の処理に利用される情報であり、情報保持領域に保持されるコンテンツ処理用情報を利用して、上記単位データについての所要の処理を実行する単位データ対象処理と、
上記コンテンツ処理用情報に対する登録処理を実行する第2の登録処理と、を情報処理装置に実行させるものとされ、
上記第2の登録処理は、
上記単位データ対象処理としての処理結果に応じて、上記第1の登録処理による上記データベースに対する登録処理が実行されるときには、上記処理結果に応じた上記単位データ処理用情報に対する登録処理を実行するものとされるプログラム、
が記憶されることを特徴とする記憶媒体。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003119948A JP4100241B2 (ja) | 2003-04-24 | 2003-04-24 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
US10/817,637 US7308461B2 (en) | 2003-04-24 | 2004-04-02 | Information processing method, apparatus, program and recording medium |
KR1020040026228A KR20040092418A (ko) | 2003-04-24 | 2004-04-16 | 정보처리장치, 정보처리방법, 프로그램, 기억매체 |
CNB2004100346985A CN100429642C (zh) | 2003-04-24 | 2004-04-23 | 信息处理方法、装置、程序和记录介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003119948A JP4100241B2 (ja) | 2003-04-24 | 2003-04-24 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004326923A true JP2004326923A (ja) | 2004-11-18 |
JP2004326923A5 JP2004326923A5 (ja) | 2005-06-09 |
JP4100241B2 JP4100241B2 (ja) | 2008-06-11 |
Family
ID=33447082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003119948A Expired - Fee Related JP4100241B2 (ja) | 2003-04-24 | 2003-04-24 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7308461B2 (ja) |
JP (1) | JP4100241B2 (ja) |
KR (1) | KR20040092418A (ja) |
CN (1) | CN100429642C (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105103232A (zh) * | 2013-03-28 | 2015-11-25 | 三菱电机株式会社 | 再现装置、控制方法以及程序 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6221717B2 (ja) * | 2013-12-12 | 2017-11-01 | 富士通株式会社 | ストレージ装置、ストレージシステム及びデータ管理プログラム |
US10671494B1 (en) * | 2017-11-01 | 2020-06-02 | Pure Storage, Inc. | Consistent selection of replicated datasets during storage system recovery |
WO2020049746A1 (ja) * | 2018-09-07 | 2020-03-12 | 株式会社東芝 | データベース装置、プログラム、およびデータ処理方法 |
US11078762B2 (en) | 2019-03-05 | 2021-08-03 | Swm International, Llc | Downhole perforating gun tube and components |
US10689955B1 (en) | 2019-03-05 | 2020-06-23 | SWM International Inc. | Intelligent downhole perforating gun tube and components |
US11268376B1 (en) | 2019-03-27 | 2022-03-08 | Acuity Technical Designs, LLC | Downhole safety switch and communication protocol |
US11619119B1 (en) | 2020-04-10 | 2023-04-04 | Integrated Solutions, Inc. | Downhole gun tube extension |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5751672A (en) * | 1995-07-26 | 1998-05-12 | Sony Corporation | Compact disc changer utilizing disc database |
US6829368B2 (en) * | 2000-01-26 | 2004-12-07 | Digimarc Corporation | Establishing and interacting with on-line media collections using identifiers in media signals |
US6077084A (en) * | 1997-04-01 | 2000-06-20 | Daiichi Kosho, Co., Ltd. | Karaoke system and contents storage medium therefor |
US6862689B2 (en) * | 2001-04-12 | 2005-03-01 | Stratus Technologies Bermuda Ltd. | Method and apparatus for managing session information |
US6795834B2 (en) * | 2000-06-26 | 2004-09-21 | Fujitsu Limited | Apparatus, method, and storage medium for file management |
JP2003030967A (ja) * | 2001-07-18 | 2003-01-31 | Sony Corp | 記録装置および方法、記録媒体、並びにプログラム |
US7054888B2 (en) * | 2002-10-16 | 2006-05-30 | Microsoft Corporation | Optimizing media player memory during rendering |
US7007049B2 (en) * | 2002-11-18 | 2006-02-28 | Innopath Software, Inc. | Device memory management during electronic file updating |
-
2003
- 2003-04-24 JP JP2003119948A patent/JP4100241B2/ja not_active Expired - Fee Related
-
2004
- 2004-04-02 US US10/817,637 patent/US7308461B2/en not_active Expired - Fee Related
- 2004-04-16 KR KR1020040026228A patent/KR20040092418A/ko not_active Application Discontinuation
- 2004-04-23 CN CNB2004100346985A patent/CN100429642C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105103232A (zh) * | 2013-03-28 | 2015-11-25 | 三菱电机株式会社 | 再现装置、控制方法以及程序 |
US9661259B2 (en) | 2013-03-28 | 2017-05-23 | Mitsubishi Electric Corporation | Playback device, control method, and program |
CN105103232B (zh) * | 2013-03-28 | 2017-09-22 | 三菱电机株式会社 | 再现装置、控制方法以及程序 |
Also Published As
Publication number | Publication date |
---|---|
CN1540548A (zh) | 2004-10-27 |
JP4100241B2 (ja) | 2008-06-11 |
US7308461B2 (en) | 2007-12-11 |
KR20040092418A (ko) | 2004-11-03 |
US20040243625A1 (en) | 2004-12-02 |
CN100429642C (zh) | 2008-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4204977B2 (ja) | メディアプレーヤーのためのインテリジェントなシンクロ操作 | |
JP4321528B2 (ja) | 記録再生装置 | |
JP4695653B2 (ja) | メディア・プレーヤとホスト・デバイスとの間のワイヤレス同期化 | |
JP4022971B2 (ja) | 記憶装置およびデータ削除方法 | |
WO1999044202A1 (fr) | Dispositif d'enregistrement/lecture et procede d'enregistrement/lecture | |
JP2001110171A (ja) | 記録再生装置および方法、端末装置、送受信方法、ならびに、記憶媒体 | |
JP2000339207A (ja) | 記録媒体、データ処理装置 | |
JP2004038988A (ja) | 外部記憶媒体を用いたホスト処理装置 | |
JP2007102168A (ja) | 音楽データのダビング方法 | |
JP3945007B2 (ja) | 記録システムおよび記録方法 | |
JP4100241B2 (ja) | 情報処理装置、情報処理方法、プログラム、記憶媒体 | |
JP2003030015A (ja) | 記録装置および方法、記録媒体、並びにプログラム | |
JP2000163858A (ja) | 電子機器 | |
JP4581890B2 (ja) | 電子機器、記録制御方法、プログラムおよび記録媒体 | |
JP2004326923A5 (ja) | ||
JP2006202475A (ja) | ファイル転送システムおよびファイル転送方法 | |
JP4055270B2 (ja) | 記録情報転送装置、情報転送方法、及び情報転送システム | |
JP2001014805A (ja) | インタラクティブ光ディスク放送システム | |
JP2004102701A (ja) | 情報処理装置、情報処理方法、プログラム、記憶媒体 | |
JP4196998B2 (ja) | コンテンツデータ転送システム、転送方法、記憶装置、およびプログラム | |
JP4211795B2 (ja) | 通信方法、通信システム、通信方法、およびサーバ | |
JP4337914B2 (ja) | 情報通信システムおよび方法、ならびに、情報通信装置および方法 | |
JP2007102995A (ja) | 音楽cd中の楽曲をmp3プレィヤーにダビングする方法 | |
JP4135689B2 (ja) | プログラム、電子機器、データ処理方法および再生装置 | |
JP2007103005A (ja) | 記録再生装置、送受信方法および記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040902 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080121 |
|
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: 20080226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080310 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110328 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |