JP2007148993A - オブジェクト編纂装置、動作プログラムの一体化オブジェクト、情報伝達装置、情報伝達装置に格納された動作プログラムの起動方法、および情報伝達装置に格納された動作プログラムの起動プログラム - Google Patents

オブジェクト編纂装置、動作プログラムの一体化オブジェクト、情報伝達装置、情報伝達装置に格納された動作プログラムの起動方法、および情報伝達装置に格納された動作プログラムの起動プログラム Download PDF

Info

Publication number
JP2007148993A
JP2007148993A JP2005345644A JP2005345644A JP2007148993A JP 2007148993 A JP2007148993 A JP 2007148993A JP 2005345644 A JP2005345644 A JP 2005345644A JP 2005345644 A JP2005345644 A JP 2005345644A JP 2007148993 A JP2007148993 A JP 2007148993A
Authority
JP
Japan
Prior art keywords
integrated
compressed
program
operation program
function
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
JP2005345644A
Other languages
English (en)
Other versions
JP4409507B2 (ja
Inventor
Tenryo Misawa
天龍 三沢
Soichiro Matsumoto
壮一郎 松本
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005345644A priority Critical patent/JP4409507B2/ja
Publication of JP2007148993A publication Critical patent/JP2007148993A/ja
Application granted granted Critical
Publication of JP4409507B2 publication Critical patent/JP4409507B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】動作プログラムにおける特定の機能を早く実現することが可能となる情報伝達装置を得る。また、この情報伝達装置に格納された動作プログラブの起動方法および起動プログラムを提供する。さらに、動作プログラムの一体化オブジェクトおよび一体化オブジェクトを編纂するオブジェクト編纂装置を提供する。
【解決手段】オブジェクト編纂装置は、オブジェクト作成手順記載ファイルにて任意の機能を指定すれば、該機能が呼び出すオブジェクトを指定された機能に纏めて配置すると共に、機能毎に圧縮し、圧縮された複数の圧縮オブジェクトを連結して圧縮一体化オブジェクトを生成する。圧縮一体化オブジェクトを情報伝達装置において動作可能な動作プログラムとして起動する際には、圧縮一体化オブジェクトを構成する複数の圧縮オブジェクトのうち、指定された機能に纏めた圧縮オブジェクトを選択して動作可能なプログラムに変換し、該プログラムを起動する。
【選択図】図2

Description

本発明は、例えば映像情報表示装置等の情報伝達装置に関するものである。また、上記情報伝達装置に格納され、上記特定の機能を含む動作プログラムの起動方法、およびこの動作プログラムの起動プログラムに関するものである。さらに、上記情報伝達装置に格納される動作プログラムの一体化オブジェクト、および上記一体化オブジェクトを編纂するオブジェクト編纂装置に関するものである。
映像情報表示装置としては様々な機器が考えられるが、ここでは例えば液晶デジタルテレビに代表されるデジタルAV機器について説明する。
図13は従来の映像情報表示装置の不揮発性メモリに格納されたカーネル(kernel)とアプリケーション(application)の一体化オブジェクトを示した図である。映像情報表示装置の不揮発性メモリには圧縮された一体化オブジェクト9が格納されており、該一体化オブジェクト9は、.textセクション9aと、.dataセクション9bとの2つのセクションに分かれている。セクション9aにはカーネルとアプリケーションの本体や読み込み用データ、およびカーネルやアプリケーションにて規定されている各種函数のアドレス配置情報でデバッグ時に使用するシンボル(symbol)テーブルが保存され、セクション9bにはカーネルとアプリケーションの読み書き用データが保存されている。
図14は従来の映像情報表示装置における起動ソフトウェア(動作プログラム)が、ブートプログラム、カーネル、アプリケーションの順に起動していく様子を示した図である。10aは該映像情報表示装置に電源が投入された際に最初に起動するブートプログラム、10bは該ブートプログラムから起動されるカーネル、10cは該カーネルから起動されるアプリケーションである。
図15は従来の映像情報表示装置の不揮発性メモリに格納された一体化オブジェクトが、揮発性メモリにコピーされた後展開され、カーネルおよびアプリケーションが起動する様子を示した図である。図15において、1bは該映像情報表示装置の揮発性メモリであるSdRAM、1cは該映像情報表示装置の不揮発性メモリであるフラッシュROMである。9はメモリ1cに格納されている圧縮されたカーネルおよびアプリケーションの一体化オブジェクト(圧縮プログラム)、9cは該一体化オブジェクトがメモリ1c内にて格納されている領域の開始アドレス、9dは該一体化オブジェクトがメモリ1c内にて格納されている領域の終了アドレスである。また、11は一体化オブジェクト9がメモリ1bにコピーされた先の一体化オブジェクト(圧縮プログラム)、11aは一体化モオブジェクト11がメモリ1b内にて格納されている領域の開始アドレス、11bは一体化オブジェクト11がメモリ1b内にて格納されている領域の終了アドレスである。更に12は一体化オブジェクト11がメモリ1b内で展開された後のプログラム、12aは一体化オブジェクト11がメモリ1b内にて展開された後のプログラム領域の開始アドレス、12bは一体化オブジェクト11がメモリ1b内にて展開された後のプログラム領域の終了アドレスである。
従来の映像情報表示装置の不揮発性メモリ1cに格納された起動ソフトウェア(動作プログラム)は、当初圧縮された一体化オブジェクトとして、図13に示すように、カーネルとアプリケーションの本体、起動時に必要なカーネルとアプリケーションの読み込み用データ、カーネルとアプリケーションの読み書き用データ、およびsymbolテーブル等が混在一体となっている。
このような起動ソフトウェアが格納された映像情報表示装置においては、該映像情報表示装置の電源が投入されると、図14に示すように、まず始めにブートプログラム10aが起動する。ブートプログラム10aにおいてはブートの初期化処理がコールされ、該初期化処理内にて、図15に示すように、不揮発性メモリ1cに格納された一体化オブジェクト9を揮発性メモリ1bの所定アドレスにコピーし(順番1)、続けて揮発性メモリ1bにコピーされた一体化オブジェクト11を揮発性メモリ1bの所定アドレス12aに展開する(順番2)。展開された一体化オブジェクトは動作可能なプログラム12として、そのプログラム開始アドレス12aからカーネル10bが起動する(順番3)。そしてカーネル10bはその処理の最後でアプリケーションをキックし、キックされたアプリケーション10cが起動することとなる(例えば、非特許文献1参照。)。
月刊誌「Interface」(CQ出版社、2005年1月号、山際 伸一著、「プログラムのROM化手法の実際」、p.96−99)
従来の映像情報表示装置は上記の様な起動方法を取るため、該映像情報表示装置に電源が投入された際に起動したことを示すオープニング用の画像ファイルを表示したり、チューナで受信したトランスポートストリーム(Transport Stream、略してTS)の映像音声情報をデコードして動画を表示再生したりする機能が、動作可能なプログラムの後半に位置されている場合は、プログラムの実行が該位置に来て初めて該画像ファイルや該動画の表示が行われることとなり、該画像ファイルや該動画の表示が電源投入後すぐに実現出来ないと言う問題点があった。
更に、該映像情報表示装置に搭載されるプログラムのサイズはかなり大きいものになりがちであるため、圧縮された一体化オブジェクトをコピーした後、動作可能なプログラムへ展開して展開開始部分から起動すると、電源投入から該画像ファイルや該動画の表示に相当の時間が掛かってしまうと言う問題点があった。
本発明はかかる問題点を解決するためになされたもので、情報伝達装置のメモリに格納される動作プログラムのサイズが大きいものであったとしても、上記動作プログラムにおける特定の機能を早く実現し、ユーザにとって速く起動したと感じさせることが可能な情報伝達装置を提供することを目的としている。
また、このような情報伝達装置に格納された動作プログラブの起動方法、および該動作プログラムの起動プログラムを提供するものである。
さらに、上記情報伝達装置に格納される動作プログラムの一体化オブジェクト、および上記一体化オブジェクトを編纂するオブジェクト編纂装置を提供するものである。
本発明に係るオブジェクト編纂装置は、各種の機能を有する動作プログラムが使用する複数のソースファイルを各々オブジェクトファイルに変換する変換手段、変換された複数の上記オブジェクトファイルを一体化して一体化オブジェクトを作成する一体化手段、およびオブジェクト作成手順記載ファイルにて、上記動作プログラムに含まれる各種の機能を指定することにより、上記一体化オブジェクトの中から、指定された機能が呼び出すオブジェクトを選択し、選択されたオブジェクトを指定された機能毎に纏めて配置する一体化オブジェクト編集手段を備えたものである。
本発明に係る動作プログラムの一体化オブジェクトは、上記オブジェクト編纂装置により作成され、複数のオブジェクトが動作プログラムに含まれる任意の機能毎に纏めて配置されているものである。
本発明に係る情報伝達装置は、上記動作プログラムの一体化オブジェクトを格納する第1のメモリ、上記一体化オブジェクトを動作可能なプログラムとして記録する第2のメモリ、および上記第1のメモリに格納される上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを上記第2のメモリに格納して動作可能なプログラムとし、上記所定の機能を有するプログラムを優先的に起動する制御手段を備えたものである。
本発明に係る情報伝達装置に格納された動作プログラムの起動方法は、上記動作プログラムの一体化オブジェクトを動作可能な動作プログラムとして起動する際に、上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを動作可能なプログラムとし、上記所定の機能を有するプログラムを優先的に起動するものである。
本発明に係る情報伝達装置に格納された動作プログラムの起動プログラムは、上記動作プログラムの一体化オブジェクトを動作可能な動作プログラムとして起動する起動プログラムであって、上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを動作可能なプログラムとするステップ、および上記所定の機能を有するプログラムを優先的に起動するステップを備えたものである。
本発明のオブジェクト編纂装置で生成された一体化オブジェクトは、複数のオブジェクトが動作プログラムに含まれる任意の機能毎に纏めて配置されているので、生成される一体化オブジェクトから指定された機能を容易に切り出せる効果がある。
また、指定された機能を含むオブジェクトを優先的に読み出し実行することが可能となる効果がある。
また、本発明の情報伝達装置、並びにこの情報伝達装置に格納された動作プログラムの起動方法および起動プログラムは、本発明のオブジェクト編纂装置によって作成された一体化オブジェクトを動作可能な動作プログラムとして起動する際に、上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを動作可能なプログラムとし、上記所定の機能を有するプログラムを優先的に起動するので、特定の機能を早く起動させることが可能となる効果がある。
実施の形態1.
図1は本発明の実施の形態1による映像情報表示装置のハードウェアユニットの結線を示した図である。図1において、1は液晶デジタルテレビに代表される映像情報表示装置である。映像情報表示装置1にインストールされているチップとして、1aはCPU(中央演算処理装置)、1bは揮発性メモリであるSdRAM(第2のメモリ)、1cは不揮発性メモリであるフラッシュROM(第1のメモリ)、1dはデータ等を格納するEPROM、1eはシリアル通信用のUART部、1fはMPEGデコード用の専用LSIである。2aはデータ伝送路としてのローカルバス、4a、4bは外部とのコネクタである。これらコネクタを介してターミナルPC7やAV出力インタフェース6との連携が可能となる。ターミナルPC7はソフトウェア等のデバッグ時に使用するターミナルPCで、UART部1eとのコネクタ4aにシリアル通信ケーブル8を介して映像情報表示装置1からのデバッグメッセージをシリアルコンソール上に表示させるためのものである。
CPU1aはローカルバス2aを通じてSdRAM1b、フラッシュROM1c、EPROM1d、UART部1e、更にMPEG用LSI1fに対して、指令を出したり応答結果を受信したりして、これらSdRAM1b、フラッシュROM1c、EPROM1d、UART部1e、更にMPEG用LSI1fの統括を行っている。フラッシュROM1cにはカーネルやアプリケーション等の映像情報表示装置1の動作自体に係わるソフトウェア(動作プログラム)が格納されており、EPROM1dにはフォント等の上記ソフトウェアが必要とする各種データが格納されている。
映像情報表示装置1の電源が投入されると、フラッシュROM1cに格納された上記動作ソフトウェアはローカルバス2aを介してSdRAM1bにコピーされ、続けてコピーされた該ソフトウェアはSdRAM1b上に展開されて起動可能なソフトウェアとなり、該ソフトウェアの起動が開始される。ソフトウェアが起動し、MPEGエンコードされた映像音声データをデコードして画面に表示再生する際には、該映像音声データをMPEG用LSI1fがデコードし、表示再生可能な映像音声データとしてAV出力インタフェース6に供給されることとなる。
このような構成の映像情報表示装置において、不揮発性メモリ1cには、カーネルとアプリケーション等の映像情報表示装置1の動作自体に係わるソフトウェア(動作プログラム)が圧縮された一体化オブジェクトとして格納されている。従来の一体化オブジェクトは前述の図13に示すように、カーネルとアプリケーションの本体や起動時に必要な読み込み用データ、読み書き用データ、およびsymbolテーブル等が混在一体となっている。これに対して、本実施の形態の一体化オブジェクトは、動作プログラムに含まれる各種の機能毎に圧縮された複数の圧縮オブジェクトを連結した構成となっている。以下に、本実施の形態の一体化オブジェクトおよび動作プログラムの起動方法を詳細に説明する。
図2は本発明の実施の形態1による映像情報表示装置における不揮発性メモリに格納されたカーネルとアプリケーションの一体化オブジェクトを示した図である。14は機能分割された本実施の形態の一体化オブジェクトの例であり、該一体化オブジェクト14は主に3つのセクションに分かれており、その内、14aがヘッダ、14bが.textセクション、14cが.dataセクションである。
セクション14bには、カーネルの本体部分はカーネルテキストオブジェクト(kernel_テキスト)14b_1として、アプリケーションの本体部分はアプリケーションテキストオブジェクト(application_テキスト)14b_2として、カーネルの読み込み用データはカーネルroデータオブジェクト(kernel_roデータ)14b_4として、アプリケーションの読み込み用データはアプリケーションroデータオブジェクト(application_roデータ)14b_5として、更にカーネルやアプリケーションにて規定されている各種函数のアドレス配置情報で、デバッグ時に使用するシンボルテーブルオブジェクト(symbolテーブル)14b_3が纏めて配置されている。
また、セクション14cには、カーネルの読み書き用データはカーネルデータオブジェクト(kernel_データ)14c_1として、アプリケーションの読み書き用データはアプリケーションデータオブジェクト(application_データ)14c_2として纏めて配置されている。
また、これらのオブジェクト14b_1〜14b_5、14c_1〜14c_2は各々が単独で圧縮されており、機能毎に圧縮された複数の圧縮オブジェクトを連結した構成となっている。
加えて機能分割されたこれらのオブジェクト14b_1〜14b_5、14c_1〜14c_2のアドレス情報を格納したアドレス格納ヘッダ14aを付与した構成となっている。
図2に示された一体化オブジェクト14は、カーネルとアプリケーションの本体、起動時に必要なカーネルとアプリケーションの読み込み用データ、カーネルとアプリケーションの読み書き用データ、およびsymbolテーブル等が混在一体となっている従来の一体化オブジェクトとは異なり、各種機能毎に纏められて圧縮され、これら圧縮オブジェクトを連結して一体化しているため、ブロック化された特定の機能のみの読み込みが可能となっている。
図3は本発明の実施の形態1による一体化オブジェクトに付与されているアドレス格納ヘッダ14aに記述されたアドレス情報を示す図であり、各オブジェクトのサイズ情報を示した図である。14a_1は機能分割していない一体化オブジェクトと異なることを示すための識別ヘッダである。14a_2と14a_3はカーネルテキストオブジェクト14b_1の圧縮サイズと展開サイズであり、以下同様に、14a_4と14a_5はアプリケーションテキストオブジェクト14b_2の、14a_6と14a_7はsymbolテーブルオブジェクト14b_3の、14a_8と14a_9はカーネルroデータオブジェクト14b_4の、14a_10と14a_11はアプリケーションroデータオブジェクト14b_5の、14a_12と14a_13はカーネルデータオブジェクト14c_1の、14a_14と14a_15はアプリケーションデータオブジェクト14c_2の、夫々圧縮サイズと展開サイズである。
次に上記のような本発明の実施の形態1による一体化オブジェクトを作成するオブジェクト編纂装置について示す。
図4は本発明の実施の形態1によるオブジェクト編纂装置の構成、および動作を説明する図であり、各種の機能を有する動作プログラムが使用する複数のソースファイルから圧縮された一体化オブジェクトを作成する際の手順を示している。図4において、100は開発者が開発環境において作成したカーネル101やアプリケーション102のソースファイルであり、開発者が判読可能な命令が記載されている。200はビルド環境であり、プリプロセッサ200a、コンパイラ200b、アセンブラ200c、リンカ200d、本発明の独自の機能を備えた圧縮一体化オブジェクト編集手段200eで構成されるオブジェクト編纂装置である。該オブジェクト編纂装置は制御手段(図示を省略)により、これらプリプロセッサ200a、コンパイラ200b、アセンブラ200c、リンカ200d、圧縮一体化オブジェクト編集手段200eを統轄して、プリプロセス処理ファイル100a、アセンブリファイル100b、オブジェクトファイル100c、圧縮されていない一体化オブジェクトファイル100d、機能毎に纏められた圧縮一体化オブジェクトファイル100eを順次作成していく。300はビルド環境200が参照するオブジェクト作成手順記載ファイルであり、実際の開発環境ではMakefile等がこれに当たる。
一体化オブジェクトビルド環境200はオブジェクト作成手順記載ファイル300に従って、開発者が作成したカーネル101やアプリケーション102のソースファイル100をプリプロセッサ200aに処理させてプリプロセス処理ファイル100aを作成する(順番1)。続けて該プリプロセス処理ファイル100aをコンパイラ200bに通すことによりアセンブリ処理ファイル100bに変換する(順番2)。生成された該アセンブリファイル100bはアセンブラ200cによって処理され、バイナリデータで記述されたオブジェクトファイル100cに変換される(順番3)。リンカ15dは該オブジェクトファイル100cを互いにリンクさせることにより、カーネルとアプリケーションが一体となった実行可能な一体化オブジェクトファイル100dを作成するが、この時点では該一体化オブジェクトファイル100dの圧縮は行われていない(順番4)。圧縮一体化オブジェクト編集手段200eは、作成された該一体化オブジェクトファイル100d内に記載された特定の函数部分や特定の機能部分を走査して選択し、選択されたこれらのオブジェクトを整理して纏めて配置し、さらに纏めて配置された各オブジェクトをそれぞれ圧縮し、これら圧縮された各圧縮オブジェクト(カーネル部分100e_1、アプリケーション部分100e_2)を互いに連結することで、機能毎に纏められた圧縮一体化オブジェクトファイル100eを作成している(順番5)。
なお、本発明の独自の機能を備えた上記圧縮一体化オブジェクト編集手段200eは、例えばperlやC言語等のプログラム言語で記述されたプログラムで構成されている。
図5は上記圧縮一体化オブジェクト編集手段200eで作成される圧縮一体化オブジェクトファイル100eの主要部と、作成前の一体化オブジェクトファイル100dの主要部を示す図である。従来の一体化オブジェクトは図5の一体化オブジェクト100dを単に圧縮したものであり、各機能(ファンクション)やオブジェクトファイル、いずれかのファンクションからコールされる函数等が雑然と配置されている。本発明では、一体化オブジェクト100dを圧縮する前に、まず、図5に示すように、特定の機能(ファンクション)や該ファンクションが使用するオブジェクト、該ファンクションからコールされる函数等が纏められて配置される構成とする。具体的には、Makefile等の一体化オブジェクト作成手順記載ファイルにおいて、機能毎に纏めたいファンクション(例えばあるタスクを纏めたいのであれば、そのタスクの大元となる函数)を指定する。この例においてはAブロックとBブロックとが指定される。圧縮一体化オブジェクト編集手段200eは、一体化オブジェクトファイル100dを走査することにより、Aブロックから頻繁にコールされるライブラリ等のオブジェクトファイルとしてobj_2を、更にAブロックからコールされる函数としてfunc_4とfunc_5を自動的に選択してこれらを纏めて配置し、圧縮する。Bブロックについても同様で、Bブロックから頻繁にコールされるオブジェクトファイルとしてobj_1を、更にBブロックからコールされる函数としてfunc_1、func_2、そしてfunc_8を自動的に選択してこれらを纏めて配置し、圧縮する。機能毎に纏めたいファンクションとして指定されたものがこれ以外になければ、残りのオブジェクトファイルや函数を纏めて配置し、圧縮する。得られた複数の圧縮オブジェクト13a、13b、13cを連結すると共に、ヘッダ14aを付与して圧縮一体化オブジェクトファイル100e(図2の一体化オブジェクト14に対応)を作成する。このようにすることにより、圧縮一体化オブジェクトファイル100eから、例えばAブロックに関する圧縮オブジェクト13aを容易に切り出すことができる。
図6は本発明の実施の形態1による映像情報表示装置における起動ソフトウェア(動作プログラム)を示す図であり、ブートプログラムからアプリケーションが起動していく様子を示すフローチャートである。図1に示す構成の映像情報表示装置において、電源が投入されると最初にブートプログラムが起動するが、該ブートプログラムは、不揮発性メモリ1cに格納されている圧縮一体化オブジェクト14の識別ヘッダ14a_1を調査する(S100)。調査の結果、識別ヘッダ14a_1が通常ブート(従来の一体化オブジェクト)であるか分割ブート(本発明の実施の形態1の一体化オブジェクト)であるかによって以下の処理が分かれる(S101)。識別ヘッダ14a_1が通常ブートである場合は、従来と同様のブート手順を行うこととなる。
まず、ブートプログラムが圧縮された一体化オブジェクト9をROM1cからRAM1bの所定アドレスにコピーし(S102)、続けてコピーされた一体化オブジェクト11をRAM1bの所定アドレスに展開する(S103)。実行ポインタは、こうしてRAM上に展開された最初のアドレスにジャンプすることで、該アドレスに書き込まれているカーネルが起動することとなる(S104)。カーネルはその処理の最後の部分でアプリケーションの呼び出しを行うことで、カーネルの処理が完了した後アプリケーションが起動する(S105)。そしてアプリケーションの起動完了(S208)をもって、該映像情報表示装置の起動が完了したこととなる。
識別ヘッダ14a_1が分割ブートである場合は、本発明のブート手順を行うこととなる。まず、ブートプログラムが圧縮一体化オブジェクト14から圧縮されたカーネルテキストオブジェクト14b_1、圧縮されたカーネルroデータオブジェクト14b_4、圧縮されたカーネルデータオブジェクト14c_1をROM1cからRAM1bの所定アドレスにコピーし(S202)、続けてコピーされたカーネルテキストオブジェクト、カーネルroデータオブジェクト、カーネルデータオブジェクトをRAM1bの所定アドレスに展開する(S203)。実行ポインタは、こうしてRAM上に展開されたカーネルの最初のアドレスにジャンプすることで、該アドレスに書き込まれているカーネルが起動することとなる(S204)。カーネルはその処理において、圧縮一体化オブジェクト14から圧縮されたアプリケーションテキストオブジェクト14b_2、圧縮されたアプリケーションroデータオブジェクト14b_5、圧縮されたアプリケーションデータオブジェクト14c_2をROM1cからRAM1bの所定アドレスにコピーし(S205)、続けてコピーされたアプリケーションテキストオブジェクト、アプリケーションroデータオブジェクト、アプリケーションデータオブジェクトをRAM1bの所定アドレスに展開する(S206)。実行ポインタは、こうしてRAM上に展開されたアプリケーションの最初のアドレスにジャンプすることで、該アドレスに書き込まれているアプリケーションが起動することとなる(S207)。そしてアプリケーションの起動完了(S208)をもって、該映像情報表示装置の起動が完了したこととなる。
本発明の実施の形態1による映像情報表示装置における起動ソフトウェア(動作プログラム)をさらに詳細に説明する。
図7は本発明の実施の形態1における起動ソフトウェアとアプリケーションが、ブートプログラム、カーネル、アプリケーションの順に起動していく様子を示した図である。10a_1は映像情報表示装置に電源が投入された際に最初に起動するブートプログラム、10b_1は該ブートプログラムから起動されるカーネル、10c_1は該カーネルから起動されるアプリケーションである。
映像情報表示装置の電源が投入されると、まず始めにブートプログラム10a_1が起動する。ブートプログラム10a_1においてはブートの初期化処理がコールされ、該初期化処理内にてメモリ1cに格納された圧縮一体化オブジェクト14の内、カーネル起動に関係のある圧縮オブジェクト3つを切り出してメモリ1bの所定アドレスにコピーし、続けてメモリ1bにコピーされた3つの圧縮オブジェクトをメモリ1bの所定アドレスに展開する。展開されたカーネル10b_1は動作可能となり起動される。
ここで、前述のオブジェクト編纂装置により圧縮一体化オブジェクト14を作成する際に、本来、アプリケーション前半に配置されていたオープニング画面の表示機能を、カーネル起動に係わる圧縮オブジェクトの中に配置してカーネル起動にかかわる圧縮オブジェクトを作成することにより、カーネル10b_1の前半にオープニング画面の表示機能を組み込むようにすれば、従来よりも早くオープニング画面の表示が実現することとなる。
但し、アプリケーションからカーネル10b_1に組み込む機能はオープニング画面の表示機能に限定するものとする。これはカーネルとは本来アプリケーションが起動するための最小構成であって、素早く起動する必要があり、いたずらに機能拡張するのは望ましくないためである。
更に、オープニング画面の表示直後にメモリ1cに格納された圧縮一体化オブジェクト14の内、アプリケーション起動に関係のある圧縮オブジェクト3つを切り出してメモリ1bの所定アドレスにコピーし、続けてメモリ1bにコピーされた圧縮オブジェクト3つをメモリ1bの所定アドレスに展開する。展開されたアプリケーション10c_1は動作可能となりカーネル10b_1の最後部でキックされるので、アプリケーション10c_1が起動することとなる。
ここで、本実施の形態においてカーネルの起動完了時間T1を従来の装置におけるカーネルの起動完了時間t1と比較すると、t1が10秒弱であるのに対しT1は2秒程度であり、本実施の形態においてはカーネルを従来よりも早く起動できる。したがって、前述のように、例えばオープニング画面のように特定の機能をカーネルの中に組み込むことにより、上記特定の機能を電源投入後早く実現し、ユーザにとって速く起動したと感じさせることが可能となる。
図8は本発明の実施の形態1による映像情報表示装置の不揮発性メモリ1cに格納された圧縮一体化オブジェクトの内、カーネル起動に関与する圧縮オブジェクトが、揮発性メモリ1bにコピーされた後展開され、カーネルが起動する様子を示した図である。これは図7でブートプログラム10a_1においてカーネル起動部分のコピーと展開を行っている処理を詳細に示したものに他ならない。
14はメモリ1cに格納されている本発明の圧縮一体化オブジェクト、14dは該一体化オブジェクトがメモリ1c内にて格納されている領域の開始アドレス、14eは該一体化オブジェクトがメモリ1c内にて格納されている領域の終了アドレスである。
また、15aは一体化オブジェクト14の内、カーネルテキストの圧縮オブジェクト(以下、オブジェクト(2)と記す。)14b_1をメモリ1bにコピーした先の圧縮オブジェクトを、15bは一体化オブジェクト14の内、カーネルroデータの圧縮オブジェクト(以下、オブジェクト(5)と記す。)14b_4をメモリ1bにコピーした先の圧縮オブジェクトを、15cは一体化オブジェクト14の内、カーネルデータの圧縮オブジェクト(以下、オブジェクト(7)と記す。)14c_1をメモリ1bにコピーした先の圧縮オブジェクトを表している。
更に、16aはコピーされた圧縮オブジェクト15aをメモリ1bに展開した先のプログラムを、16bはコピーされた圧縮オブジェクト15bをメモリ1bに展開した先のプログラムを、16cはコピーされた圧縮オブジェクト15cをメモリ1bに展開した先のプログラムを表している。
カーネルが起動するにはまず、ブートプログラム10a_1が、メモリ1cに格納されたオブジェクト(2)、オブジェクト(5)、オブジェクト(7)をそれぞれメモリ1bの所定アドレスにコピーしなければならない(順番1)。コピーされた圧縮オブジェクト15a、15b、15cは同じくブートプログラム10a_1によってメモリ1cの所定アドレスに展開される(順番2)。そして展開され各々が動作可能なソフトウェアとなった後、プログラムの動作ポインタはブートプログラム10a_1からカーネルテキストの開始アドレスへジャンプし、カーネルが起動することとなる(順番3)。
オブジェクト(2)、(5)、(7)のコピーについて詳細に説明する。コピーはまずオブジェクト(2)から開始される。オブジェクト(2)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14a(以下、オブジェクト(1)と記す)のサイズ)”を、コピー先アドレスは当初から分かっている“(カーネルテキストコピー開始アドレス)”を指定する。コピーサイズは図3に示したアドレス格納ヘッダ14aに記載されている“(圧縮サイズ14a_2)”を指定する。
オブジェクト(2)とオブジェクト(5)の間には本来アプリケーションテキストの圧縮オブジェクト(以下、オブジェクト(3)と記す。)14b_2がコピーされる筈であるので、この領域を空けてオブジェクト(5)をコピーする。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(5)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_6)”を、コピー先アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)”を、コピーサイズは“(圧縮サイズ14a_8)”を指定する。
オブジェクト(5)とオブジェクト(7)の間には本来アプリケーションroデータの圧縮オブジェクト(以下、オブジェクト(6)と記す。)14b_5がコピーされる筈であるので、この領域を空けてオブジェクト(7)をコピーする。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(7)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_6)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)”を、コピー先アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)”を、コピーサイズは“(圧縮サイズ14a_12)”を指定する。
オブジェクト(2)、(5)、(7)の展開について詳細に説明する。展開はまずオブジェクト(2)から開始される。オブジェクト(2)をメモリ1bに展開する際の展開元アドレスはコピー時に使用した“(カーネルテキストコピー開始アドレス)”を、展開先アドレスは当初から分かっている“(カーネルテキスト展開開始アドレス)”を、展開サイズは図3に示したアドレス格納ヘッダ14aに記載されている“(展開サイズ14a_3)”を指定する。
オブジェクト(2)とオブジェクト(5)の間には本来オブジェクト(3)とsymbolテーブルの圧縮オブジェクト(以下、オブジェクト(4)と記す。)14b_3が展開される筈であるので、この領域を空けてオブジェクト(5)を展開する。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(5)をメモリ1bに展開する際の展開元アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)”を、展開先アドレスは和“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)+(展開サイズ14a_5)+(展開サイズ14a_7)”を、展開サイズは“(展開サイズ14a_9)”を指定する。
オブジェクト(5)とオブジェクト(7)の間には本来オブジェクト(6)が展開される筈であるので、この領域を空けてオブジェクト(7)を展開する。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(7)をメモリ1bに展開する際の展開元アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)”を、展開先アドレスは和“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)+(展開サイズ14a_5)+(展開サイズ14a_7)+(展開サイズ14a_9)+(展開サイズ14a_11)”を、展開サイズは“(展開サイズ14a_13)”を指定する。
図9は本発明の実施の形態1による映像情報表示装置の不揮発性メモリ1cに格納された圧縮一体化オブジェクトの内、アプリケーション起動に関与する圧縮オブジェクトが、揮発性メモリ1bにコピーされた後展開され、アプリケーションが起動する様子を示した図である。これは図7でカーネル10b_1においてアプリケーション起動部分のコピーと展開を行っている処理を詳細に示したものに他ならない。
15dは一体化オブジェクト14の内、オブジェクト(3)14b_2をメモリ1bにコピーした先の圧縮オブジェクトを、15eは一体化オブジェクト14の内、オブジェクト(6)14b_5をメモリ1bにコピーした先の圧縮オブジェクトを、15fは一体化オブジェクト14の内、アプリケーションデータの圧縮オブジェクト(以下、オブジェクト(8)と記す。)14c_2をメモリ1bにコピーした先の圧縮オブジェクトを表している。
更に、16dはコピーされた圧縮オブジェクト15dをメモリ1bに展開した先のプログラムを、16eはコピーされた圧縮オブジェクト15eをメモリ1bに展開した先のプログラムを、16fはコピーされた圧縮オブジェクト15fをメモリ1bに展開した先のプログラムを表している。
アプリケーションが起動するにはまず、カーネル10b_1がメモリ1cに格納されたオブジェクト(3)、オブジェクト(6)、オブジェクト(8)をメモリ1bの所定アドレスにコピーしなければならない(順番1)。コピーされた圧縮オブジェクト15d、15e、15fは同じくカーネル10b_1によってメモリ1cの所定アドレスに展開される(順番2)。そして展開され各々が動作可能なソフトウェアとなった後、プログラムの動作ポインタはカーネル10b_1からアプリケーションテキストの開始アドレスへジャンプしアプリケーションが起動することとなる(順番3)。
オブジェクト(3)、(6)、(8)のコピーについて詳細に説明する。コピーはまずオブジェクト(3)から開始される。オブジェクト(3)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)”を、コピー先アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)”を、コピーサイズは図3に示したアドレス格納ヘッダ14aに記載されている“(圧縮サイズ14a_4)”を指定する。
オブジェクト(3)とオブジェクト(6)の間には既にオブジェクト(5)がコピーされているので、この領域を空けてオブジェクト(6)をコピーする。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(6)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_6)+(圧縮サイズ14a_8)”を、コピー先アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)”を、コピーサイズは“(圧縮サイズ14a_10)”を指定する。
オブジェクト(6)とオブジェクト(8)の間には既にオブジェクト(7)がコピーされているので、この領域を空けてオブジェクト(8)をコピーする。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(8)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_6)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)+(圧縮サイズ14a_12)”を、コピー先アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)+(圧縮サイズ14a_12)”を、コピーサイズは“(圧縮サイズ14a_14)”を指定する。
オブジェクト(3)、(6)、(8)の展開について詳細に説明する。展開はまずオブジェクト(3)から開始される。オブジェクト(3)をメモリ1bに展開する際の展開元アドレスはコピー時に使用した“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)”を、展開先アドレスは“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)”を、展開サイズは図4に示したアドレス格納ヘッダ14aに記載されている“(展開サイズ14a_5)”を指定する。
オブジェクト(3)とオブジェクト(6)の間には本来オブジェクト(4)が展開される筈であり、更に既にオブジェクト(5)が展開されているので、これらの領域を空けてオブジェクト(6)を展開する。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(6)をメモリ1bに展開する際の展開元アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)”を、展開先アドレスは和“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)+(展開サイズ14a_5)+(展開サイズ14a_7)+(展開サイズ14a_9)”を、展開サイズは“(展開サイズ14a_11)”を指定する。
オブジェクト(6)とオブジェクト(8)の間には既にオブジェクト(7)が展開されているので、この領域を空けてオブジェクト(8)を展開する。図3に示したアドレス格納ヘッダ14aに記載されている以下のアドレスを用いて、オブジェクト(8)をメモリ1bに展開する際の展開元アドレスは和“(カーネルテキストコピー開始アドレス)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)+(圧縮サイズ14a_8)+(圧縮サイズ14a_10)+(圧縮サイズ14a_12)”を、展開先アドレスは和“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)+(展開サイズ14a_5)+(展開サイズ14a_7)+(展開サイズ14a_9)+(展開サイズ14a_11)+(展開サイズ14a_13)”を、展開サイズは“(展開サイズ14a_15)”を指定する。
図10は本発明の実施の形態1による映像情報表示装置におけるアプリケーションデバッグ時に、不揮発性メモリ1cに格納された圧縮一体化オブジェクトの内、symbolテーブルオブジェクトが、揮発性メモリ1bにコピーされた後展開され、各種函数にアクセス可能となる様子を示した図である。これは図1において、コネクタ4a経由で、映像情報表示装置1とターミナルPC7をシリアル通信ケーブル8で接続し、アプリケーションメッセージをターミナルPC7上のシリアルコンソールに表示させたデバッグモード時に、カーネルやアプリケーションにて規定されている各種函数にアクセスするために、該コンソールからこれら函数のアドレス配置情報であるsymbolテーブルを呼び出した際の処理を詳細に示したものに他ならない。
15gは一体化オブジェクト14の内、オブジェクト(4)14b_3をメモリ1bにコピーした先の圧縮オブジェクトを、16gはコピーされた圧縮オブジェクト15gをメモリ1bに展開した先のプログラムを表している。
symbolテーブルがリンクするにはユーザがコンソール上からコールしたsymbolテーブル呼び出し函数が、メモリ1cに格納されたオブジェクト(4)をメモリ1bの適当なアドレスにコピーする(順番1)。続けて、コピーされた圧縮オブジェクト15gはメモリ1cの所定アドレスに展開される(順番2)。そして展開され動作可能なソフトウェアとなった後は、ユーザはターミナルPC7上のコンソールからsymbolテーブルに登録された各種函数にアクセスすることが可能となる(順番3)。
オブジェクト(4)のコピーについて詳細に説明する。オブジェクト(4)をメモリ1bにコピーする際のコピー元アドレスは和“(圧縮プログラム格納開始アドレス14d)+(ヘッダ14aのサイズ)+(圧縮サイズ14a_2)+(圧縮サイズ14a_4)”を、コピーサイズは図3に示したアドレス格納ヘッダ14aに記載されている“(圧縮サイズ14a_6)”を、コピー先アドレスはコピーサイズ“(圧縮サイズ14a_6)”だけ分の確保出来た領域の開始アドレス、例えば図10の“(symbolテーブルコピー開始アドレス)”を指定する。
オブジェクト(4)の展開について詳細に説明する。オブジェクト(4)をメモリ1bに展開する際の展開元アドレスはコピー時に使用したコピー先アドレスを、展開先アドレスは“(カーネルテキスト展開開始アドレス)+(展開サイズ14a_3)+(展開サイズ14a_5)”を、展開サイズは図3に示したアドレス格納ヘッダ14aに記載されている“(展開サイズ14a_7)”を指定する。
以上のように、本実施の形態ではオブジェクト編纂装置により一体化オブジェクトを作成する際に、動作プログラムの一体化オブジェクト作成時の、コンパイルおよびリンク等の手順を記載したオブジェクト作成手順記載ファイルに沿ってオブジェクトの作成を行うが、該オブジェクト作成手順記載ファイルにて任意の機能を指定すれば、該機能が呼び出すオブジェクトや函数等を走査し、該走査されたオブジェクトを指定された機能に纏めて配置すると共に、指定された機能毎に圧縮し、指定された機能毎に圧縮された複数の圧縮オブジェクトを連結して動作プログラムの圧縮一体化オブジェクトとしているので、生成される圧縮一体化オブジェクトから該指定された機能を容易に切り出せる様になるという効果がある。
また、生成される圧縮一体化オブジェクトから指定された機能を含むオブジェクトを優先的に読み出し実行することが可能となる効果がある。
また、圧縮された複数の圧縮オブジェクトを連結して動作プログラムの圧縮一体化オブジェクトを作成する際に、上記複数の圧縮オブジェクトの任意の情報を記載したヘッダを付与しているので、該圧縮一体化オブジェクトを読み込むソフトウェアは該ヘッダに記載された情報を参照出来るという効果がある。
また、上記ヘッダに記載された情報が、上記圧縮オブジェクトのサイズに関するものであるので、圧縮一体化オブジェクトを読み込むソフトウェアが動作プログラムを起動する際に、該オブジェクトサイズ関連情報を使用出来るという効果がある。
また、本実施の形態では、オブジェクト編纂装置によって作成された圧縮一体化オブジェクトを情報伝達装置において動作可能な動作プログラムとして起動する際に、圧縮一体化オブジェクトを構成する複数の圧縮オブジェクトのうち、指定された機能に纏めて配置された圧縮オブジェクトを選択して動作可能なプログラムに変換し、該プログラムを起動するので、指定された機能を優先的に実行することが可能となる効果がある。
実施の形態2.
図11は本発明の実施の形態2における映像情報表示装置の不揮発性メモリに格納されたカーネルとアプリケーションの一体化オブジェクトを示した図である。本実施の形態2の一体化オブジェクト14は、実施の形態1の一体化オブジェクト14と同様に、ヘッダ14a、.textセクション14b、.dataセクション14cの3つのセクションに分かれている。
セクション14bには、カーネルの本体部分はカーネルテキストオブジェクト14b_1として、カーネルの読み込み用データはカーネルroデータオブジェクト14b_4として、symbolテーブルはsymbolテーブルオブジェクト14b_3として纏めて配置されているが、実施の形態1と異なりアプリケーションの本体部分はアプリケーション1テキストオブジェクト(application_1_テキスト)14b_2_1およびアプリケーション2テキストオブジェクト(application_2_テキスト)14b_2_2として、アプリケーションの読み込み用データはアプリケーション1roデータオブジェクト(application_1_roデータ)14b_5_1およびアプリケーション2roデータオブジェクト(application_2_roデータ)14b_5_2として纏めて配置されており、更にアプリケーション1テキストオブジェクト14b_2_1とアプリケーション2テキストオブジェクト14b_2_2を纏めてアプリケーションテキストオブジェクト14b_2とし、アプリケーション1roデータオブジェクト14b_5_1とアプリケーション2roデータオブジェクト14b_5_2を纏めてアプリケーションroデータオブジェクト14b_5としている。
また、セクション14cには、カーネルの読み書き用データはカーネルデータオブジェクト14c_1として纏められているが、実施の形態1と異なりアプリケーションの読み書き用データはアプリケーション1データオブジェクト(application_1_データ)14c_2_1およびアプリケーション2データオブジェクト(application_2_データ)14c_2_2として纏めて配置されており、更にアプリケーション1データオブジェクト14c_2_1とアプリケーション2データオブジェクト14c_2_2を纏めてアプリケーションデータオブジェクト14c_2としている。
また、これらのオブジェクト14b_1〜14b_5、14c_1〜14c_2は各々が単独で圧縮されており、機能毎に圧縮された複数の圧縮オブジェクトを連結した構成となっている。
加えて機能分割されたこれらのオブジェクト14b_1〜14b_5、14c_1〜14c_2のアドレス情報を格納したアドレス格納ヘッダ14aを付与した構成となっている。
本実施の形態の圧縮一体化オブジェクト14を動作可能なプログラムとして起動する際には、アプリケーションのコピーおよび展開などの起動前処理は実施の形態1と同様であるが、アプリケーション1のみやアプリケーション2のみの起動が可能となっている。
なお、本実施の形態2ではアプリケーション部分がアプリケーション1とアプリケーション2に分割されているが、アプリケーション自身はカーネルにおいて全てコピー後展開され動作可能となっており、起動段階においてアプリケーション1のみ起動するようになっているため、アドレス格納ヘッダの記述内容は実施の形態1と同様、図3に示すものと同様のもので良い。
図12は本発明の実施の形態2における起動ソフトウェアとアプリケーションが、ブートプログラム、カーネル、アプリケーション1、アプリケーション2の順に起動していく様子を示した図である。10a_2は映像情報表示装置に電源が投入された際に最初に起動するブートプログラム、10b_2は該ブートプログラムから起動されるカーネル、10c_2は該カーネルから起動されるアプリケーション1、10dは該アプリケーション1から起動されるアプリケーション2である。
映像情報表示装置の電源が投入されると、まず始めにブートプログラム10a_2が起動する。ブートプログラム10a_2においてはブートの初期化処理がコールされ、該初期化処理内にてメモリ1cに格納された圧縮一体化オブジェクト14の内、カーネル起動に関係のある圧縮オブジェクト3つを切り出してメモリ1bの所定アドレスにコピーし、続けてメモリ1bにコピーされた3つの圧縮オブジェクトをメモリ1bの所定アドレスに展開する。展開されたカーネル10b_2は動作可能となり起動される。
ここで、実施の形態1と同様に、オブジェクト編纂装置により圧縮一体化オブジェクト14を作成する際に、本来、アプリケーション前半に配置されていたオープニング画面の表示機能を、カーネル起動に係わる圧縮オブジェクトの中に配置してカーネル起動にかかわる圧縮オブジェクトを作成することにより、カーネル10b_1の前半にオープニング画面の表示機能を組み込み、従来よりも早くオープニング画面の表示を実現する。
更に、オープニング画面の表示直後に、メモリ1cに格納された圧縮一体化オブジェクト14の内、アプリケーション起動に関係のある圧縮オブジェクト(3)、(6)、(8)を切り出してメモリ1bの所定アドレスにコピーし、続けてメモリ1bにコピーされた該圧縮オブジェクト3つをメモリ1bの所定アドレスに展開する。展開されたアプリケーション10c_2および10dは動作可能となり、アプリケーション10c_2はカーネル10b_2の最後部でキックされるので、アプリケーション1が起動することとなる。
アプリケーション1においては、最後尾でアプリケーション10dをキックしているので、続けてアプリケーション2が起動することとなる。ただし、アプリケーション2のキックを行わなければアプリケーション1のみを起動させることが出来、アプリケーション1のデバッグ等に専念することが出来る。
ここで、本実施の形態においてアプリケーション1の起動完了時間T2を従来の装置におけるアプリケーションの起動完了時間t2と比較すると、t2が20秒弱であるのに対しT2は7〜8秒程度である。したがって、オブジェクト編纂装置により圧縮一体化オブジェクト14を作成する際に、本来アプリケーション2に配置されていた映像音声データの表示再生機能をアプリケーション1に組み込むことにより上記機能を電源投入後早く実現し、ユーザにとって従来よりも早く映像が表示したと感じさせることが可能となる。
なお、本実施の形態においては、アプリケーション1の起動後、続けてアプリケーション2を起動する場合、あるいはアプリケーション1のみ起動する場合を示したが、後者の場合はターミナルPC7上のシリアルコンソールからの入力によってアプリケーション2を任意のタイミングで起動するようにしてもよい。また、ソースプログラムを変更することにより、アプリケーション2をアプリケーション1より先に起動させるようにしてもよく、機能毎にまとめられた各オブジェクトの実行順序は問わない。
上記各実施の形態において示した圧縮一体化オブジェクトでは、機能分割される圧縮オブジェクトが、カーネルおよびアプリケーションのテキスト、roデータ、データ、symbolテーブルで纏められて構成されているが、機能分割される圧縮一体化オブジェクトの例は一例に過ぎず、あらゆる機能分割が成されている場合を含むことは言うまでも無い。
また、上記各実施の形態における説明では圧縮カーネルと圧縮アプリケーションのコピー、展開および起動によりソフトウェアを動作させる場合を示しているが、オブジェクト編纂装置により形成されるあらゆる一体化オブジェクトに対する動作プログラムを動作させることが可能であれば、機能毎にまとめられた各オブジェクトの実行順序は問わない。
また、上記各実施の形態における説明ではアドレス格納ヘッダ14aに、カーネルおよびアプリケーションのテキスト、roデータ、データ、symbolテーブルの各オブジェクトの圧縮サイズと展開サイズを記載した場合を示しているが、あらゆる機能分割が成された各圧縮オブジェクトの圧縮サイズと展開サイズに加え、必要に応じて他の情報を記載する場合があることは言うまでも無い。
また、上記各実施の形態において、一体化オブジェクト編集手段200eでは、指定された機能毎に纏められたオブジェクトを機能毎に圧縮し、機能毎に圧縮された複数の圧縮オブジェクト100e_1、100e_2・・・を連結して動作プログラムの圧縮一体化オブジェクト100eを作成したが、情報伝達装置のメモリ1cに充分な余裕があれば、必ずしも上記オブジェクト100e_1、100e_2を圧縮しなくてもよい。その場合、一体化オブジェクト編集手段200eでは、オブジェクト作成手順記載ファイルにて、動作プログラムに含まれる各種の機能を指定することにより、リンカ(一体化手段)200dで一体化された一体化オブジェクトファイル100dの中から、指定された機能が呼び出すオブジェクトを選択し、選択されたオブジェクトを指定された機能毎に纏めて配置するのみでよい。このとき、一体化オブジェクト編集手段200eで作成されるファイルは、複数のオブジェクトが動作プログラムに含まれる機能毎に纏めて配置された一体化オブジェクトファイル100eとなる。
また、上記各実施の形態における説明では映像情報表示装置として液晶デジタルテレビに代表されるデジタルAV機器である場合を示しているが、該映像情報表示装置が他の機器である場合にも適用されることは言うまでも無い。
また、上記各実施の形態における説明では映像情報表示装置における例を示したが、映像を表示する装置に限らず、例えば、デジタルオーディオ等の音声により情報を発信する装置や、その他の形態で情報を伝達する情報伝達装置においても、メモリに格納される動作プログラムの一体化オブジェクトを上記各実施の形態と同様の一体化オブジェクトとし、動作プログラムを起動する際に、上記各実施の形態と同様にして起動することにより、電源投入後、特定の機能を早く起動させることが可能となる。
本発明の実施の形態1による映像情報表示装置の構成を模式的に示す図である。 本発明の実施の形態1による一体化オブジェクトを示す図である。 本発明の実施の形態1に係わるアドレス格納ヘッダの構成を示す図である。 本発明の実施の形態1によるオブジェクト編纂装置の構成、および動作を説明する図である。 本発明の実施の形態1に係わる圧縮一体化オブジェクト編集手段の動作を説明する図である。 本発明の実施の形態1による映像情報表示装置における起動ソフトウェア(動作プログラム)を示す図である。 本発明の実施の形態1による映像情報表示装置における動作プログラムの起動方法を説明する図である。 本発明の実施の形態1による映像情報表示装置における動作プログラムの起動方法を説明する図である。 本発明の実施の形態1による映像情報表示装置における動作プログラムの起動方法を説明する図である。 本発明の実施の形態1による映像情報表示装置における動作プログラムの起動方法を説明する図である。 本発明の実施の形態2による一体化オブジェクトを示す図である。 本発明の実施の形態2による映像情報表示装置における動作プログラムの起動方法を説明する図である。 従来の一体化オブジェクトを示す図である。 従来の映像情報表示装置における動作プログラムの起動方法を説明する図である。 従来の映像情報表示装置における動作プログラムの起動方法を説明する図である。
符号の説明
1 映像情報表示装置、1a CPU(中央演算処理装置)、1b SdRAM、1c フラッシュROM、10a_1、10a_2 ブートプログラム、10b_1、10b_2 カーネル、10c_1 アプリケーション、10c_2 アプリケーション1、10d アプリケーション2、13a、13b、13c 圧縮オブジェクト、14 圧縮一体化オブジェクト、14a アドレス格納ヘッダ、14b_1 カーネルテキストオブジェクト、14b_2 アプリケーションテキストオブジェクト、14b_3 symbolテーブルオブジェクト、14b_4 カーネルデータオブジェクト、14b_5 アプリケーションroデータオブジェクト、14c_1 カーネルデータオブジェクト、14c_2 アプリケーションデータオブジェクト、15a カーネルテキストオブジェクト(コピー後)、15b カーネルroデータオブジェクト(コピー後)、15c カーネルデータオブジェクト(コピー後)、15d アプリケーションテキストオブジェクト(コピー後)、15e アプリケーションroデータオブジェクト(コピー後)、15f アプリケーションデータオブジェクト(コピー後)、15g symbolテーブルオブジェクト(コピー後)、16a カーネルテキスト(展開後)、16b カーネルroデータ(展開後)、16c カーネルデータ(展開後)、16d アプリケーションテキスト(展開後)、16e アプリケーションroデータ(展開後)、16f アプリケーションデータ(展開後)、16g symbolテーブル(展開後)、100 ソースファイル、101 ソースファイル(カーネル部分)、102 ソースファイル(アプリケーション部分)、100a プリプロセス処理ファイル、100b アセンブリファイル、100c オブジェクトファイル、100d 一体化オブジェクトファイル(圧縮無し)、100e 圧縮一体化オブジェクトファイル(機能編纂済み)、200 一体化オブジェクトビルド環境、200a プリプロセッサ、200b コンパイラ、200c アセンブラ、200d リンカ、200e 圧縮一体化オブジェクト編集手段、300 オブジェクト作成手順記載ファイル。

