JP3869716B2 - ソフトウェアライセンス管理機構を備える計算機 - Google Patents

ソフトウェアライセンス管理機構を備える計算機 Download PDF

Info

Publication number
JP3869716B2
JP3869716B2 JP2001384207A JP2001384207A JP3869716B2 JP 3869716 B2 JP3869716 B2 JP 3869716B2 JP 2001384207 A JP2001384207 A JP 2001384207A JP 2001384207 A JP2001384207 A JP 2001384207A JP 3869716 B2 JP3869716 B2 JP 3869716B2
Authority
JP
Japan
Prior art keywords
partition
license
management information
storage device
auxiliary storage
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.)
Expired - Fee Related
Application number
JP2001384207A
Other languages
English (en)
Other versions
JP2003186557A (ja
Inventor
雅彦 山内
寛 屋代
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2001384207A priority Critical patent/JP3869716B2/ja
Publication of JP2003186557A publication Critical patent/JP2003186557A/ja
Application granted granted Critical
Publication of JP3869716B2 publication Critical patent/JP3869716B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、プログラムの使用権の管理に係るものであり、特に、複数のオペレーティングシステム(OS)を利用可能な計算機におけるOSのライセンスの管理に好適な技術に関する。
【0002】
【従来の技術】
従来のOSに関するライセンスの管理については、例えば、OSを計算機にインストールする際に、ライセンス契約内容を表示し、同意しないとインストールを続行できない技術や、OSを格納したCD−ROMのケースに表記されている25文字のプロダクトキーを入力しないとインストールを続行できない技術などがある。OSを計算機にインストールする際の一連の処理については、「Microsoft Windows 2000 Professional リソースキット上」(2000.6.5 日経BPエクスプレス社発行 マイクロソフトコーポレーション著)、ISBN4−89100−160−7の第138ページから第142ページに記載されている。
【0003】
複数のOSを起動する計算機については、各OSをハードディスクに作成した独立した領域(パーティション)にインストールする必要がある。複数のOSを起動する一連の処理については、「AT互換機アーキテクチャハンドブック」(1995.4.3 株式会社ナツメ社発行 川村、吉田著)、ISBN4−8163−1831−3の第148ページから第152ページに記載されている。
【0004】
【発明が解決しようとする課題】
近年、複数種のOS(同時には1つのOSが)が動作可能である計算機が出てきた(例えばオープン系サーバ)。一方、ソースコードを含めて無償で公開されるOSが出現しており、無償にも係わらず品質が優れているためインターネットの分野では一般的に使用されている。従来、計算機メーカは商用OSをインストールした計算機を、OSライセンス料込みの価格で販売していたが、無償OSを使用するユーザのためにOSライセンス料なしの価格で計算機の販売を始めている。
【0005】
OSライセンス料込みの計算機とOSライセンス料を含まない計算機では、ハードウェアやハードウェアに組み込まれて動作するプログラム(ファームウェア)に差異はないため、OSライセンス料を含まないで販売された計算機でも商用OSは動作可能である。
【0006】
従来技術のプロダクトキーによるライセンス管理では、OSライセンス料込みの計算機と、OSライセンス料を含まない計算機を区別できないため、OSライセンスがない計算機で、商用OSが動作してしまうという課題があった。
【0007】
本発明の目的は、ライセンス(使用権)のあるOSとライセンスのない(正当な使用権のない)OSを区別し、ライセンスがないOSが計算機で動作することを防ぎ、適切にOSライセンスを管理する計算機を提供することにある。
【0008】
【課題を解決するための手段】
OSがインストール可能な複数のパーティションを持ち、パーティションにインストールされたOSを特定する第1の識別子を格納可能な補助記憶装置と、ライセンスの有無の管理の対象とするOSを特定する第2の識別子と第2の識別子毎にライセンスの有無を表すライセンス情報を記憶するメモリと、第1の識別子と第2の識別子が一致し、一致した第2の識別子に対応するライセンス情報がライセンス有りを示すとき対応するOSを動作可能にする手続きとを備える。
【0009】
【発明の実施の形態】
本発明における実施例を説明する。
図1は、本発明の一実施例を示す計算機システムのブロック図である。
計算機システム100は、モニタ装置等のI/O装置103、プログラム命令列やデータを永続的に格納するための磁気ディスク等の補助記憶装置105、プログラム命令列やデータを永続的に格納するためのEEPROM(Electrically Erasable Programmable Read OnlyMemory)等の不揮発性メモリ106、プログラム命令列やデータを格納するためのメモリ102、不揮発性メモリ106やメモリ102に格納したプログラム命令列を実行するためのプロセッサ101およびプログラム命令列やデータの伝送路であるバス104を備えている。
【0010】
補助記憶装置105には、補助記憶装置を複数の領域(パーティション)に分けて使用するためのパーティション管理情報109、OSのプログラム命令列やデータを格納するためのパーティション111を持つ。パーティション管理情報109には、パーティション111に格納されているOSを起動するためのプログラム命令列であるマスターブートストラップローダ110を持つ。1番目のパーティション111(1)には、OSを起動する際に実行するプログラム命令列であるOSブート手続き(計算機を起動する際、最初に補助記憶装置からOSを主記憶装置に読み出してくるためのプログラム)112を持つ。パーティションにはパーティション毎に異なるOSのプログラム命令列やデータを格納し、OS毎に異なるOSブート手続きをOSが格納されているパーティションに持ってもよい(パーティションにデータが入っている場合やパーティションがスワップ領域である場合などOSブート手続きがない場合がある)。OSブート手続き112にはマスターブートストラップローダから制御が移される。パーティション毎に異なるOSを格納し、マスターブートストラップローダが制御を移すOSブート手続きを変更することによって、複数のOSを一つの補助記憶装置から起動することができる。但し、ここでは複数のOSを同時に起動するのではなく、一度には任意の一つのOSが起動されることを想定している。
【0011】
補助記憶装置105には例えばCD−ROMに用意されたパーティション管理情報109とパーティション111がインストールされる。補助記憶装置105に登録しておくOSを変更する場合には、再構築されたパーティション管理情報109とパーティション111が再インストールされる。本実施例ではパーティションの数は4に制限されている。但し、後述する図2のマジックナンバーまでのパーティションの数をカウントする機能を持ち、後述するマスターブートストラップローダ110とライセンス判断手続き118と補助記憶装置書き込み手続きの一時変数Nの最大値を上述のカウント値とする機能を作り込めば、パーティションの数は任意なものとすることが出来る。
【0012】
不揮発性メモリ106には、計算機システム100の製品型名(計算機のハードウェア固有の情報)等を格納するためのシステム名称情報116、ライセンス管理対象OSのファイルシステムが使用し、OSの種別や特定のOSに係わるデータを表すパーティション内容識別子を格納するパーティション内容識別子管理情報117、パーティション内容識別子管理情報に格納されたパーティション内容識別子に基づいてライセンスの有無を判断するライセンス判断手続き118、補助記憶装置から論理的なブロック(ある大きさのデータの塊、例えばセクタ)をメモリに読み込むための補助記憶装置読み込み手続き119と、ライセンスがない場合にはシステムの起動処理を停止するシステム起動手続き120を持つ。補助記憶装置読み込み手続き119がメモリに読み込む論理的なブロックの単位としては、補助記憶装置の最小のデータ管理単位であるセクタを使用してもよい。パーティション内容識別子管理情報117では、ライセンス管理対象OSのファイルシステムが使用するパーティション内容識別子121及びライセンスの有無を示すライセンスフラグ122を持つ。
【0013】
パーティション内容識別子121には通常有償のOSの識別子が入るがフリーOSの識別子が入っても良い。後述するように、パーティション内容識別子121に登録されていないOSはブートが可能であるので、ブートを許可するかしないかの管理が不必要なOSの識別子を総て登録しておく必要はない。フリーOSの識別子が登録されているなら対応するライセンスフラグをオンにしてブートを許可すれば良い。
【0014】
メモリ102には、補助記憶装置のパーティション管理情報109がメモリに存在することを示すパーティション管理情報読み込みフラグ107を持つ。
【0015】
図2は、本発明におけるパーティション管理情報の一実施例である。パーティション管理情報109は、システム起動手続き120から呼び出され、OSをブートする補助記憶装置の領域(パーティション)を決定し、OSブート手続き112を呼び出す処理を実行するプログラム命令列であるマスターブートストラップローダ110、補助記憶装置のパーティションのサイズ等を示すパーティションテーブル201、パーティション管理情報が格納している情報が有効であることを示すためのマジックナンバー202を持つ。パーティションテーブル201には、N番目のパーティションからOSが起動可能か否かを示す起動フラグ203(N)(そのパーティションにOSが格納されているかを示すもので初期に設定される)、N番目のパーティション開始位置の論理ブロック番号を格納する開始位置204(N)、N番目のパーティションで格納されているデータの種別(OSの種別、あるOSに関するデータなど)を示すパーティション内容識別子205(N)、N番目のパーティション終了位置の論理ブロック番号を格納する終了位置206(N)、N番目のパーティションサイズを示す論理ブロックの数を格納するサイズ207(N)を持つ。補助記憶装置のパーティションは、補助記憶装置の最小のデータ管理単位であるセクタを複数集めて構成してよい。パーティションの開始位置や終了位置は、補助記憶装置のセクタの位置を特定するためのシリンダー番号、ヘッド番号、セクタ番号を組み合わせてもよいし、補助記憶装置のすべてのセクタに連続的な番号を付けてもよい。本実施例では、すべてのセクタに連続的な番号を付与した場合で説明する。パーティション管理情報の実施例については「AT互換機アーキテクチャハンドブック」(1995.4.3株式会社ナツメ社発行 川村、吉田著)、ISBN4−8163−1831−3の第148ページから第152ページにも記載されている。また、本実施例ではパーティション管理情報が持つパーティションテーブルの数を4つとして説明しているが、4つ以外のパーティションテーブルを持ってもよい。
【0016】
図3は、本発明におけるパーティション内容識別子管理情報117の一実施例である。
パーティション内容識別子管理情報117は、システム名称301と、システム名称に対応するライセンスフラグ122とパーティション内容識別子121の項目から構成される表である。システム名称301には、システム名称情報116に対応する識別子を格納する。パーティション内容識別子の項目には、ライセンス管理対象OSのファイルシステムが使用しOSの種別を特定できるパーティション内容識別子を格納する。ライセンス管理対象OSのファイルシステムが複数のパーティション内容識別子を使用する場合には、複数のパーティション内容識別子を格納してもよい。ライセンスフラグの項目には、ライセンス管理対象のOSにライセンスを許可する場合には1を、許可しない場合には0を格納する。ライセンス条件が変更になった時に備えて、システム名称の項目301とパーティション内容識別子の項目121及びライセンスフラグの項目122に格納するデータを設定するユーティリティプログラムを用意し、以前の設定とは変更できるようにしてもよい。更に述べると、計算機の出荷時にフロッピーディスクやCD−ROMなどに格納されたユーティリティプログラムを動作させてライセンスの有無(その計算機で使用可能で管理対象となるOSの使用権の有無)の状況を設定する。その後、ライセンスの状況が変われば、例えば、計算機が設置されたサイトで上記のユーティリティプログラムによってライセンスの有無の状況を書き換える。
【0017】
図4は、本発明におけるOSブート開始までの概略処理フローの一実施例を示すフローチャートである。
まず、計算機システムに電源オン等の事象が発生するとステップ402を実行する。ステップ402ではシステム起動手続き120を実行する。ステップ402の1で、プロセッサ、メモリ等の診断テストを実行し、I/O装置等の周辺機器の初期化を実行する。ステップ402の2で、補助記憶装置105からパーティション管理情報109をメモリに読み込む。ステップ402の3で、ライセンス判断手続き118を呼び出してライセンスの有無を判断する。ステップ402の4で、ライセンスが有る場合にはシステムの起動処理を続行するためにマスターブートストラップローダ110に制御を移す。
【0018】
次にステップ403を実行する。ステップ403ではマスターブートストラップローダを実行する。ステップ403の1では、すべてのパーティションテーブル201の起動フラグ203を検査してOSブート可能なパーティションを選択する。ステップ403の2では、ブート可能なパーティションからOSブート手続き112をメモリ102に読み込む。ステップ403の3では、OSブート手続き112に制御を移す。
【0019】
図5は、本発明におけるシステム起動手続き120の一実施例を示すフローチャートである。
まず、ステップ501を実行する。ステップ501の1では、プロセッサ、メモリ等の診断テストを実行し、I/O装置等の周辺機器の初期化を実行する。ステップ501の2では、パーティション管理情報読み込みフラグ107を0に初期化する。パーティション管理情報読み込みフラグは、パーティション管理情報109がメモリに読み込まれたかどうかを示すフラグであり、値が1の場合に読み込まれたことを示す。
【0020】
次にステップ502を実行する。ステップ502では、パーティション管理情報109をメモリに読み込むために補助記憶装置読み込み手続き119を呼び出す。パーティション管理情報109は、補助記憶装置105の最初のセクタに格納されており、最初のセクタに格納されたデータを読み込むために、補助記憶装置読み込み手続きの引数としてはブロック番号0を渡す。
【0021】
次にステップ503を実行する。ステップ503ではライセンスの有無を判断するためにライセンス判断手続き118を呼び出す。ライセンスが有る場合には次のステップ504を実行する。
【0022】
次にステップ504の1では、パーティション管理情報109がメモリに読み込まれたことを示すために、パーティション管理情報読み込みフラグ107を値1に設定する。ステップ504の2では、パーティション管理情報に格納されているプログラム命令列であるマスターブートストラップローダ110に制御を移す。
【0023】
図6は、本発明におけるマスターブートストラップローダの一実施例を示すフローチャートである。
まず、ステップ601では一時変数(処理フロー内で扱われる一時的な変数)Nを値1に設定する。
【0024】
次にステップ602では N 番目のパーティションテーブル201(N)の起動フラグ203(N)を取得する。次にステップ603ではステップ602で取得した起動フラグの値が1であるかどうか判断する。起動フラグの値が1である場合には、N番目のパーティションからOSがブート可能と判断してステップ604を実行し、起動フラグの値が1以外の場合には、N番目のパーティションからOSブート不可と判断して、別のパーティションテーブルを検査するためにステップ607を実行する。
【0025】
ステップ603で起動フラグの値が1に等しく、N番目のパーティションがOSブート可能であると判断した場合を説明する。
【0026】
まずステップ604を実行する。ステップ604では N番目のパーティションテーブル201(N)の開始位置204(N)を取得する。次にステップ605では、パーティションの開始位置のセクタに格納されているOSブート手続きを読み込むために、補助記憶装置読み込み手続きを呼び出す。補助記憶装置読み込み手続きに対する引数としては、ステップ604で取得したパーティションの開始位置204(N)を渡す。
【0027】
次にステップ606では、ステップ605でメモリに読み込んだOSブート手続きに制御を移す。ステップ603で起動フラグの値が0となっており、N番目のパーティションがOSブート不可と判断した場合を説明する。
【0028】
まずステップ607を実行する。ステップ607では一時変数Nに1を加えた値を Nに設定する。次にステップ608では一時変数Nが4より大きいかどうかを判断する。一時変数Nが4より大きい場合には、パーティション管理情報109にはOSブート可能なパーティションは存在しないと判断してステップ609を実行する。一時変数Nが4より大きくない場合にはパーティション管理情報109に格納されている別のパーティションテーブルをOSブート可能がどうか検査するためにステップ602を実行する。
【0029】
ステップ608で、一時変数Nが4より大きい、即ちOSブート可能なパーティションが存在しないと判断した場合を説明する。まずステップ609を実行する。ステップ609ではモニタ装置に“Invalid Partition Table”と表示し、計算機システムのユーザにOSブート可能なパーティションが存在しないことを通知する。
【0030】
このように、図5のステップ503でライセンスがあるOSがあるとされた後マスターブートストラップローダ110が実行され予めユーザにより設定された起動フラグのオンの検出処理が行なわれる。パーティションが4個あっても総てに起動可能なOSが格納されている訳ではない。複数個の起動可能なOSが格納されていれば、ここではパーティション番号が若いOSが起動される。
【0031】
図7は、本発明におけるライセンス判断手続きの一実施例を示すフローチャートである。まずステップ701の1では図1のシステム名称情報116に対応するパーティション内容識別子121を図3のパーティション内容識別子管理情報117から検索する。例えば、システム名称情報として“model B”が格納されていた場合には、パーティション内容識別子管理情報117のシステム名称の項目を検索して“model B”に一致する列を見つける。ステップ701の2では、ステップ701の1で一致した列のパーティション内容識別子121を取得して、一時変数Pに設定する。例えば、“model B”に一致した列を見つけた場合には、一時変数 Pの値として“Partition D”を設定する。ステップ701の3では、ステップ701の1で一致した列のライセンスフラグ122を取得して、一時変数Lに設定する。例えば、“model B”に一致した列を見つけた場合には、一時変数Lの値として1を設定する。
【0032】
次にステップ702では、一時変数Nの値を1に設定する。次にステップ703の1では、N番目のパーティションテーブル201(N)のパーティション内容識別子205(N)を取得する。ステップ703の2では、ステップ703の1で取得したパーティション内容識別子205(N)と、ステップ701の2で設定した一時変数Pを比較する。
【0033】
次にステップ704では、ステップ703の2で比較した結果、識別子が一致したかどうかを判断する。識別子が一致した場合には、ライセンス管理対象となっているOSと判断してステップ708を実行する。識別子が一致しない場合には、ライセンス管理対象外のOSと判断して、別のパーティションテーブルを検査するためにステップ705を実行する。
【0034】
ステップ704で識別子が一致したと判断した場合を説明する。
【0035】
まずステップ708を実行する。ステップ708では一時変数Lの値が1かどうかを判断する。一時変数Lの値が1と等しい場合には、ライセンスが許可されていると判断して、ライセンス判断手続きの呼び出し元に戻る。一時変数Lの値が1と等しくない場合には、ライセンスが許可されていないと判断してステップ707を実行する。
【0036】
ステップ704で識別子が一致しないと判断した場合を説明する。まずステップ705を実行する。ステップ705では一時変数Nに1を加えた値をNに設定する。
【0037】
次にステップ706では一時変数Nが4より大きいかどうかを判断する。一時変数Nが4より大きい場合には、パーティション管理情報109に格納されているすべてのパーティションテーブルを検査し、ライセンス管理対象となっているパーティションは存在しないと判断してライセンス判断手続きの呼び出し元に戻る。一時変数Nが4より大きくない場合には別のパーティションがライセンス管理対象かどうか検査するためにステップ703を実行する。
【0038】
ステップ708でライセンスが許可されていないと判断した場合を説明する。まずステップ707ではモニタ装置に“No OS License”と表示し、計算機システムのユーザにOSのライセンスがないためブート処理を停止することを通知する。この状態になれば、計算機システムをリセットし、補助記憶装置105へインストールする情報を修正した後再インストールすることになる。
【0039】
先にも述べたとおり、パーティション内容識別子管理情報117に登録されていない、即ち、フリーソフトなどライセンス管理していないOSについてはステップ703、704、705、706のループの作用としてライセンス有無の判断手続きはパスしてしまう。
【0040】
図8は、本発明における補助記憶装置読み込み手続きの一実施例を示すフローチャートである。まずステップ801ではパーティション管理情報読み込みフラグ107を取得する。
【0041】
次にステップ802ではステップ801で取得したパーティション管理情報読み込みフラグの値が1と等しいかどうか判断する。1と等しい場合には、パーティション管理情報がメモリに読み込まれていると判断してステップ803を実行する。1と等しくない場合には、パーティション管理情報がメモリに読み込まれていないと判断して、ステップ810を実行する。
【0042】
ステップ802でパーティション管理情報読み込みフラグの値が1と等しいと判断した場合を説明する。まずステップ803を実行する。ステップ803では一時変数Nの値を1に設定する。
【0043】
次にステップ804では、N番目のパーティションテーブル201(N)の開始位置204(N)と終了位置206(N)を取得する。次にステップ805では、補助記憶装置読み込み手続きの引数として渡されたブロック番号(読み出しアドレスに相当)が、ステップ804で取得した開始位置204(N)以上で、かつ終了位置206(N)以下であるか判断するために比較する。即ち、引数として渡されたブロック番号が対応するセクタがN番目のパーティションに含まれているかどうかを判断するために比較する。
【0044】
次にステップ806では、引数のブロック番号に対応するセクタがN番目のパーティションに含まれているかどうかを判断し、含まれている場合にはステップ807を実行する。含まれていない場合には、別のパーティションに含まれているかどうかを検査するためにステップ811を実行する。
【0045】
ステップ806で引数のブロック番号に対応するセクタがN番目のパーティションに含まれている場合を説明する。まずステップ807の1を実行し、パーティション内容識別子管理情報117のシステム名称301とシステム名称情報116が対応する列を見つける。ステップ807の2では、ステップ807の1で見つけた列に対応するパーティション内容識別子121を取得して一時変数Pに設定する。ステップ807の3では、ステップ807の1で見つけた列に対応するライセンスフラグ122を取得して一時変数Lに設定する。
【0046】
次にステップ808では、N番目のパーティションテーブル201(N)のパーティション内容識別子205(N)を取得して一時変数Pと比較する。次にステップ809では、ステップ808でパーティション内容識別子205(N)と一時変数Pを比較した結果、識別子が一致するかどうかを判断する。識別子が一致した場合にはライセンスが許可されているかどうかを判断するためステップ814を実行する。識別子が一致しない場合にはライセンス管理の対象ではないと判断して、補助記憶装置からデータを読み込むためにステップ810を実行する。
【0047】
ステップ809で識別子が一致すると判断した場合を説明する。まずステップ814ではステップ809で一致したパーティション識別子に対してライセンスが許可されているかどうかを判断するために、ライセンスフラグの値を格納した一時変数Lの値を調べる。一時変数Lの値が1の場合には、ライセンスがあると判断して補助記憶装置からデータを読み込むためにステップ810を実行する。ライセンスがないと判断した場合には補助記憶装置からデータを読み込む処理を中止するためにステップ813を実行する。
【0048】
ステップ814でライセンスがあると判断した場合、ステップ802でパーティション管理情報がメモリに読み込まれていないと判断した場合及びステップ809でライセンス管理の対象ではないと判断した場合を説明する。
【0049】
まずステップ810では補助記憶装置からブロック番号に対応するセクタのデータをメモリに読み込み、補助記憶装置読み込み手続きを呼び出し元の手続きに制御を移す。ステップ806で引数のブロック番号に対応するセクタがN番目のパーティションに含まれていない場合を説明する。
【0050】
まずステップ811では一時変数Nに1を加えた値を一時変数Nに設定する。次にステップ812では一時変数Nの値が4より大きい値かどうかを判断する。一時変数Nの値が4より大きい場合には、すべてのパーティションテーブルを検査したことを示すので、補助記憶装置からデータを読み込む処理を中止するためにステップ813を実行する。一時変数Nの値が4より大きくない場合には、別のパーティションテーブルを調べるためにステップ804を実行する。
【0051】
ステップ812で一時変数Nの値が4より大きい値と判断した場合、ステップ814で一時変数Lの値が1ではないと判断した場合を説明する。まずステップ813を実行する。ステップ813では、補助記憶装置読み込み手続き119を呼び出した手続きに、データの読み込みに失敗することを意味する値を返す。
【0052】
従来OSライセンスがない計算機にOSインストール済みの補助記憶装置を接続した場合等には、ライセンスのない計算機でOSが動作していたのに対し、以上のような本実施例によれば、パーティション内容識別子管理情報に、ライセンス管理対象OSのファイルシステムが使用するパーティション内容識別子及びライセンス有無を示すライセンスフラグを格納し、計算機システムが補助記憶装置からパーティション管理情報を読み込んでからOSブートするまでに該パーティション内容識別子管理情報に基づきライセンスの有無を判断することにより、ライセンスのない計算機でOSが動作することを防ぐことが出来る。
【0053】
また、複数のOSを一つの補助記憶装置にインストールして、計算機の使用用途によりOSを使い分けることが出来る。
【0054】
【発明の効果】
本発明によればライセンスのないOSを計算機で動作させることを防ぐことが出来る。
【図面の簡単な説明】
【図1】本発明の一実施例における計算機システムのブロック図である。
【図2】本発明の一実施例におけるパーティション管理情報の一例を示す図である。
【図3】本発明の一実施例におけるパーティション内容識別子管理情報の一例を示す図である。
【図4】本発明の一実施例におけるOSブート開始までの概略処理フローの一例を示すフローチャートである。
【図5】本発明の一実施例におけるシステム起動手続きの一例を示すフローチャートである。
【図6】本発明の一実施例におけるマスターブートストラップローダの一例を示すフローチャートである。
【図7】本発明の一実施例におけるライセンス判断手続き118の一例を示すフローチャートである。
【図8】本発明の一実施例における補助記憶装置読み込み手続きの一例を示すフローチャートである。
【符号の説明】
100 計算機システム
101 プロセッサ
102 メモリ
103 I/O装置
104 バス
105 補助記憶装置
106 不揮発性メモリ
107 パーティション管理情報読み込みフラグ
109 パーティション管理情報
110 マスターブートストラップローダ
111 パーティション
112 OSブート手続き
116 システム名称情報
117 パーティション内容識別子管理情報
118 ライセンス判断手続き
119 補助記憶装置読み込み手続き
120 システム起動手続き
121 パーティション内容識別子
122 ライセンスフラグ
201 パーティションテーブル
202 マジックナンバー
203 起動フラグ
204 開始位置
205 パーティション内容識別子
206 終了位置
207 サイズ
301 システム名称
402〜403 OSブート開始までの概略処理フローの処理ステップ
501〜504 システム起動手続きの処理ステップ
601〜609 マスターブートストラップローダの処理ステップ
701〜708 ライセンス判断手続きの処理ステップ
801〜814 補助記憶装置読み込み手続き119の処理ステップ

Claims (1)

  1. オペレーティングシステムがインストール可能な複数のパーティションを持ち、パーティションにインストールされたオペレーティングシステムを特定する第1の識別子を格納可能な補助記憶装置と、自計算機ハードウェアに固有な識別情報を記憶する記憶部と、計算機ハードウェアに固有な識別情報とライセンスの有無の管理の対象となるオペレーティングシステムを特定する第2の識別子と第2の識別子を持つオペレーティングシステムが前記固有な識別子を持つ計算機ハードウェアに関してライセンスがあるかどうかを示すライセンス情報とを記憶する管理情報部と、前記自計算機ハードウェアに固有な識別情報と前記管理情報部の前記計算機ハードウェアに固有な識別情報が一致し、且つ前記第1の識別子と前記第2の識別子が一致することを検出し、一致した第2の識別子に対応するライセンス情報がライセンス有りを示すかどうかを調べライセンス有りを示すとき対応するオペレーティングシステムを動作可能にする許可をする手続きとを備えることを特徴とする計算機。
JP2001384207A 2001-12-18 2001-12-18 ソフトウェアライセンス管理機構を備える計算機 Expired - Fee Related JP3869716B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001384207A JP3869716B2 (ja) 2001-12-18 2001-12-18 ソフトウェアライセンス管理機構を備える計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001384207A JP3869716B2 (ja) 2001-12-18 2001-12-18 ソフトウェアライセンス管理機構を備える計算機

Publications (2)

Publication Number Publication Date
JP2003186557A JP2003186557A (ja) 2003-07-04
JP3869716B2 true JP3869716B2 (ja) 2007-01-17

Family

ID=27593989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001384207A Expired - Fee Related JP3869716B2 (ja) 2001-12-18 2001-12-18 ソフトウェアライセンス管理機構を備える計算機

Country Status (1)

Country Link
JP (1) JP3869716B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004667A1 (en) * 2004-06-30 2006-01-05 Microsoft Corporation Systems and methods for collecting operating system license revenue using an emulated computing environment
JP4802527B2 (ja) * 2005-03-18 2011-10-26 株式会社日立製作所 計算機システム
US8554686B2 (en) * 2005-06-30 2013-10-08 Advanced Micro Devices, Inc. Anti-hack protection to restrict installation of operating systems and other software
JP5599557B2 (ja) * 2008-08-29 2014-10-01 株式会社リコー 情報処理装置、ライセンス判定方法、プログラム及び記録媒体
JP5332628B2 (ja) * 2009-01-14 2013-11-06 株式会社リコー ネットワーク装置、アプリケーション取得方法
CN108459822B (zh) 2017-07-28 2020-05-12 新华三信息技术有限公司 一种操作系统的安装方法和装置

Also Published As

Publication number Publication date
JP2003186557A (ja) 2003-07-04

Similar Documents

Publication Publication Date Title
US9501289B2 (en) Method of a UEFI firmware and computer system thereof
KR920008445B1 (ko) 퍼스널 컴퓨터 시스템에서 bios용 메모리를 감축시키기 위한 장치 및 방법
KR100729793B1 (ko) 다중 아키텍처를 위한 구성 요소 소프트웨어용 smm로더 및 실행 매커니즘
US5128995A (en) Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5787491A (en) Fast method and apparatus for creating a partition on a hard disk drive of a computer system and installing software into the new partition
EP0419005B1 (en) Loading method and apparatus for computer system
US6725178B2 (en) Use of hidden partitions in a storage device for storing BIOS extension files
US20150227427A1 (en) Restoring from a legacy os environment to a uefi pre-boot environment
US7454547B1 (en) Data exchange between a runtime environment and a computer firmware in a multi-processor computing system
US20030093579A1 (en) Method and system for concurrent handler execution in an SMI and PMI-based dispatch-execution framework
US6934956B1 (en) Method and apparatus for installing an operating system
US7395420B2 (en) Using protected/hidden region of a magnetic media under firmware control
JPH0391838A (ja) Bios保護装置及び方法、システム在中プログラム保護装置、並びにアクセス防止装置
US20030069999A1 (en) Method for providing a single preloaded software image with an ability to support multiple hardware configurations and multiple types of computer systems
US8539214B1 (en) Execution of a program module within both a PEI phase and a DXE phase of an EFI firmware
US7921247B1 (en) Sharing a dynamically located memory block between components executing in different processor modes in an extensible firmware interface environment
US20030120909A1 (en) Boot process
US8090937B2 (en) System and method for managing booting of an information handling system
US7484083B1 (en) Method, apparatus, and computer-readable medium for utilizing BIOS boot specification compliant devices within an extensible firmware interface environment
JP3869716B2 (ja) ソフトウェアライセンス管理機構を備える計算機
US9727390B1 (en) Invoking a firmware function
TWI779515B (zh) 用於判定有無篡改統一可擴展韌體介面(uefi)之方法及系統、及相關非暫時性電腦可讀媒體
US7873807B1 (en) Relocating a program module from NVRAM to RAM during the PEI phase of an EFI-compatible firmware
TWI294098B (en) Fast boot method and system
US11907071B2 (en) Storage failover protocol for secure and seamless extended firmware load

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060718

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060912

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060912

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061013

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees