1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)及び1電子機器唯一動作許可インストール方法(ソフトウエア配布方法)並びに供給若しくは配布媒体、1電子機器唯一動作許可ソフトウエア管理装置及び方法並びに供給若しくは配布媒体、1電子機器唯一動作許可インストーラ管理装置及び方法並びに供給若しくは配布媒体、1電子機器唯一動作許可インストーラ生成装置及び1電子機器唯一動作許可インストーラ生成方法並びに供給若しくは配布媒体、1電子機器唯一動作許可ソフトウエア及び1電子機器唯一動作許可ソフトウエアの1電子機器唯一動作許可方法並びに供給若しくは配布媒体、1電子機器唯一動作許可ソフトウエア生成装置及び方法並びに供給若しくは配布媒体、1電子機器唯一動作許可ソフトウエア製造装置及び方法並びに供給若しくは配布媒体、ソフトウエア製造装置及び方法並びに供給若しくは配布媒体、並びに、機械語コード埋め込み装置(電子機器)若しくはシステム集積回路及び方法並びに供給若しくは配布媒体
【課題】 1台のコンピュータでのみ動作可能で、プログラム解析等が困難であり、セキュリティ機能が高いインストーラ、インストーラ管理装置、及び、ソフトウエア管理装置を提供する。
【解決手段】 インストーラ管理装置を起動すると、格納されているインストーラにMACアドレスが組み込まれ、インストーラが生成、起動される。インストーラは、格納され又は取得したMACアドレスとを比較し、一致した場合にのみ起動し、ソフトウエア管理装置を生成する。インストーラ管理装置はインストーラの終了を待って削除する。ソフトウエア管理装置を起動すると、格納され又は取得したMACアドレスが一致した場合にのみ動作を行い、ソフトウエアを生成、起動する。ソフトウエアは、格納され又は取得したMACアドレスが一致した場合にのみ動作を行う。ソフトウエア管理装置はソフトウエアの終了を待って削除する。
【解決手段】 インストーラ管理装置を起動すると、格納されているインストーラにMACアドレスが組み込まれ、インストーラが生成、起動される。インストーラは、格納され又は取得したMACアドレスとを比較し、一致した場合にのみ起動し、ソフトウエア管理装置を生成する。インストーラ管理装置はインストーラの終了を待って削除する。ソフトウエア管理装置を起動すると、格納され又は取得したMACアドレスが一致した場合にのみ動作を行い、ソフトウエアを生成、起動する。ソフトウエアは、格納され又は取得したMACアドレスが一致した場合にのみ動作を行う。ソフトウエア管理装置はソフトウエアの終了を待って削除する。
Notice: Undefined index: DEJ in /mnt/www/gzt_disp.php on line 298
【特許請求の範囲】
【請求項1】
1電子機器にのみ唯一動作を許可するソフトウエアであって、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
初回起動時、動作する電子機器に固有の指標を実行体の固有指標確保手段にバイナリの状態で格納する固有指標格納手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合にのみ動作継続を許可する固有指標一致動作継続許可手段と
を有することを特徴とする1電子機器唯一動作許可ソフトウエア。
【請求項2】
第1のソフトウエアが組み込まれた第2のソフトウエアであり、第1及び/又は第2のソフトウエアが1電子機器にのみ唯一動作を許可するソフトウエアであって、
第1のソフトウエアを確保した第1のソフトウエア確保手段と、
第1のソフトウエアを生成する第1のソフトウエア生成手段と
を第2のソフトウエアに有し、
第1及び/又は第2のソフトウエアの少なくとも一方に、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合のみ動作継続を許可する固有指標一致動作継続許可手段と
を有し、
第1のソフトウエアに前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
初回起動時、動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第1のソフトウエア存在第1のソフトウエア固有指標格納手段
を第1のソフトウエアに備えるか、又は、
初回起動時、動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第1のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、
第2のソフトウエアに前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
初回起動時、動作する電子機器に固有の指標を第2のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第2のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、
第1及び第2のソフトウエアの両方に前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
動作する電子機器に固有の指標を第2のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第2のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、さらに、
動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第1のソフトウエア存在第1のソフトウエア固有指標格納手段
を第1のソフトウエアに備えるか、又は、
動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第1のソフトウエア固有指標格納手段
を第2のソフトウエアに備えることを特徴とする1電子機器唯一動作許可ソフトウエア。
【請求項3】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、第1のソフトウエアを確保した第1のソフトウエア確保手段は第1のソフトウエアを確保する為の第1のソフトウエア確保用意手段とした1電子機器唯一動作許可ソフトウエア生成装置であって、
第1のソフトウエア確保手段に第1のソフトウエアを格納する第1のソフトウエア格納手段を備える
ことを特徴とする1電子機器唯一動作許可ソフトウエア生成装置。
【請求項4】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、
動作する電子機器に固有の指標がインストールする電子機器に固有の指標であり、請求項2に記載の1電子機器唯一動作許可ソフトウエアは、1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)であることを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項5】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、
第1のソフトウエアを起動する第1のソフトウエア起動手段を第2のソフトウエアに有し、
第2のソフトウエアが起動時、固有指標一致動作継続許可手段を第2のソフトウエアに有する場合、第1のソフトウエアの終了を待機して第1のソフトウエアを削除する終了待機削除手段を有し、第1のソフトウエアのみが、固有指標一致動作継続許可手段を有する場合、第1のソフトウエアが起動後、第2のソフトウエアを削除する起動後削除手段を第1のソフトウエアに有する
ことを特徴とする1電子機器唯一動作許可ソフトウエア管理装置。
【請求項6】
請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の動作する電子機器に固有の指標がインストールする電子機器に固有の指標であり、
請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置を請求項4に記載の1電子機器唯一動作許可インストーラの第1のソフトウエア及び/又は第2のソフトウエアとし、
請求項4に記載の第2のソフトウエアとした場合、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを確保した第1のソフトウエア確保手段と、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを生成する第1のソフトウエア生成手段とを請求項4に記載の1電子機器唯一動作許可インストーラに備え、
請求項4に記載の第1のソフトウエアとした場合、請求項4に記載の第2のソフトウエアの第1のソフトウエア確保手段は、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを確保した手段であり、請求項4に記載の第2のソフトウエアの第1のソフトウエア生成手段は、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを生成する手段である
ことを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項7】
請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置を請求項4に記載の1電子機器唯一動作許可インストーラの第1のソフトウエア及び/又は第2のソフトウエアとし、
請求項4に記載の第2のソフトウエアとした場合、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを確保した第1のソフトウエア確保手段と、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを生成する第1のソフトウエア生成手段とを請求項4に記載の1電子機器唯一動作許可インストーラに備え、
請求項4に記載の第1のソフトウエアとした場合、請求項4に記載の第2のソフトウエアの第1のソフトウエア確保手段は、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを確保した手段であり、請求項4に記載の第2のソフトウエアの第1のソフトウエア生成手段は、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを生成する手段である
ことを特徴とし、上記の適用関係を少なくとも一回以上繰り返した構成であることを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項8】
請求項4、請求項6、又は請求項7に記載の1電子機器唯一動作許可インストーラにおいて、第1のソフトウエアを確保した第1のソフトウエア確保手段は第1のソフトウエアを確保する為の第1のソフトウエア確保用意手段とした1電子機器唯一動作許可インストーラ生成装置であって、
第1のソフトウエア確保手段に第1のソフトウエアを格納する手段を第1のソフトウエア格納手段を備える
ことを特徴とする1電子機器唯一動作許可インストーラ生成装置。
【請求項9】
第1のソフトウエアを第2のソフトウエアにバイナリの状態で組み込む1電子機器唯一動作許可ソフトウエア生成若しくは製造装置又は1電子機器唯一動作許可インストーラ生成装置であって、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
初回起動時、固有指標確保手段に動作する電子機器に固有の指標を格納する固有指標格納手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合のみ動作継続を許可する固有指標一致動作継続許可手段と
を第1のソフトウエアにバイナリの状態で組み込むことを特徴とする1電子機器唯一動作許可ソフトウエア生成若しくは製造装置又は1電子機器唯一動作許可インストーラ生成装置。
【請求項10】
動作する電子機器に固有の指標がMACアドレスである
ことを特徴とする請求項1、若しくは請求項2に記載の1電子機器唯一動作許可ソフトウエア、請求項3に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、若しくは請求項7に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8に記載の1電子機器唯一動作許可インストーラ生成装置、又は、請求項9に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置。
【請求項11】
第1のソフトウエアを第2のソフトウエアに格納する領域及び/又は動作する電子機器に固有の指標を格納する領域に格納するデータは、暗号化されている
ことを特徴とする請求項1、請求項2、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア、請求項3、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、請求項7、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ生成装置、又は、請求項9、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置。
【請求項12】
ソフトウエアに機能を有する手段をバイナリの状態で組み込む、
並びに/若しくは、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とするソフトウエア製造装置。
【請求項13】
ソフトウエアに機能を有する手段をバイナリの状態で組み込むことを特徴とするソフトウエア製造装置であって、
請求項12に記載のソフトウエア製造装置において、
1.<コードの挿入>
1.0 組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所があるかどうかを検索するコード開始アドレスコール箇所検索手段と、
組み込むソフトウエアのコードのどの位置に機能を有する手段を挿入するかを選択判断するコード挿入位置選択判断手段と
を有し、
1.1.組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所がある場合(コード開始アドレスコール箇所検索手段による判断に依る)であって、コードの開始以前に何らかの処理を行う場合(コード挿入位置選択判断手段による判断に依る)、
(コード記載セクション)ヘッダーのコード記載セクション開始アドレスを検索するコード記載セクション開始アドレス検索手段と、
コード記載セクション開始アドレスからコード記載セクション内を検索し、コード開始アドレスをコールしている箇所を検索するコード記載セクション内コード開始アドレスコール箇所検索手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの開始アドレスの前に、コードを挿入するコード挿入手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスコール箇所のコード開始アドレスに挿入したコードアドレスを減算した開始アドレスに書き換えるコールコード開始アドレス変更手段と
を有し、
1.2.組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所が無い場合(コード開始アドレスコール箇所検索手段による判断に依る)、又は1.1以外の場合
(コード記載セクション)ヘッダーのコード開始アドレスを検索するコード開始アドレス検索手段と、
コード開始アドレス検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの初め、途中、又は最後にコードを挿入するコード挿入手段と
を有し、
2.<データアドレスの変更>
2.0 挿入したコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用しているかどうかを判断するシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段と
を有し、
挿入したコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用している場合(システムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段による判断に依る)、データをデータセクションに追加するデータセクション追加手段と、
データセクション追加手段により追加したデータのアドレスに挿入するコード内のデータのアドレスを変更する挿入コードデータアドレス変更手段と
を有し、
3.<機能を有する手段が呼び出し関数群格納ファイルを使用している場合>
3.0 機能を有する手段が呼び出し関数群格納ファイルを使用しているかどうかを判断する、機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段と
を有し、
3.1<組み込むソフトウエアの呼び出し関数群格納ファイル存在チェック>
挿入したコード内に呼び出し関数群格納ファイル被格納呼び出し関数をコールしている場合(機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段による判断に依る)、組み込むソフトウエアの呼び出し関数群呼び出しセクションを検索し、呼び出し関数群格納ファイルが存在するかどうかを検索する呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段と
を有し、
3.1.1<組み込むソフトウエアに呼び出し関数群格納ファイルが存在している場合>
組み込むソフトウエアに呼び出し関数群格納ファイルが存在している場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段による判断に依る)、
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在するかどうかを検索する呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段と
を有し、
3.1.1.1<組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在している場合>
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在している場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段による判断に依る)、
その呼び出し関数群格納ファイル被格納呼び出し関数のアドレスにより挿入するコードの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを変更する挿入コード呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.1.2<組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在していない場合>
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在していない場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数を追加し、呼び出し関数群格納ファイル被格納呼び出し関数追加によるサイズ変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内に呼び出し関数群呼び出しセクションの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合、使用している呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.2<組み込むソフトウエアに呼び出し関数群格納ファイルが存在していない場合>
組み込むソフトウエアに呼び出し関数群格納ファイルが存在していない場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段による判断に依る)、
呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数を呼び出し関数群呼び出しセクションに追加し、呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数追加によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内に呼び出し関数群呼び出しセクションの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合、使用している呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
4.<機能を有する手段が(コード記載、呼び出し関数群呼び出し、データセクション以外の単数又は複数の)他のセクションの要素を使用している場合>
4.0 機能を有する手段が他のセクションの要素を使用しているかどうかを判断する、機能を有する手段他のセクションの要素使用/非使用判断手段と
を有し、
4.1<組み込むソフトウエアの他のセクションの要素存在チェック>
挿入したコード内に他のセクションの要素を使用している場合(機能を有する手段他のセクションの要素使用/非使用判断手段による判断に依る)、他のセクションを検索し、他のセクションの要素が存在するかどうかを検索する他のセクション要素存在/非存在検索手段と
を有し、
4.1.1<組み込むソフトウエアに他のセクションの要素存在時>
組み込むソフトウエアに他のセクションの要素が存在している場合(他のセクション要素存在/非存在検索手段による判断に依る)、
その他のセクションの要素のアドレスにより挿入するコードの他のセクションの要素のアドレスを変更する挿入コード他のセクションの要素アドレス変更手段と
を有し、
4.1.2<組み込むソフトウエアに他のセクションの要素非存在時>
組み込むソフトウエアに他のセクションの要素が存在していない場合(他のセクション要素存在/非存在検索手段による判断に依る)、
他のセクションの要素を他のセクションに追加し、他のセクションの要素追加によるアドレス変更分他のセクション内の他のセクションの要素アドレスを変更する他のセクションの要素アドレス変更手段と、
現コード内に他のセクションの要素のアドレスを使用している場合、使用しているアドレスを他のセクションの要素アドレス変更手段により変更されたアドレスに変更する他のセクションの現コード内他の要素アドレス変更手段と
を有し、
4.2 上述した、4.の処理を、機能を有する手段が使用している、全ての他のセクション対して実行する、上述4.処理機能を有する手段使用全他のセクション実行手段と
を有し、
5.
5.0 コードの挿入により、コード内のアドレスを指定しているかどうかを判断するコード挿入コード内アドレス指定/非指定判断手段と
を有し、
(コードの挿入により、コード内のアドレスを指定していた箇所は、挿入サイズ分全部ずらす)
(コード挿入コード内アドレス指定/非指定判断手段による判断に依り、指定していた箇所がある場合、)現コード内で、アドレスを参照する命令を検索し、コード記載セクション内のアドレスを参照しているアドレスを検索し、検索したアドレスを挿入したコードサイズ分ずらす挿入コード分アドレスずらし手段と
を有し、
6.
6.0 コード挿入によりコードサイズが初めより大きくなるかどうかを判断するコード挿入コードサイズ大/非大判断手段と
を有し、
(コード挿入によりコードサイズが初めより大きくなる場合)
コード挿入により、コードサイズが(コード記載セクション)ヘッダーに記載されているサイズよりも大きくなる場合(コード挿入コードサイズ大/非大判断手段による判断に依る)、
(コード記載セクション)ヘッダー内に記載のコード記載セクション及び/又はコード記載セクションのコードサイズをコード挿入後のサイズより大きい規定幅の大きさのサイズに変更するコードサイズ変更手段と
を有し、
(コード記載セクション以外の)第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段
を有し、
第1の他のセクション存在時(第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段の判断による判断に依る)、
コードサイズ変更手段により増分したサイズ分、(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションの開始アドレスを変更する第1の他のセクション開始アドレス変更手段と、
コード内に第1の他のセクションの要素のアドレスを使用している場合、コード挿入により、第1の他のセクションの要素のアドレスが変化した分、コード内の第1の他のセクションの要素のアドレスを変更するコード内第1の他のセクションの要素アドレス変更手段と
を有し、
6.1 コード挿入により第1の他のセクションサイズが初めより大きくなるかどうかを判断するコード挿入第1の他のセクションサイズ大/非大判断手段と
を有し、
(コード挿入により第1の他のセクションサイズが初めより大きくなる場合)
コード挿入により、第1の他のセクションのサイズが(第1の他のセクション)ヘッダー内に記載されているサイズよりも大きくなる場合(コード挿入により他のセクションサイズが初めより大きくなるかどうかを判断するコード挿入第1の他のセクションサイズ大/非大判断手段による判断に依る)、
(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションのサイズを第1の他のセクション挿入後のサイズより大きい規定幅の大きさのサイズに変更する第1の他のセクションサイズ変更手段と
を有し、
(コード記載セクション以外の)第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段と
を有し、
第2の他のセクション存在時(第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段による判断による)、
第1の他のセクションの開始アドレス以降に開始アドレスを有する(第2の他のセクション)ヘッダー内に記載の第2の他のセクション及び/又は第2の他のセクションの開始アドレスを第1の他のセクションの開始アドレスとサイズの増分だけずらす第2の他のセクションの開始アドレス変更手段と、
コード内に第2の他のセクションの要素のアドレスを使用している場合、コード挿入により、第2の他のセクションの要素のアドレスが変化した分、コード内の第2の他のセクションの要素のアドレスを変更するコード内第2の他のセクションの要素アドレス変更手段と
を有し、
6.2 第1の他のセクションを第2の他のセクションの開始アドレスを有する他のセクションとして、第1の他のセクションが存在しなくなるまで、6.1の処理を繰り返し実行する、6.1の処理繰り返し実行手段と
を有し、
ソフトウエアに機能を有する手段をバイナリの状態で組み込む
ことを特徴とするソフトウエア製造装置、
並びに/若しくは、
電子機器又はコンピュータ上のプログラムの実行体の実行を監視し、実行体の停止中に、ソフトウエアに機能を有する手段をバイナリの状態で組み込むことを特徴とするソフトウエア製造装置。
【請求項14】
ソフトウエアに機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置であって、
請求項12又は請求項13に記載のソフトウエア製造装置において、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置であって、
<機能を有する手段のソフトウエア存在/非存在>
単数又は複数の、(あるアドレスからあるアドレス迄の)固まった単位で存在する機能を有する手段が参照するシステムコール、呼び出し関数群格納ファイル被格納呼び出し関数、呼び出し関数群呼び出しセクション、データセクション、及び/又は、他のデータセクション等のアドレス参照箇所の関数及び/又はデータと、ソフトウエアの該当箇所との一致を含め、機能を有する手段がソフトウエア内に存在するかどうかの判断を行う機能を有する手段ソフトウエア内存在/非存在判断手段と
を及び/又は有し、
<機能を有する手段のソフトウエア存在時>(及び/又は機能を有する手段ソフトウエア内存在/非存在判断手段による一致の判断の場合)
1.<コードの削除>
1.0. 機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所があるかどうかを検索するコード開始アドレスコール箇所検索手段と、
機能を有する手段を組み込んだ/組み込んでいないソフトウエアのコードのどの位置に機能を有する手段を挿入しているかを選択判断するコード挿入位置選択判断手段と
を有し、
1.1.機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所がある場合(コード開始アドレスコール箇所検索手段による判断に依る)であって、コードの開始以前に機能を有する手段を挿入している場合(コード挿入位置選択判断手段による判断に依る)、
(コード記載セクション)ヘッダーのコード記載セクション開始アドレスを検索するコード記載セクション開始アドレス検索手段と、
コード記載セクション開始アドレスからコード記載セクション内を検索し、コード開始アドレスをコールしている箇所を検索するコード記載セクション内コード開始アドレスコール箇所検索手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスに基づき、コード開始アドレスからコード記載セクションの開始アドレス(又は、組み込み前のコード記載セクションの通常の開始アドレス)の前までに挿入したコードを削除するコード削除手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスコール箇所のコード開始アドレスに削除した機能を有する手段のコードアドレスを加算した(又は、通常の)開始アドレスに書き換えるコールコード開始アドレス変更手段と
を有し、
1.2.機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所が無い場合(コード開始アドレスコール箇所検索手段による判断に依る)、又は1.1以外の場合
(コード記載セクション)ヘッダーのコード開始アドレスを検索するコード開始アドレス検索手段と、
コード開始アドレス検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの初め、途中、又は最後に挿入した機能を有する手段のコードを削除するコード削除手段と
を有し、
2.<データアドレスの変更>
2.0 削除した機能を有する手段のコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用しているかどうかを判断するシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段と
を有し、
削除した機能を有する手段のコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用している場合(システムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段による判断に依る)、データをデータセクションから削除するデータセクション削除手段と
を有し、
3.<削除した機能を有する手段が呼び出し関数群格納ファイルを使用している場合>
3.0. 削除した機能を有する手段が呼び出し関数群格納ファイルを使用しているかどうかを判断する、機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段と
を有し、
3.1.<他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数使用/非使用チェック>
削除した機能を有する手段が呼び出し関数群格納ファイルを使用している場合(機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段による判断に依る)、
機能を有する手段が使用している呼び出し関数群格納ファイル被格納呼び出し関数のアドレスを検索する呼び出し関数群格納ファイル被格納呼び出し関数アドレス検索手段と、
機能を有する手段が使用している呼び出し関数群格納ファイル被格納呼び出し関数のアドレスをコード内の他の箇所で使用しているかどうかを検索する他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段と
を有し、
3.1.1.<他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数を使用していない場合>
コード内の他の箇所で使用呼び出し関数群格納ファイル被格納呼び出し関数を使用していると判断されなかった場合(他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段による判断に依る)、
呼び出し関数群呼び出しセクション内に、使用呼び出し関数群格納ファイル被格納呼び出し関数が属する呼び出し関数群格納ファイルの他の呼び出し関数群格納ファイル被格納呼び出し関数のアドレスを検索する呼び出し関数群呼び出しセクション内他の呼び出し関数群格納ファイル被格納呼び出し関数アドレス検索手段と
を有し、
3.1.1.1.<呼び出し関数群呼び出しセクション内に他の呼び出し関数群格納ファイル被格納呼び出し関数が検索された場合>
呼び出し関数群呼び出しセクション内に他の呼び出し関数群格納ファイル被格納呼び出し関数が検索された場合、
他の呼び出し関数群格納ファイル被格納呼び出し関数をコード内の他の箇所で使用しているかどうかを検索する他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスコード内の他の箇所使用/非使用検索手段と
を有し、
3.1.1.1.1.<他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していない場合>
他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していると判断されなかった場合(他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスコード内の他の箇所使用/非使用検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数,呼び出し関数群格納ファイル被格納呼び出し関数の呼び出し関数群格納ファイルに属する全ての他の呼び出し関数群格納ファイル被格納呼び出し関数,呼び出し関数群格納ファイルを削除し、呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数削除によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.1.1.2.<他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合>
他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していると判断された場合(他の呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数を削除し、呼び出し関数群格納ファイル被格納呼び出し関数削除によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
4.<削除した機能を有する手段が(コード記載、呼び出し関数群呼び出し、データセクション以外の単数又は複数の)他のセクションの要素を使用している場合>
4.0. 削除した機能を有する手段が他のセクションの要素を使用しているかどうかを判断する、機能を有する手段他のセクションの要素使用/非使用判断手段と
を有し、
4.1.<削除した機能を有する手段の他のセクションの要素使用チェック>
削除した機能を有する手段のコード内に他のセクションの要素を使用している場合(機能を有する手段他のセクションの要素使用/非使用判断手段による判断に依る)、コード内の他の箇所に他のセクションの要素を使用しているかどうかを判断するコード内他のセクションの要素存在/非存在検索手段と
を有し、
4.1.1.<機能を有する手段を組み込んだ/組み込んでいないソフトウエアに他のセクションの要素非存在時>
機能を有する手段を組み込んだ/組み込んでいないソフトウエアに他のセクションの要素が存在していない場合(コード内他のセクションの要素存在/非存在検索手段による判断に依る)、
他のセクションの要素を他のセクションから削除し、他のセクションの要素削除によるアドレス変更分他のセクション内の他のセクションの要素アドレスを変更する他のセクションの要素アドレス変更手段と、
現コード内に他のセクションの要素のアドレスを使用している場合、使用しているアドレスを他のセクションの要素アドレス変更手段により変更されたアドレスに変更する他のセクションの現コード内他の要素アドレス変更手段と
を有し、
4.2 上述した、4.の処理を、機能を有する手段が使用している、全ての他のセクション対して実行する、上述4.処理機能を有する手段使用全他のセクション実行手段と
を有し、
5.
5.0. 削除した機能を有する手段の削除により、コード内のアドレスを指定している箇所があるかどうかを判断する、機能を有する手段削除コード内アドレス指定/非指定判断手段と
を有し、
(コードの削除により、コード内のアドレスを指定していた箇所は、削除サイズ分全部ずらす)
(機能を有する手段削除コード内アドレス指定/非指定判断手段による判断に依り、指定していた箇所がある場合、)現コード内で、アドレスを参照する命令を検索し、コード記載セクション内のアドレスを参照しているアドレスを検索し、検索したアドレスを削除したコードサイズ分ずらす削除コード分アドレスずらし手段と
を有し、
6.
6.0. 機能を有する手段削除によりコードサイズが初めより小さくなるかどうかを判断するコード削除コードサイズ小/非小判断手段と
を有し、
(機能を有する手段削除によりコードサイズが初めより小さくなる場合)
機能を有する手段削除により、コードサイズが(コード記載セクション)ヘッダーに記載されているサイズよりも小さくなる場合(コード削除コードサイズ小/非小判断手段による判断に依る)、
(コード記載セクション)ヘッダー内に記載のコード記載セクション及び/又はコード記載セクションのコードサイズをコード削除後のサイズより大きい規定幅の大きさのサイズに変更するコードサイズ変更手段と
を有し、
(コード記載セクション以外の)第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段
を有し、
第1の他のセクション存在時(第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段の判断による判断に依る)、
コードサイズ変更手段により減分したサイズ分、(第1の他のセクション)ヘッダー内に記載の第1の他のセクションの開始アドレス及び/又は第1の他のセクションを変更する第1の他のセクション開始アドレス変更手段と、
コード内に第1の他のセクションの要素のアドレスを使用している場合、コード削除により、第1の他のセクションの要素のアドレスが変化した分、コード内の第1の他のセクションの要素のアドレスを変更するコード内第1の他のセクションの要素アドレス変更手段と
を有し、
6.1 コード挿入により第1の他のセクションサイズが初めより小さくなるかどうかを判断するコード挿入第1の他のセクションサイズ小/非小判断手段と
を有し、
(コード挿入により第1の他のセクションサイズが初めより小さくなる場合)
コード削除により、第1の他のセクションのサイズが(第1の他のセクション)ヘッダー内に記載されているサイズよりも小さくなる場合(コード挿入により他のセクションサイズが初めより小さくなるかどうかを判断するコード挿入第1の他のセクションサイズ小/非小判断手段による判断に依る)、
(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションのサイズを第1の他のセクション削除後のサイズより大きい規定幅の大きさのサイズに変更する第1の他のセクションサイズ変更手段と
を有し、
(コード記載セクション以外の)第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段と
を有し、
第2の他のセクション存在時(第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段による判断による)、
第1の他のセクションの開始アドレス以降に開始アドレスを有する(第2の他のセクション)ヘッダー内に記載の第2の他のセクション及び/又は第2の他のセクションの開始アドレスを第1の他のセクションの開始アドレスとサイズの減分だけずらす第2の他のセクションの開始アドレス変更手段と、
コード内に第2の他のセクションの要素のアドレスを使用している場合、コード削除により、第2の他のセクションの要素のアドレスが変化した分、コード内の第2の他のセクションの要素のアドレスを変更するコード内第2の他のセクションの要素アドレス変更手段と
を有し、
6.2 第1の他のセクションを第2の他のセクションの開始アドレスを有する他のセクションとして、第1の他のセクションが存在しなくなるまで、6.1の処理を繰り返し実行する、6.1の処理繰り返し実行手段と
を有し、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とするソフトウエア製造装置、
並びに/若しくは、
電子機器又はコンピュータ上のプログラムの実行体の実行を監視し、実行体の停止中に、ソフトウエアに機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置。
【請求項15】
請求項1、請求項2、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア、請求項3、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、請求項7、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ生成装置、請求項9、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置、又は、請求項12乃至請求項14に記載のソフトウエア製造装置
に記載の処理を実行させるコンピュータが読みとり可能なプログラムを供給若しくは配布することを特徴とする供給若しくは配布媒体。
【請求項16】
処理を施したいソフトウエアを供給媒体によって供給することによって、
ソフトウエアに機能を有する手段をバイナリの状態で組み込んで、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除して供給媒体に格納する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項17】
処理を施したいソフトウエアを供給媒体によって供給することによって、ソフトウエアに機能を有する手段をバイナリの状態で組み込んで供給媒体に格納することを特徴とする機械語コード埋め込み装置(電子機器)であって、
請求項16に記載の機械語コード埋め込み装置(電子機器)において、
容器に格納されており、
供給媒体を供給する供給媒体供給手段を有し、
前記供給媒体供給手段により供給された供給媒体からソフトウエア及び/又は組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等)を示すファイル又はデータを読み込み、
前記ソフトウエアに機能を有する手段を
初期設定による組み込み指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み指標か、各種選択釦を有している場合、選択釦による組み込み指標か、ファイル又はデータによる設定による組み込み指標に基づいて、
バイナリの状態で組み込んで供給媒体に格納し、
並びに/若しくは、
前記供給媒体供給手段により供給された供給媒体から組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、並びに/若しくは初期設定を行うかどうか等)を示すファイル又はデータを読み込み、
組み込み用プログラムを
初期設定による組み込み用プログラム指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み用プログラム指標か、各種選択釦を有している場合、選択釦による組み込み用プログラム指標か、ファイル又はデータによる設定による組み込み用プログラム指標に基づいて、
組み込み用プログラムを追加、変更、及び/又は削除をし、
並びに/若しくは、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
並びに/若しくは、
初期設定を変更する為の(選択)操作機(コンピュータ)接続用の接続手段を有し、接続された(選択)操作機(コンピュータ)から初期設定を変更する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項18】
処理を施したいソフトウエアを供給媒体によって供給することによって、ソフトウエアに機能を有する手段をバイナリの状態で組み込んで、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除して供給媒体に格納することを特徴とする機械語コード埋め込み装置(電子機器)であって、
請求項16又は請求項17に記載の機械語コード埋め込み装置(電子機器)において、
容器に格納されており、
供給媒体を供給する供給媒体供給手段を有し、
前記供給媒体供給手段により供給された供給媒体から機能を有する手段が組み込まれた/組み込んでいないソフトウエア及び/又は組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を示すファイル又はデータを読み込み、
前記機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段を
初期設定による組み込み指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み指標か、各種選択釦を有している場合、選択釦による組み込み指標か、ファイル又はデータによる設定による組み込み指標に基づいて、
バイナリの状態で組み込み削除し、機能を有する手段が組み込み削除されたソフトウエアを供給媒体に格納し、
並びに/若しくは、
前記供給媒体供給手段により供給された供給媒体から組み込み削除用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を示すファイル又はデータを読み込み、
組み込み削除用プログラムを
初期設定による組み込み用プログラム指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み用プログラム指標か、各種選択釦を有している場合、選択釦による組み込み用プログラム指標か、ファイル又はデータによる設定による組み込み用プログラム指標に基づいて、
組み込み削除用プログラムを追加、変更、及び/又は削除をし、
並びに/若しくは、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
並びに/若しくは、
初期設定を変更する為の(選択)操作機(コンピュータ)接続用の接続手段を有し、接続された(選択)操作機(コンピュータ)から初期設定を変更する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項19】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【請求項20】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)であって、
請求項19に記載の機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)において、
容器に格納されており、
電子機器又はコンピュータ上に存在する実行体に、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等)に基づいて、電子機器又はコンピュータ上に存在する実行体に、実行体の実行を監視し、実行体の停止中に、機能を有する手段をバイナリの状態で組み込むことを特徴とし、
初期設定による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標選択手段による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器又はコンピュータが供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標を示すファイル又はデータを供給することによる集積回路(又は供給若しくは配布媒体)組み込み指標設定に基づいて、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込み、
並びに/若しくは、
(1)
供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等)、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等)を供給媒体により供給すると、供給された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標が変更され、及び/又は、集積回路(又は供給若しくは配布媒体)組み込み用プログラムが追加、変更、及び/又は削除され、
並びに/若しくは、
供給媒体を供給する供給媒体供給手段を有する場合、
(1−1)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と同じファイルを使用する場合)
ソフトウエアを供給媒体により供給すると、設定されている集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、
(1−1−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、集積回路(又は供給若しくは配布媒体)組み込み指標及び集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
又は、
(1−2)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶しない場合)
ソフトウエアと組み込み指標と組み込み用プログラム及び/又は組み込み用指標を供給媒体により供給すると、組み込み指標と組み込み用プログラム及び/又は組み込み用指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、
(1−2−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
又は、
(1−3)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶する場合)
供給媒体を供給する供給媒体供給手段を有する場合、組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等)、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等)を供給媒体により供給すると、初期設定が組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標により変更され、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用プログラム指標選択手段により選択された組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標に基づいて変更され、
供給媒体を供給する供給媒体供給手段を有する場合、
ソフトウエアを供給媒体により供給すると、設定されている組み込み指標に基づいて、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標選択手段による組み込み指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、及び/又は初期設定が変更され、
(1−3−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【請求項21】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)であって、
請求項19又は請求項20に記載の機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)において、
容器に格納されており、
電子機器又はコンピュータ上に存在する機能を有する手段が組み込まれた/組み込んでいない実行体に、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)に基づいて、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段が組み込まれた/組み込んでいない実行体の実行を監視し、実行体の停止中に、機能を有する手段をバイナリの状態で組み込み削除することを特徴とし、
初期設定による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標選択手段による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器又はコンピュータが供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標を示すファイル又はデータを供給することによる集積回路(又は供給若しくは配布媒体)組み込み指標設定に基づいて、電子機器又はコンピュータ上に存在する実行体から、機能を有する手段をバイナリの状態で組み込み削除し、
並びに/若しくは、
(2)
供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み削除用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を供給媒体により供給すると、供給された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標が変更され、及び/又は、集積回路(又は供給若しくは配布媒体)組み込み削除用プログラムが追加、変更、及び/又は削除され、
並びに/若しくは、
供給媒体を供給する供給媒体供給手段を有する場合、
(2−1)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と同じファイルを使用する場合)
機能を有する手段が組み込まれた/組み込んでいないソフトウエアを供給媒体により供給すると、設定されている集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除し、
(2−1−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、集積回路(又は供給若しくは配布媒体)組み込み指標及び集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
又は、
(2−2)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶しない場合)
ソフトウエアと組み込み指標と組み込み削除用プログラム及び/又は組み込み用指標を供給媒体により供給すると、組み込み指標と組み込み削除用プログラム及び/又は組み込み用指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除し、
(2−2−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
又は、
(2−3)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶する場合)
供給媒体を供給する供給媒体供給手段を有する場合、組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を供給媒体により供給すると、初期設定が組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は組み込み用プログラム指標により変更され、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用プログラム指標選択手段により選択された組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は組み込み用プログラム指標に基づいて変更され、
供給媒体を供給する供給媒体供給手段を有する場合、
機能を有する手段が組み込まれた/組み込んでいないソフトウエアを供給媒体により供給すると、設定されている組み込み指標に基づいて、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標選択手段による組み込み指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除、及び/又は初期設定が変更され、
(2−3−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【請求項1】
1電子機器にのみ唯一動作を許可するソフトウエアであって、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
初回起動時、動作する電子機器に固有の指標を実行体の固有指標確保手段にバイナリの状態で格納する固有指標格納手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合にのみ動作継続を許可する固有指標一致動作継続許可手段と
を有することを特徴とする1電子機器唯一動作許可ソフトウエア。
【請求項2】
第1のソフトウエアが組み込まれた第2のソフトウエアであり、第1及び/又は第2のソフトウエアが1電子機器にのみ唯一動作を許可するソフトウエアであって、
第1のソフトウエアを確保した第1のソフトウエア確保手段と、
第1のソフトウエアを生成する第1のソフトウエア生成手段と
を第2のソフトウエアに有し、
第1及び/又は第2のソフトウエアの少なくとも一方に、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合のみ動作継続を許可する固有指標一致動作継続許可手段と
を有し、
第1のソフトウエアに前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
初回起動時、動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第1のソフトウエア存在第1のソフトウエア固有指標格納手段
を第1のソフトウエアに備えるか、又は、
初回起動時、動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第1のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、
第2のソフトウエアに前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
初回起動時、動作する電子機器に固有の指標を第2のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第2のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、
第1及び第2のソフトウエアの両方に前記固有指標確保手段と前記固有指標一致動作継続許可手段を有している場合、
動作する電子機器に固有の指標を第2のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第2のソフトウエア固有指標格納手段
を第2のソフトウエアに備え、さらに、
動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第1のソフトウエア存在第1のソフトウエア固有指標格納手段
を第1のソフトウエアに備えるか、又は、
動作する電子機器に固有の指標を第1のソフトウエアの実行体の固有指標確保手段にバイナリの状態で格納する第2のソフトウエア存在第1のソフトウエア固有指標格納手段
を第2のソフトウエアに備えることを特徴とする1電子機器唯一動作許可ソフトウエア。
【請求項3】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、第1のソフトウエアを確保した第1のソフトウエア確保手段は第1のソフトウエアを確保する為の第1のソフトウエア確保用意手段とした1電子機器唯一動作許可ソフトウエア生成装置であって、
第1のソフトウエア確保手段に第1のソフトウエアを格納する第1のソフトウエア格納手段を備える
ことを特徴とする1電子機器唯一動作許可ソフトウエア生成装置。
【請求項4】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、
動作する電子機器に固有の指標がインストールする電子機器に固有の指標であり、請求項2に記載の1電子機器唯一動作許可ソフトウエアは、1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)であることを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項5】
請求項2に記載の1電子機器唯一動作許可ソフトウエアにおいて、
第1のソフトウエアを起動する第1のソフトウエア起動手段を第2のソフトウエアに有し、
第2のソフトウエアが起動時、固有指標一致動作継続許可手段を第2のソフトウエアに有する場合、第1のソフトウエアの終了を待機して第1のソフトウエアを削除する終了待機削除手段を有し、第1のソフトウエアのみが、固有指標一致動作継続許可手段を有する場合、第1のソフトウエアが起動後、第2のソフトウエアを削除する起動後削除手段を第1のソフトウエアに有する
ことを特徴とする1電子機器唯一動作許可ソフトウエア管理装置。
【請求項6】
請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の動作する電子機器に固有の指標がインストールする電子機器に固有の指標であり、
請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置を請求項4に記載の1電子機器唯一動作許可インストーラの第1のソフトウエア及び/又は第2のソフトウエアとし、
請求項4に記載の第2のソフトウエアとした場合、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを確保した第1のソフトウエア確保手段と、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを生成する第1のソフトウエア生成手段とを請求項4に記載の1電子機器唯一動作許可インストーラに備え、
請求項4に記載の第1のソフトウエアとした場合、請求項4に記載の第2のソフトウエアの第1のソフトウエア確保手段は、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを確保した手段であり、請求項4に記載の第2のソフトウエアの第1のソフトウエア生成手段は、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを生成する手段である
ことを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項7】
請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置を請求項4に記載の1電子機器唯一動作許可インストーラの第1のソフトウエア及び/又は第2のソフトウエアとし、
請求項4に記載の第2のソフトウエアとした場合、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを確保した第1のソフトウエア確保手段と、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第1のソフトウエアを生成する第1のソフトウエア生成手段とを請求項4に記載の1電子機器唯一動作許可インストーラに備え、
請求項4に記載の第1のソフトウエアとした場合、請求項4に記載の第2のソフトウエアの第1のソフトウエア確保手段は、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを確保した手段であり、請求項4に記載の第2のソフトウエアの第1のソフトウエア生成手段は、請求項6に記載の1電子機器唯一動作許可ソフトウエア管理装置の第2のソフトウエアを生成する手段である
ことを特徴とし、上記の適用関係を少なくとも一回以上繰り返した構成であることを特徴とする1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)。
【請求項8】
請求項4、請求項6、又は請求項7に記載の1電子機器唯一動作許可インストーラにおいて、第1のソフトウエアを確保した第1のソフトウエア確保手段は第1のソフトウエアを確保する為の第1のソフトウエア確保用意手段とした1電子機器唯一動作許可インストーラ生成装置であって、
第1のソフトウエア確保手段に第1のソフトウエアを格納する手段を第1のソフトウエア格納手段を備える
ことを特徴とする1電子機器唯一動作許可インストーラ生成装置。
【請求項9】
第1のソフトウエアを第2のソフトウエアにバイナリの状態で組み込む1電子機器唯一動作許可ソフトウエア生成若しくは製造装置又は1電子機器唯一動作許可インストーラ生成装置であって、
動作する電子機器に固有の指標を確保する固有指標確保手段と、
初回起動時、固有指標確保手段に動作する電子機器に固有の指標を格納する固有指標格納手段と、
起動時、起動時に取得した動作する電子機器に固有の指標と固有指標確保手段に確保された動作する電子機器に固有の指標とを比較し、一致した場合のみ動作継続を許可する固有指標一致動作継続許可手段と
を第1のソフトウエアにバイナリの状態で組み込むことを特徴とする1電子機器唯一動作許可ソフトウエア生成若しくは製造装置又は1電子機器唯一動作許可インストーラ生成装置。
【請求項10】
動作する電子機器に固有の指標がMACアドレスである
ことを特徴とする請求項1、若しくは請求項2に記載の1電子機器唯一動作許可ソフトウエア、請求項3に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、若しくは請求項7に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8に記載の1電子機器唯一動作許可インストーラ生成装置、又は、請求項9に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置。
【請求項11】
第1のソフトウエアを第2のソフトウエアに格納する領域及び/又は動作する電子機器に固有の指標を格納する領域に格納するデータは、暗号化されている
ことを特徴とする請求項1、請求項2、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア、請求項3、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、請求項7、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ生成装置、又は、請求項9、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置。
【請求項12】
ソフトウエアに機能を有する手段をバイナリの状態で組み込む、
並びに/若しくは、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とするソフトウエア製造装置。
【請求項13】
ソフトウエアに機能を有する手段をバイナリの状態で組み込むことを特徴とするソフトウエア製造装置であって、
請求項12に記載のソフトウエア製造装置において、
1.<コードの挿入>
1.0 組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所があるかどうかを検索するコード開始アドレスコール箇所検索手段と、
組み込むソフトウエアのコードのどの位置に機能を有する手段を挿入するかを選択判断するコード挿入位置選択判断手段と
を有し、
1.1.組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所がある場合(コード開始アドレスコール箇所検索手段による判断に依る)であって、コードの開始以前に何らかの処理を行う場合(コード挿入位置選択判断手段による判断に依る)、
(コード記載セクション)ヘッダーのコード記載セクション開始アドレスを検索するコード記載セクション開始アドレス検索手段と、
コード記載セクション開始アドレスからコード記載セクション内を検索し、コード開始アドレスをコールしている箇所を検索するコード記載セクション内コード開始アドレスコール箇所検索手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの開始アドレスの前に、コードを挿入するコード挿入手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスコール箇所のコード開始アドレスに挿入したコードアドレスを減算した開始アドレスに書き換えるコールコード開始アドレス変更手段と
を有し、
1.2.組み込むソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所が無い場合(コード開始アドレスコール箇所検索手段による判断に依る)、又は1.1以外の場合
(コード記載セクション)ヘッダーのコード開始アドレスを検索するコード開始アドレス検索手段と、
コード開始アドレス検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの初め、途中、又は最後にコードを挿入するコード挿入手段と
を有し、
2.<データアドレスの変更>
2.0 挿入したコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用しているかどうかを判断するシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段と
を有し、
挿入したコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用している場合(システムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段による判断に依る)、データをデータセクションに追加するデータセクション追加手段と、
データセクション追加手段により追加したデータのアドレスに挿入するコード内のデータのアドレスを変更する挿入コードデータアドレス変更手段と
を有し、
3.<機能を有する手段が呼び出し関数群格納ファイルを使用している場合>
3.0 機能を有する手段が呼び出し関数群格納ファイルを使用しているかどうかを判断する、機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段と
を有し、
3.1<組み込むソフトウエアの呼び出し関数群格納ファイル存在チェック>
挿入したコード内に呼び出し関数群格納ファイル被格納呼び出し関数をコールしている場合(機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段による判断に依る)、組み込むソフトウエアの呼び出し関数群呼び出しセクションを検索し、呼び出し関数群格納ファイルが存在するかどうかを検索する呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段と
を有し、
3.1.1<組み込むソフトウエアに呼び出し関数群格納ファイルが存在している場合>
組み込むソフトウエアに呼び出し関数群格納ファイルが存在している場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段による判断に依る)、
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在するかどうかを検索する呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段と
を有し、
3.1.1.1<組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在している場合>
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在している場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段による判断に依る)、
その呼び出し関数群格納ファイル被格納呼び出し関数のアドレスにより挿入するコードの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを変更する挿入コード呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.1.2<組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在していない場合>
組み込むソフトウエアに呼び出し関数群格納ファイル被格納呼び出し関数が存在していない場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル被格納呼び出し関数存在/非存在検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数を追加し、呼び出し関数群格納ファイル被格納呼び出し関数追加によるサイズ変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内に呼び出し関数群呼び出しセクションの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合、使用している呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.2<組み込むソフトウエアに呼び出し関数群格納ファイルが存在していない場合>
組み込むソフトウエアに呼び出し関数群格納ファイルが存在していない場合(呼び出し関数群呼び出しセクション呼び出し関数群格納ファイル存在/非存在検索手段による判断に依る)、
呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数を呼び出し関数群呼び出しセクションに追加し、呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数追加によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内に呼び出し関数群呼び出しセクションの呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合、使用している呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
4.<機能を有する手段が(コード記載、呼び出し関数群呼び出し、データセクション以外の単数又は複数の)他のセクションの要素を使用している場合>
4.0 機能を有する手段が他のセクションの要素を使用しているかどうかを判断する、機能を有する手段他のセクションの要素使用/非使用判断手段と
を有し、
4.1<組み込むソフトウエアの他のセクションの要素存在チェック>
挿入したコード内に他のセクションの要素を使用している場合(機能を有する手段他のセクションの要素使用/非使用判断手段による判断に依る)、他のセクションを検索し、他のセクションの要素が存在するかどうかを検索する他のセクション要素存在/非存在検索手段と
を有し、
4.1.1<組み込むソフトウエアに他のセクションの要素存在時>
組み込むソフトウエアに他のセクションの要素が存在している場合(他のセクション要素存在/非存在検索手段による判断に依る)、
その他のセクションの要素のアドレスにより挿入するコードの他のセクションの要素のアドレスを変更する挿入コード他のセクションの要素アドレス変更手段と
を有し、
4.1.2<組み込むソフトウエアに他のセクションの要素非存在時>
組み込むソフトウエアに他のセクションの要素が存在していない場合(他のセクション要素存在/非存在検索手段による判断に依る)、
他のセクションの要素を他のセクションに追加し、他のセクションの要素追加によるアドレス変更分他のセクション内の他のセクションの要素アドレスを変更する他のセクションの要素アドレス変更手段と、
現コード内に他のセクションの要素のアドレスを使用している場合、使用しているアドレスを他のセクションの要素アドレス変更手段により変更されたアドレスに変更する他のセクションの現コード内他の要素アドレス変更手段と
を有し、
4.2 上述した、4.の処理を、機能を有する手段が使用している、全ての他のセクション対して実行する、上述4.処理機能を有する手段使用全他のセクション実行手段と
を有し、
5.
5.0 コードの挿入により、コード内のアドレスを指定しているかどうかを判断するコード挿入コード内アドレス指定/非指定判断手段と
を有し、
(コードの挿入により、コード内のアドレスを指定していた箇所は、挿入サイズ分全部ずらす)
(コード挿入コード内アドレス指定/非指定判断手段による判断に依り、指定していた箇所がある場合、)現コード内で、アドレスを参照する命令を検索し、コード記載セクション内のアドレスを参照しているアドレスを検索し、検索したアドレスを挿入したコードサイズ分ずらす挿入コード分アドレスずらし手段と
を有し、
6.
6.0 コード挿入によりコードサイズが初めより大きくなるかどうかを判断するコード挿入コードサイズ大/非大判断手段と
を有し、
(コード挿入によりコードサイズが初めより大きくなる場合)
コード挿入により、コードサイズが(コード記載セクション)ヘッダーに記載されているサイズよりも大きくなる場合(コード挿入コードサイズ大/非大判断手段による判断に依る)、
(コード記載セクション)ヘッダー内に記載のコード記載セクション及び/又はコード記載セクションのコードサイズをコード挿入後のサイズより大きい規定幅の大きさのサイズに変更するコードサイズ変更手段と
を有し、
(コード記載セクション以外の)第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段
を有し、
第1の他のセクション存在時(第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段の判断による判断に依る)、
コードサイズ変更手段により増分したサイズ分、(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションの開始アドレスを変更する第1の他のセクション開始アドレス変更手段と、
コード内に第1の他のセクションの要素のアドレスを使用している場合、コード挿入により、第1の他のセクションの要素のアドレスが変化した分、コード内の第1の他のセクションの要素のアドレスを変更するコード内第1の他のセクションの要素アドレス変更手段と
を有し、
6.1 コード挿入により第1の他のセクションサイズが初めより大きくなるかどうかを判断するコード挿入第1の他のセクションサイズ大/非大判断手段と
を有し、
(コード挿入により第1の他のセクションサイズが初めより大きくなる場合)
コード挿入により、第1の他のセクションのサイズが(第1の他のセクション)ヘッダー内に記載されているサイズよりも大きくなる場合(コード挿入により他のセクションサイズが初めより大きくなるかどうかを判断するコード挿入第1の他のセクションサイズ大/非大判断手段による判断に依る)、
(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションのサイズを第1の他のセクション挿入後のサイズより大きい規定幅の大きさのサイズに変更する第1の他のセクションサイズ変更手段と
を有し、
(コード記載セクション以外の)第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段と
を有し、
第2の他のセクション存在時(第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段による判断による)、
第1の他のセクションの開始アドレス以降に開始アドレスを有する(第2の他のセクション)ヘッダー内に記載の第2の他のセクション及び/又は第2の他のセクションの開始アドレスを第1の他のセクションの開始アドレスとサイズの増分だけずらす第2の他のセクションの開始アドレス変更手段と、
コード内に第2の他のセクションの要素のアドレスを使用している場合、コード挿入により、第2の他のセクションの要素のアドレスが変化した分、コード内の第2の他のセクションの要素のアドレスを変更するコード内第2の他のセクションの要素アドレス変更手段と
を有し、
6.2 第1の他のセクションを第2の他のセクションの開始アドレスを有する他のセクションとして、第1の他のセクションが存在しなくなるまで、6.1の処理を繰り返し実行する、6.1の処理繰り返し実行手段と
を有し、
ソフトウエアに機能を有する手段をバイナリの状態で組み込む
ことを特徴とするソフトウエア製造装置、
並びに/若しくは、
電子機器又はコンピュータ上のプログラムの実行体の実行を監視し、実行体の停止中に、ソフトウエアに機能を有する手段をバイナリの状態で組み込むことを特徴とするソフトウエア製造装置。
【請求項14】
ソフトウエアに機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置であって、
請求項12又は請求項13に記載のソフトウエア製造装置において、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置であって、
<機能を有する手段のソフトウエア存在/非存在>
単数又は複数の、(あるアドレスからあるアドレス迄の)固まった単位で存在する機能を有する手段が参照するシステムコール、呼び出し関数群格納ファイル被格納呼び出し関数、呼び出し関数群呼び出しセクション、データセクション、及び/又は、他のデータセクション等のアドレス参照箇所の関数及び/又はデータと、ソフトウエアの該当箇所との一致を含め、機能を有する手段がソフトウエア内に存在するかどうかの判断を行う機能を有する手段ソフトウエア内存在/非存在判断手段と
を及び/又は有し、
<機能を有する手段のソフトウエア存在時>(及び/又は機能を有する手段ソフトウエア内存在/非存在判断手段による一致の判断の場合)
1.<コードの削除>
1.0. 機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所があるかどうかを検索するコード開始アドレスコール箇所検索手段と、
機能を有する手段を組み込んだ/組み込んでいないソフトウエアのコードのどの位置に機能を有する手段を挿入しているかを選択判断するコード挿入位置選択判断手段と
を有し、
1.1.機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所がある場合(コード開始アドレスコール箇所検索手段による判断に依る)であって、コードの開始以前に機能を有する手段を挿入している場合(コード挿入位置選択判断手段による判断に依る)、
(コード記載セクション)ヘッダーのコード記載セクション開始アドレスを検索するコード記載セクション開始アドレス検索手段と、
コード記載セクション開始アドレスからコード記載セクション内を検索し、コード開始アドレスをコールしている箇所を検索するコード記載セクション内コード開始アドレスコール箇所検索手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスに基づき、コード開始アドレスからコード記載セクションの開始アドレス(又は、組み込み前のコード記載セクションの通常の開始アドレス)の前までに挿入したコードを削除するコード削除手段と、
コード記載セクション内コード開始アドレスコール箇所検索手段により検索されたコード開始アドレスコール箇所のコード開始アドレスに削除した機能を有する手段のコードアドレスを加算した(又は、通常の)開始アドレスに書き換えるコールコード開始アドレス変更手段と
を有し、
1.2.機能を有する手段を組み込んだ/組み込んでいないソフトウエアに、デバッグ情報等、現コード内にコード開始アドレスをコールする箇所が無い場合(コード開始アドレスコール箇所検索手段による判断に依る)、又は1.1以外の場合
(コード記載セクション)ヘッダーのコード開始アドレスを検索するコード開始アドレス検索手段と、
コード開始アドレス検索手段により検索されたコード開始アドレスに基づき、コード記載セクションの初め、途中、又は最後に挿入した機能を有する手段のコードを削除するコード削除手段と
を有し、
2.<データアドレスの変更>
2.0 削除した機能を有する手段のコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用しているかどうかを判断するシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段と
を有し、
削除した機能を有する手段のコード内にシステムコール又は呼び出し関数群格納ファイル被格納呼び出し関数をコールしており、その関数がデータを使用している場合(システムコール又は呼び出し関数群格納ファイル被格納呼び出し関数データ使用/非使用判断手段による判断に依る)、データをデータセクションから削除するデータセクション削除手段と
を有し、
3.<削除した機能を有する手段が呼び出し関数群格納ファイルを使用している場合>
3.0. 削除した機能を有する手段が呼び出し関数群格納ファイルを使用しているかどうかを判断する、機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段と
を有し、
3.1.<他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数使用/非使用チェック>
削除した機能を有する手段が呼び出し関数群格納ファイルを使用している場合(機能を有する手段呼び出し関数群格納ファイル使用/非使用判断手段による判断に依る)、
機能を有する手段が使用している呼び出し関数群格納ファイル被格納呼び出し関数のアドレスを検索する呼び出し関数群格納ファイル被格納呼び出し関数アドレス検索手段と、
機能を有する手段が使用している呼び出し関数群格納ファイル被格納呼び出し関数のアドレスをコード内の他の箇所で使用しているかどうかを検索する他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段と
を有し、
3.1.1.<他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数を使用していない場合>
コード内の他の箇所で使用呼び出し関数群格納ファイル被格納呼び出し関数を使用していると判断されなかった場合(他の箇所使用呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段による判断に依る)、
呼び出し関数群呼び出しセクション内に、使用呼び出し関数群格納ファイル被格納呼び出し関数が属する呼び出し関数群格納ファイルの他の呼び出し関数群格納ファイル被格納呼び出し関数のアドレスを検索する呼び出し関数群呼び出しセクション内他の呼び出し関数群格納ファイル被格納呼び出し関数アドレス検索手段と
を有し、
3.1.1.1.<呼び出し関数群呼び出しセクション内に他の呼び出し関数群格納ファイル被格納呼び出し関数が検索された場合>
呼び出し関数群呼び出しセクション内に他の呼び出し関数群格納ファイル被格納呼び出し関数が検索された場合、
他の呼び出し関数群格納ファイル被格納呼び出し関数をコード内の他の箇所で使用しているかどうかを検索する他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスコード内の他の箇所使用/非使用検索手段と
を有し、
3.1.1.1.1.<他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していない場合>
他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していると判断されなかった場合(他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスコード内の他の箇所使用/非使用検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数,呼び出し関数群格納ファイル被格納呼び出し関数の呼び出し関数群格納ファイルに属する全ての他の呼び出し関数群格納ファイル被格納呼び出し関数,呼び出し関数群格納ファイルを削除し、呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数削除によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
3.1.1.1.2.<他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用している場合>
他の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを使用していると判断された場合(他の呼び出し関数群格納ファイル被格納呼び出し関数アドレス使用/非使用検索手段による判断に依る)、
呼び出し関数群格納ファイル被格納呼び出し関数を削除し、呼び出し関数群格納ファイル被格納呼び出し関数削除によるアドレス変更分呼び出し関数群呼び出しセクション内の呼び出し関数群格納ファイルアドレス、呼び出し関数群格納ファイル被格納呼び出し関数アドレス、及び/又は呼び出し関数群呼び出しセクション内のそれ以外のアドレス参照アドレスを変更する呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と、
現コード内の呼び出し関数群格納ファイル被格納呼び出し関数アドレスを呼び出し関数群呼び出しセクション内呼び出し関数群格納ファイル,呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段により変更されたアドレスに変更する現コード内呼び出し関数群格納ファイル被格納呼び出し関数アドレス変更手段と
を有し、
4.<削除した機能を有する手段が(コード記載、呼び出し関数群呼び出し、データセクション以外の単数又は複数の)他のセクションの要素を使用している場合>
4.0. 削除した機能を有する手段が他のセクションの要素を使用しているかどうかを判断する、機能を有する手段他のセクションの要素使用/非使用判断手段と
を有し、
4.1.<削除した機能を有する手段の他のセクションの要素使用チェック>
削除した機能を有する手段のコード内に他のセクションの要素を使用している場合(機能を有する手段他のセクションの要素使用/非使用判断手段による判断に依る)、コード内の他の箇所に他のセクションの要素を使用しているかどうかを判断するコード内他のセクションの要素存在/非存在検索手段と
を有し、
4.1.1.<機能を有する手段を組み込んだ/組み込んでいないソフトウエアに他のセクションの要素非存在時>
機能を有する手段を組み込んだ/組み込んでいないソフトウエアに他のセクションの要素が存在していない場合(コード内他のセクションの要素存在/非存在検索手段による判断に依る)、
他のセクションの要素を他のセクションから削除し、他のセクションの要素削除によるアドレス変更分他のセクション内の他のセクションの要素アドレスを変更する他のセクションの要素アドレス変更手段と、
現コード内に他のセクションの要素のアドレスを使用している場合、使用しているアドレスを他のセクションの要素アドレス変更手段により変更されたアドレスに変更する他のセクションの現コード内他の要素アドレス変更手段と
を有し、
4.2 上述した、4.の処理を、機能を有する手段が使用している、全ての他のセクション対して実行する、上述4.処理機能を有する手段使用全他のセクション実行手段と
を有し、
5.
5.0. 削除した機能を有する手段の削除により、コード内のアドレスを指定している箇所があるかどうかを判断する、機能を有する手段削除コード内アドレス指定/非指定判断手段と
を有し、
(コードの削除により、コード内のアドレスを指定していた箇所は、削除サイズ分全部ずらす)
(機能を有する手段削除コード内アドレス指定/非指定判断手段による判断に依り、指定していた箇所がある場合、)現コード内で、アドレスを参照する命令を検索し、コード記載セクション内のアドレスを参照しているアドレスを検索し、検索したアドレスを削除したコードサイズ分ずらす削除コード分アドレスずらし手段と
を有し、
6.
6.0. 機能を有する手段削除によりコードサイズが初めより小さくなるかどうかを判断するコード削除コードサイズ小/非小判断手段と
を有し、
(機能を有する手段削除によりコードサイズが初めより小さくなる場合)
機能を有する手段削除により、コードサイズが(コード記載セクション)ヘッダーに記載されているサイズよりも小さくなる場合(コード削除コードサイズ小/非小判断手段による判断に依る)、
(コード記載セクション)ヘッダー内に記載のコード記載セクション及び/又はコード記載セクションのコードサイズをコード削除後のサイズより大きい規定幅の大きさのサイズに変更するコードサイズ変更手段と
を有し、
(コード記載セクション以外の)第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段
を有し、
第1の他のセクション存在時(第1の他のセクションが存在するかどうか判断する第1の他のセクションが存在/非存在判断手段の判断による判断に依る)、
コードサイズ変更手段により減分したサイズ分、(第1の他のセクション)ヘッダー内に記載の第1の他のセクションの開始アドレス及び/又は第1の他のセクションを変更する第1の他のセクション開始アドレス変更手段と、
コード内に第1の他のセクションの要素のアドレスを使用している場合、コード削除により、第1の他のセクションの要素のアドレスが変化した分、コード内の第1の他のセクションの要素のアドレスを変更するコード内第1の他のセクションの要素アドレス変更手段と
を有し、
6.1 コード挿入により第1の他のセクションサイズが初めより小さくなるかどうかを判断するコード挿入第1の他のセクションサイズ小/非小判断手段と
を有し、
(コード挿入により第1の他のセクションサイズが初めより小さくなる場合)
コード削除により、第1の他のセクションのサイズが(第1の他のセクション)ヘッダー内に記載されているサイズよりも小さくなる場合(コード挿入により他のセクションサイズが初めより小さくなるかどうかを判断するコード挿入第1の他のセクションサイズ小/非小判断手段による判断に依る)、
(第1の他のセクション)ヘッダー内に記載の第1の他のセクション及び/又は第1の他のセクションのサイズを第1の他のセクション削除後のサイズより大きい規定幅の大きさのサイズに変更する第1の他のセクションサイズ変更手段と
を有し、
(コード記載セクション以外の)第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段と
を有し、
第2の他のセクション存在時(第2の他のセクションが存在するかどうか判断する第2の他のセクションが存在/非存在判断手段による判断による)、
第1の他のセクションの開始アドレス以降に開始アドレスを有する(第2の他のセクション)ヘッダー内に記載の第2の他のセクション及び/又は第2の他のセクションの開始アドレスを第1の他のセクションの開始アドレスとサイズの減分だけずらす第2の他のセクションの開始アドレス変更手段と、
コード内に第2の他のセクションの要素のアドレスを使用している場合、コード削除により、第2の他のセクションの要素のアドレスが変化した分、コード内の第2の他のセクションの要素のアドレスを変更するコード内第2の他のセクションの要素アドレス変更手段と
を有し、
6.2 第1の他のセクションを第2の他のセクションの開始アドレスを有する他のセクションとして、第1の他のセクションが存在しなくなるまで、6.1の処理を繰り返し実行する、6.1の処理繰り返し実行手段と
を有し、
ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とするソフトウエア製造装置、
並びに/若しくは、
電子機器又はコンピュータ上のプログラムの実行体の実行を監視し、実行体の停止中に、ソフトウエアに機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とするソフトウエア製造装置。
【請求項15】
請求項1、請求項2、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア、請求項3、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成装置、請求項4、請求項6、請求項7、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ(ソフトウエア配布装置)、請求項5、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア管理装置、請求項8、若しくは請求項10に記載の1電子機器唯一動作許可インストーラ生成装置、請求項9、若しくは請求項10に記載の1電子機器唯一動作許可ソフトウエア生成若しくは製造装置、若しくは1電子機器唯一動作許可インストーラ生成装置、又は、請求項12乃至請求項14に記載のソフトウエア製造装置
に記載の処理を実行させるコンピュータが読みとり可能なプログラムを供給若しくは配布することを特徴とする供給若しくは配布媒体。
【請求項16】
処理を施したいソフトウエアを供給媒体によって供給することによって、
ソフトウエアに機能を有する手段をバイナリの状態で組み込んで、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除して供給媒体に格納する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項17】
処理を施したいソフトウエアを供給媒体によって供給することによって、ソフトウエアに機能を有する手段をバイナリの状態で組み込んで供給媒体に格納することを特徴とする機械語コード埋め込み装置(電子機器)であって、
請求項16に記載の機械語コード埋め込み装置(電子機器)において、
容器に格納されており、
供給媒体を供給する供給媒体供給手段を有し、
前記供給媒体供給手段により供給された供給媒体からソフトウエア及び/又は組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等)を示すファイル又はデータを読み込み、
前記ソフトウエアに機能を有する手段を
初期設定による組み込み指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み指標か、各種選択釦を有している場合、選択釦による組み込み指標か、ファイル又はデータによる設定による組み込み指標に基づいて、
バイナリの状態で組み込んで供給媒体に格納し、
並びに/若しくは、
前記供給媒体供給手段により供給された供給媒体から組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、並びに/若しくは初期設定を行うかどうか等)を示すファイル又はデータを読み込み、
組み込み用プログラムを
初期設定による組み込み用プログラム指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み用プログラム指標か、各種選択釦を有している場合、選択釦による組み込み用プログラム指標か、ファイル又はデータによる設定による組み込み用プログラム指標に基づいて、
組み込み用プログラムを追加、変更、及び/又は削除をし、
並びに/若しくは、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
並びに/若しくは、
初期設定を変更する為の(選択)操作機(コンピュータ)接続用の接続手段を有し、接続された(選択)操作機(コンピュータ)から初期設定を変更する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項18】
処理を施したいソフトウエアを供給媒体によって供給することによって、ソフトウエアに機能を有する手段をバイナリの状態で組み込んで、並びに/若しくは、ソフトウエアにバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除して供給媒体に格納することを特徴とする機械語コード埋め込み装置(電子機器)であって、
請求項16又は請求項17に記載の機械語コード埋め込み装置(電子機器)において、
容器に格納されており、
供給媒体を供給する供給媒体供給手段を有し、
前記供給媒体供給手段により供給された供給媒体から機能を有する手段が組み込まれた/組み込んでいないソフトウエア及び/又は組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を示すファイル又はデータを読み込み、
前記機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段を
初期設定による組み込み指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み指標か、各種選択釦を有している場合、選択釦による組み込み指標か、ファイル又はデータによる設定による組み込み指標に基づいて、
バイナリの状態で組み込み削除し、機能を有する手段が組み込み削除されたソフトウエアを供給媒体に格納し、
並びに/若しくは、
前記供給媒体供給手段により供給された供給媒体から組み込み削除用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を示すファイル又はデータを読み込み、
組み込み削除用プログラムを
初期設定による組み込み用プログラム指標か、表示手段を有している場合、表示手段に表示される選択手段による組み込み用プログラム指標か、各種選択釦を有している場合、選択釦による組み込み用プログラム指標か、ファイル又はデータによる設定による組み込み用プログラム指標に基づいて、
組み込み削除用プログラムを追加、変更、及び/又は削除をし、
並びに/若しくは、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
並びに/若しくは、
初期設定を変更する為の(選択)操作機(コンピュータ)接続用の接続手段を有し、接続された(選択)操作機(コンピュータ)から初期設定を変更する
ことを特徴とする機械語コード埋め込み装置(電子機器)。
【請求項19】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【請求項20】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)であって、
請求項19に記載の機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)において、
容器に格納されており、
電子機器又はコンピュータ上に存在する実行体に、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等)に基づいて、電子機器又はコンピュータ上に存在する実行体に、実行体の実行を監視し、実行体の停止中に、機能を有する手段をバイナリの状態で組み込むことを特徴とし、
初期設定による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標選択手段による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器又はコンピュータが供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標を示すファイル又はデータを供給することによる集積回路(又は供給若しくは配布媒体)組み込み指標設定に基づいて、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込み、
並びに/若しくは、
(1)
供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等)、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等)を供給媒体により供給すると、供給された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標が変更され、及び/又は、集積回路(又は供給若しくは配布媒体)組み込み用プログラムが追加、変更、及び/又は削除され、
並びに/若しくは、
供給媒体を供給する供給媒体供給手段を有する場合、
(1−1)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と同じファイルを使用する場合)
ソフトウエアを供給媒体により供給すると、設定されている集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、
(1−1−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、集積回路(又は供給若しくは配布媒体)組み込み指標及び集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
又は、
(1−2)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶しない場合)
ソフトウエアと組み込み指標と組み込み用プログラム及び/又は組み込み用指標を供給媒体により供給すると、組み込み指標と組み込み用プログラム及び/又は組み込み用指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、
(1−2−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、
又は、
(1−3)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶する場合)
供給媒体を供給する供給媒体供給手段を有する場合、組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等)、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等)を供給媒体により供給すると、初期設定が組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標により変更され、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用プログラム指標選択手段により選択された組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標に基づいて変更され、
供給媒体を供給する供給媒体供給手段を有する場合、
ソフトウエアを供給媒体により供給すると、設定されている組み込み指標に基づいて、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標選択手段による組み込み指標選択に基づいて、ソフトウエアに機能を有する手段をバイナリの状態で組み込み、及び/又は初期設定が変更され、
(1−3−1)
及び/又は、
組み込み用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み用プログラムをバイナリの状態でソフトウエアの実行体に格納し、また、ソフトウエア及び組み込み用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルしたソフトウエアの実行体に、コンパイルした組み込み用プログラムをバイナリの状態で実行体に格納する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【請求項21】
電子機器又はコンピュータに装着することによって、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段をバイナリの状態で組み込む、並びに/若しくは、実行体にバイナリの状態で組み込んだ/組み込んでいない機能を有する手段をバイナリの状態で組み込み削除することを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)であって、
請求項19又は請求項20に記載の機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)において、
容器に格納されており、
電子機器又はコンピュータ上に存在する機能を有する手段が組み込まれた/組み込んでいない実行体に、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)に基づいて、電子機器又はコンピュータ上に存在する実行体に、機能を有する手段が組み込まれた/組み込んでいない実行体の実行を監視し、実行体の停止中に、機能を有する手段をバイナリの状態で組み込み削除することを特徴とし、
初期設定による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標選択手段による集積回路(又は供給若しくは配布媒体)組み込み指標か、電子機器又はコンピュータが供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標を示すファイル又はデータを供給することによる集積回路(又は供給若しくは配布媒体)組み込み指標設定に基づいて、電子機器又はコンピュータ上に存在する実行体から、機能を有する手段をバイナリの状態で組み込み削除し、
並びに/若しくは、
(2)
供給媒体を供給する供給媒体供給手段を有する場合、集積回路(又は供給若しくは配布媒体)組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み削除用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を供給媒体により供給すると、供給された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標が変更され、及び/又は、集積回路(又は供給若しくは配布媒体)組み込み削除用プログラムが追加、変更、及び/又は削除され、
並びに/若しくは、
供給媒体を供給する供給媒体供給手段を有する場合、
(2−1)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と同じファイルを使用する場合)
機能を有する手段が組み込まれた/組み込んでいないソフトウエアを供給媒体により供給すると、設定されている集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択手段により選択された集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除し、
(2−1−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、集積回路(又は供給若しくは配布媒体)組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、集積回路(又は供給若しくは配布媒体)組み込み指標及び集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
又は、
(2−2)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶しない場合)
ソフトウエアと組み込み指標と組み込み削除用プログラム及び/又は組み込み用指標を供給媒体により供給すると、組み込み指標と組み込み削除用プログラム及び/又は組み込み用指標に基づいて、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除し、
(2−2−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、
又は、
(2−3)
(組み込み指標及び/又は組み込み用プログラム指標を集積回路(又は供給若しくは配布媒体)組み込み指標及び/又は集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標とは別のファイルを使用し、設定を電子機器又はコンピュータ上に記憶する場合)
供給媒体を供給する供給媒体供給手段を有する場合、組み込み指標(どの組み込み用プログラムをどのソフトウエアのどの位置に組み込むのか、ソフトウエアは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み指標と組み込み指標とを別のファイルとし、組み込み指標を記憶するか、及び/又は、初期設定をするかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)、並びに/若しくは、組み込み用プログラム及び/又は組み込み用プログラム指標(どの組み込み用プログラムを追加、変更、及び/又は削除し、組み込み用プログラムの順序、組み込み用プログラムは機械語かそれともどの高級言語で記載されたものか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとするか、集積回路(又は供給若しくは配布媒体)組み込み用プログラム指標と組み込み用プログラム指標とを別のファイルとし、組み込み用プログラム指標を記憶するか、並びに/若しくは初期設定を行うかどうか等、どの機能を有する手段を削除するか、どのソフトウエアからどの機能を有する手段を削除するか、機能を有する手段はソフトウエアのどの位置にどれ程のサイズで組み込まれているか、組み込み削除を実行するかどうか、組み込み処理を行うのか組み込み削除処理を行うのか、処理開始時初期設定によるのか選択手段によるのか等)を供給媒体により供給すると、初期設定が組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は組み込み用プログラム指標により変更され、また、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標及び/又は組み込み用プログラム指標選択手段により選択された組み込み指標、並びに/若しくは、組み込み削除用プログラム及び/又は組み込み用プログラム指標に基づいて変更され、
供給媒体を供給する供給媒体供給手段を有する場合、
機能を有する手段が組み込まれた/組み込んでいないソフトウエアを供給媒体により供給すると、設定されている組み込み指標に基づいて、電子機器の(選択)操作機の,若しくはコンピュータの(選択)操作機の,又はコンピュータが表示手段を有する場合コンピュータの,表示手段に表示される組み込み指標選択手段による組み込み指標選択に基づいて、機能を有する手段が組み込まれた/組み込んでいないソフトウエアから機能を有する手段をバイナリの状態で組み込み削除、及び/又は初期設定が変更され、
(2−3−1)
及び/又は、
組み込み削除用プログラムが、高級言語で記載されたものであって、組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除し、また、ソフトウエアが、高級言語で記載されたものであって、組み込み指標にどの高級言語かが記載されている場合、ソフトウエアを高級言語のコンパイラでコンパイルし、組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から組み込み削除し、また、ソフトウエア及び組み込み削除用プログラムも高級言語で記載されている場合であって、組み込み指標及び組み込み用プログラム指標にどの高級言語かが記載されている場合、組み込み削除用プログラムを、指定された高級言語のコンパイラでコンパイルし、ソフトウエアを、指定された高級言語のコンパイラでコンパイルし、コンパイルした機能を有する手段が組み込まれた/組み込んでいないソフトウエアの実行体から、コンパイルした組み込み削除用プログラムに基づいて、組み込み削除用プログラムをバイナリの状態で実行体から組み込み削除する
ことを特徴とする機械語コード埋め込みシステム集積回路(又は供給若しくは配布媒体)。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−73218(P2010−73218A)
【公開日】平成22年4月2日(2010.4.2)
【国際特許分類】
【公開請求】
【出願番号】特願2009−291607(P2009−291607)
【出願日】平成21年12月24日(2009.12.24)
【出願人】(708005105)
【Fターム(参考)】
【公開日】平成22年4月2日(2010.4.2)
【国際特許分類】
【出願番号】特願2009−291607(P2009−291607)
【出願日】平成21年12月24日(2009.12.24)
【出願人】(708005105)
【Fターム(参考)】
[ Back to top ]