Claims (8)

  1. 各種の機能を有する動作プログラムが使用する複数のソースファイルを各々オブジェクトファイルに変換する変換手段、変換された複数の上記オブジェクトファイルを一体化して一体化オブジェクトを作成する一体化手段、およびオブジェクト作成手順記載ファイルにて、上記動作プログラムに含まれる各種の機能を指定することにより、上記一体化オブジェクトの中から、指定された機能が呼び出すオブジェクトを選択し、選択されたオブジェクトを指定された機能毎に纏めて配置する一体化オブジェクト編集手段を備えたことを特徴とするオブジェクト編纂装置。
  2. 一体化オブジェクト編集手段は、指定された機能毎に纏められたオブジェクトを、上記機能毎に圧縮し、上記機能毎に圧縮された複数の圧縮オブジェクトを連結して動作プログラムの一体化オブジェクトを作成することを特徴とする請求項1記載のオブジェクト編纂装置。
  3. 一体化オブジェクト編集手段は、機能毎に纏められたオブジェクトの情報を記載したヘッダを一体化オブジェクトに付与することを特徴とする請求項1または2記載のオブジェクト編纂装置。
  4. ヘッダに記載される情報は、機能毎に纏められたオブジェクトのサイズに関する情報であることを特徴とする請求項3記載のオブジェクト編纂装置。
  5. 請求項1〜4のいずれかに記載のオブジェクト編纂装置により作成され、複数のオブジェクトが動作プログラムに含まれる任意の機能毎に纏めて配置されていることを特徴とする動作プログラムの一体化オブジェクト。
  6. 請求項5記載の動作プログラムの一体化オブジェクトを格納する第1のメモリ、上記一体化オブジェクトを動作可能なプログラムとして記録する第2のメモリ、および上記第1のメモリに格納される上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを上記第2のメモリに格納して動作可能なプログラムとし、上記所定の機能を有するプログラムを優先的に起動する制御手段を備えたことを特徴とする情報伝達装置。
  7. 情報伝達装置のメモリに格納された請求項5記載の動作プログラムの一体化オブジェクトを動作可能な動作プログラムとして起動する際に、上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを動作可能なプログラムとし、上記所定の機能を有するプログラムを優先的に起動することを特徴とする情報伝達装置に格納された動作プログラムの起動方法。
  8. 情報伝達装置のメモリに格納された請求項5記載の動作プログラムの一体化オブジェクトを動作可能な動作プログラムとして起動する起動プログラムであって、上記一体化オブジェクトの中から、所定の機能に纏めて配置されたオブジェクトを動作可能なプログラムとするステップ、および上記所定の機能を有するプログラムを優先的に起動するステップを備えたことを特徴とする情報伝達装置に格納された動作プログラムの起動プログラム。
JP2005345644A 2005-11-30 2005-11-30 オブジェクト編纂装置 Active JP4409507B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005345644A JP4409507B2 (ja) 2005-11-30 2005-11-30 オブジェクト編纂装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005345644A JP4409507B2 (ja) 2005-11-30 2005-11-30 オブジェクト編纂装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009219965A Division JP2010020794A (ja) 2009-09-25 2009-09-25 動作プログラムの起動方法、動作プログラムの起動プログラム、及び情報伝達装置

Publications (2)

Publication Number Publication Date
JP2007148993A true JP2007148993A (ja) 2007-06-14
JP4409507B2 JP4409507B2 (ja) 2010-02-03

Family

ID=38210307

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005345644A Active JP4409507B2 (ja) 2005-11-30 2005-11-30 オブジェクト編纂装置

Country Status (1)

Country Link
JP (1) JP4409507B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010092240A (ja) * 2008-10-07 2010-04-22 Ntt Docomo Inc 情報処理装置およびデバイス認識方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09114672A (ja) * 1995-10-20 1997-05-02 Fujitsu Ltd プログラム処理装置
JPH11194927A (ja) * 1997-12-17 1999-07-21 Sun Microsyst Inc 分散makeの方法、装置、およびコンピュータプログラム製品
JPH11265289A (ja) * 1998-03-16 1999-09-28 Mitsubishi Electric Corp 情報処理装置および情報処理装置の高速初期起動方法
JP2001075812A (ja) * 1999-06-18 2001-03-23 Fiinikkusu Technologies Ltd コンピュータプリ−ブート作動の際にアプリケーションを実行する方法と装置
JP2002108137A (ja) * 2000-09-29 2002-04-10 Ricoh Co Ltd 電源投入後に立上制御を行う装置及びその立上制御方法並びにその立上制御プログラムを書き込んだ記憶媒体
JP2002366362A (ja) * 2001-06-06 2002-12-20 Canon Inc 電子機器、および電子機器の制御方法
JP2005018418A (ja) * 2003-06-26 2005-01-20 Konica Minolta Business Technologies Inc 画像形成装置
JP2005202105A (ja) * 2004-01-15 2005-07-28 Ricoh Co Ltd 電子装置
JP2005228272A (ja) * 2004-02-16 2005-08-25 Fuji Electric Retail Systems Co Ltd 圧縮プログラム、圧縮方法、解凍プログラム、解凍方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09114672A (ja) * 1995-10-20 1997-05-02 Fujitsu Ltd プログラム処理装置
JPH11194927A (ja) * 1997-12-17 1999-07-21 Sun Microsyst Inc 分散makeの方法、装置、およびコンピュータプログラム製品
JPH11265289A (ja) * 1998-03-16 1999-09-28 Mitsubishi Electric Corp 情報処理装置および情報処理装置の高速初期起動方法
JP2001075812A (ja) * 1999-06-18 2001-03-23 Fiinikkusu Technologies Ltd コンピュータプリ−ブート作動の際にアプリケーションを実行する方法と装置
JP2002108137A (ja) * 2000-09-29 2002-04-10 Ricoh Co Ltd 電源投入後に立上制御を行う装置及びその立上制御方法並びにその立上制御プログラムを書き込んだ記憶媒体
JP2002366362A (ja) * 2001-06-06 2002-12-20 Canon Inc 電子機器、および電子機器の制御方法
JP2005018418A (ja) * 2003-06-26 2005-01-20 Konica Minolta Business Technologies Inc 画像形成装置
JP2005202105A (ja) * 2004-01-15 2005-07-28 Ricoh Co Ltd 電子装置
JP2005228272A (ja) * 2004-02-16 2005-08-25 Fuji Electric Retail Systems Co Ltd 圧縮プログラム、圧縮方法、解凍プログラム、解凍方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010092240A (ja) * 2008-10-07 2010-04-22 Ntt Docomo Inc 情報処理装置およびデバイス認識方法

Also Published As

Publication number Publication date
JP4409507B2 (ja) 2010-02-03

Similar Documents

Publication Publication Date Title
JP4272371B2 (ja) デバッグ支援装置、コンパイラ装置、デバッグ支援プログラム、コンパイラプログラム、及びコンピュータ読取可能な記録媒体。
US8797338B2 (en) Platform agnostic screen capture tool
US8265454B2 (en) Video/audio playback apparatus
JP2009086955A (ja) カメラ装置およびその制御方法
JP4409507B2 (ja) オブジェクト編纂装置
JP2010020794A (ja) 動作プログラムの起動方法、動作プログラムの起動プログラム、及び情報伝達装置
JP2007179153A (ja) スクリプトプログラム実行装置、スクリプトプログラム実行方法及び光ディスク装置
US20060179180A1 (en) Signal processing apparatus, signal processing system and signal processing method
JP2005317114A (ja) 情報処理装置および情報処理方法、並びに、プログラム
KR100625167B1 (ko) 임베디드 운영체계의 부팅방법
JP2007287025A (ja) 画面遷移プログラム生成方法及び装置
JP5369347B2 (ja) ファイル受信端末
JP2005056237A (ja) メモリ装置、データ処理用のプログラムを記録した記録媒体、そのプログラム、データ処理システム及びデータ処理方法
US8171212B2 (en) Data processing apparatus and data processing program storage medium
JP5058219B2 (ja) シナリオ作成方法、その装置、プログラム及び記録媒体
KR100620765B1 (ko) 외부인터페이스를갖는프로그램오브젝트들및프로그램구성요소들의시스템
JP2003162307A (ja) 言語変換支援装置、および、言語変換支援方法
JP4845497B2 (ja) 電子装置及びその制御方法
JP4009427B2 (ja) 初回起動時間短縮方法、インストール方法、パーソナルコンピュータ、プログラム
JP2006011950A (ja) インストーラ作成装置及びその方法、そのプログラム
CN108388510B (zh) 一种通过存储配置控制调试信息输出的方法及计算机设备
JP2005195835A (ja) 情報処理装置および方法、記録媒体、並びにプログラム
CN107844309B (zh) 一种系统数据处理方法及装置
JP2008065736A (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
JP2006295656A (ja) 映像音声記録再生装置、及び映像音声記録再生方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090507

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091111

R150 Certificate of patent or registration of utility model

Ref document number: 4409507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131120

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250