JP2005122704A - プログラム - Google Patents

プログラム Download PDF

Info

Publication number
JP2005122704A
JP2005122704A JP2004252970A JP2004252970A JP2005122704A JP 2005122704 A JP2005122704 A JP 2005122704A JP 2004252970 A JP2004252970 A JP 2004252970A JP 2004252970 A JP2004252970 A JP 2004252970A JP 2005122704 A JP2005122704 A JP 2005122704A
Authority
JP
Japan
Prior art keywords
predetermined
information
program
execution environment
network
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.)
Pending
Application number
JP2004252970A
Other languages
English (en)
Other versions
JP2005122704A5 (ja
Inventor
Hisamichi Higuchi
久道 樋口
Yuji Terada
祐司 寺田
Yoshikazu Ando
嘉一 安藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004252970A priority Critical patent/JP2005122704A/ja
Priority to KR1020040075421A priority patent/KR100676807B1/ko
Priority to US10/945,424 priority patent/US20050114481A1/en
Priority to EP04255766A priority patent/EP1521175A3/en
Priority to CN200710180366A priority patent/CN100594478C/zh
Priority to EP09166430A priority patent/EP2124145A1/en
Priority to CNB2004100800338A priority patent/CN100356324C/zh
Priority to EP08164960A priority patent/EP2012232A3/en
Publication of JP2005122704A publication Critical patent/JP2005122704A/ja
Publication of JP2005122704A5 publication Critical patent/JP2005122704A5/ja
Priority to US12/111,427 priority patent/US20080244058A1/en
Priority to US12/111,399 priority patent/US20080243909A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 インストール候補のうち、あるコンピュータにとって自己のプログラム実行環境に適合しているもののみをダウンロードする。
【解決手段】 コンピュータに、前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークを介して所定サーバに送信するステップ、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、所定条件に従ってインストール候補を前記リストから選択するステップ、前記選択されたインストール候補をインストールするステップ、を実行する。
【選択図】図2

Description

本発明は、主として、ネットワークに接続されたコンピュータが前記ネットワークを介してインストール候補をダウンロードするに際してネットワーク上の通信量を低減させるための技術に関する。
従来、ネットワークに接続されたコンピュータが前記ネットワークを介してインストール候補をダウンロードする技術として、ユーザが個別にダウンロード対象を指定して、インストール候補の全てをダウンロードするものが知られている(例えば非特許文献1参照)。
http://windowsupdate.microsoft.com/
しかしながら、インストール候補の全てをダウンロードするようにすると、あるコンピュータにとって自己のプログラム実行環境に適合していないものまでもダウンロードすることになる。これは、無駄な通信が発生すること、および、これによりネットワーク上の通信量が増大することを意味する。本発明の課題は、あるコンピュータにとって自己のプログラム実行環境に適合しているもののみをダウンロードするための技術を提供することにある。
本発明は、上記課題を解決するためになされたものであり、ネットワークに接続されたコンピュータに、前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信するステップ、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、所定条件に従ってインストール候補を前記リストから選択するステップ、前記選択されたインストール候補をインストールするステップ、を実行させるためのプログラムとした。
本発明によれば、所定コンピュータのプログラム実行環境下でインストール可能なインストール候補を含むリストを所定サーバから受信し、このリストから選択されたインストール候補がインストールされることになる。従って、あるコンピュータにとって自己のプログラム実行環境に適合しているもののみをダウンロードすることできることから、従来のように、自己のプログラム実行環境に適合していないものまでもダウンロードすることによる無駄な通信の発生を防止できる。
また、上記プログラムにおいては、例えば、前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む。これは、実行環境特定情報の例示である。従って、本発明の実行環境特定情報は、これに限定されず、他のプログラム実行環境特定情報とすることができる。
また、上記プログラムにおいては、前記インストール候補はドライバプログラムである。これは、インストール候補の例示である。従って、本発明のインストール候補は、これに限定されず、他のインストール候補とすることができる。
また、上記プログラムにおいては、前記リストはインストール候補のダウンロード先アドレスを含み、前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる。このようにすれば、必要なインストール候補のみをダウンロードできることから、無駄な通信をより一層防止できる。
本発明は次のように特定することもできる。
コンピュータに、インストール候補に関する日付を取得するステップ、前記取得されたインストール候補に関する日付と所定日付とを比較するステップ、前記比較の結果に基づいてインストール候補をインストールするか否かを判定するステップ、前記インストールすると判定されたインストール候補をインストールするステップ、を実行させるためのプログラム。
このようにすれば、バージョン比較に基づきインストールするか否かを判定する場合に比べて、判定精度を高めることが可能となる。
また、本発明は次のように特定することもできる。
コンピュータに、所定情報をユーザに入力させるステップ、前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換するステップ、前記変換された不可視的文字列を、所定ファイルに付加するステップ、を実行させるためのプログラム。
このようにすれば、所定ファイル(Read Meファイル等の顧客閲覧用ドキュメント)を
閲覧した顧客に意味不明な記号等を見せないようにすることが可能となる。すなわち、ユーザに視認される今までのインフラでユーザが意識しない形態で所定情報を提供し、この情報をもとにプログラム・ユーザへドキュメントと全く別の情報を提供することが可能になる。
また、上記プログラムにおいては、例えば、所定ファイルを取得するステップ、前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出するステップ、前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換するステップ、をさらに備える。
このようにすれば、所定ファイル(Read Meファイル等の顧客閲覧用ドキュメント)を
閲覧した顧客に意味不明な記号等を見せないようにすることが可能となる。すなわち、ユーザに視認される今までのインフラでユーザが意識しない形態で所定情報を提供し、この情報をもとにプログラム・ユーザへドキュメントと全く別の情報を提供することが可能になる。
また、上記プログラムにおいては、例えば、前記所定情報は制御コードである。これは、所定情報の例示である。従って、本発明の所定情報は、これに限定されず、他の所定情報とすることができる。
また、本発明は次のように特定することができる。
ネットワークに接続されたコンピュータに、基準日からの経過日数が予め定めたしきい値を超えるごとに、前記ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定するステップ、前記設定されたタイミングで前記ネットワークを介してアクセスするステップ、を実行させるためのプログラム。
このようにすれば、複数のコンピュータから発生するアクセスを分散化させることが可能となる。
また、本発明は次のように特定することができる。
ネットワークに接続されたコンピュータに、当該プログラムの起動時刻を取得するステップ、前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスするステップ、を実行させるためのプログラム。
コンピュータに、(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算させるステップ、前記演算結果が示す時分秒に、ネットワークを介して所定サーバにアクセスするステップ、を実行させるためのプログラム。
このようにすれば、複数のコンピュータから近似時間に発生するアクセスを分散化させることが可能となる。
また、本発明は、装置の発明として次のように特定することができる。
ネットワークに接続された情報処理装置であって、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段、を備える情報処理装置。
また、本発明は、方法の発明として次のように特定することができる。
ネットワークに接続されたコンピュータにインストールする方法であって、前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信するステップ、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、所定条件に従ってインストール候補を前記リストから選択するステップ、前記選択されたインストール候補をインストールするステップ、を備えるインストール方法。
また、本発明はシステムの発明として次のように特定することができる。ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、前記情報処理装置は、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段、を備えるシステム。
ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、前記情報処理装置は、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段を備え、前記所定サーバは、前記情報処理装置から送信されるリクエストを受信する手段、前記リクエストに含まれる実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補に関する情報を、所
定データベースから検索する手段、前記検索結果を前記インストール候補を含むリストとして前記情報処理装置に送信する手段を備えるシステム。
ここでいう所定サーバは、例えば、上記各手段を備えた既存のサーバである。このようにすれば、ネットワークを利用したプログラム自動更新システムの構築および運用を、低コストで実現することが可能となる。すなわち、たとえば、コンピュータに対応したドライバ等の各種プログラム(インストール候補)をユーザが検索しダウンロードできるよう構築してあった既存のサーバを利用し、コンピュータ(ユーザパソコン)でネットワークを介してのプログラム更新が可能となる。
本発明によれば、あるコンピュータにとって自己のプログラム実行環境に適合しているもののみをダウンロードすることが可能となる。
以下、本発明の一実施形態について図面を参照しながら説明する。図1は、本実施形態におけるネットワークシステムの概略構成を説明するための図である。
図1に示すように、本実施形態におけるネットワークシステムは、インターネット等のネットワークNに接続された装置(クライアントともいう)100、およびサーバ200を包含する。装置100はパーソナルコンピュータ等の一般的な情報処理装置であり、コンピュータ本体、これに接続された、キーボードやマウス等の入力装置、ディスプレイ等の表示装置、ハードディスク装置等の記憶装置、およびネットワークNに接続された通信装置等を備えている。装置100には後述の各種処理を実現するための所定プログラム等がインストールされている。なお、図1には装置100が1台しか図示されていないが、複数台の装置100がネットワークNに接続されているものである。
サーバ200は、ワークステーション等の一般的な情報処理装置であり、コンピュータ本体、これに接続された、ハードディスク装置等の記憶装置、およびネットワークNに接続された通信装置等を備えている。キーボードやマウス等の入力装置、およびディスプレイ等の表示装置を備えていることもある。サーバ200には後述の各種処理を実現するための所定プログラム等がインストールされている。
次に、上記構成のネットワークシステムの動作について図面を参照しながら説明する。以下、装置100およびサーバ200における動作は、装置100およびサーバ200にそれぞれの所定プログラムが読み込まれて実行されることにより実現される。
(ドライバ更新処理)
図2は、ドライバ更新処理について説明するためのシーケンス図である。本シーケンスは、本発明の所定プログラムが実行され、それによる制御によって装置100が動作しているものとして説明する。
装置100は、これにインストールされている本発明の所定プログラムが実行された後に、所定イベント等を検出すると、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークNを介してサーバ200に送信する(S100)。所定イベントとしては、装置100に接続されている入力装置からの送信指示入力や予め設定されたタイミング到来等がある。また、実行環境特定情報としては、装置100の機種名を特定するための情報や装置100にインストールされているオペレーティングシステムを特定するための情報等がある。これらは単独であってもよいし、組み合わせであってもよい。
サーバ200は、装置100からのリクエストを受信し(S101)、このリクエスト
に含まれている実行環境特定情報により特定されるプログラム実行環境下でインストール可能なドライバ(本発明のインストール候補に相当)に関する情報を、所定データベースから検索する(S102)。所定データベースには実行環境特定情報(例えば機種名を特定するための情報およびオペレーティングシステムを特定するための情報)とドライバに関する情報(ドライバ名称等)との対応関係が格納されている。従って、サーバ200は、装置100からのリクエストに含まれている実行環境特定情報と所定データベースとを照合することで、その実行環境特定情報に対応するドライバに関する情報(ドライバ名称等)を検索すること(絞り込み)が可能となっている。このサーバ100はユーザ自身によるドライバ等のプログラムを検索可能に提供している既存のサーバである。本発明においてはこの既存サーバを利用することで、ネットワークを利用した装置100のドライバ等のプログラム更新を行うシステムを低コストで構築している。
ドライバに関する情報が検索されると、サーバ200は、ドライバリストを生成して、これをリクエスト元の装置100に送信する(S103)。ドライバリストは、装置100のプログラム実行環境下でインストール可能なドライバに関する情報を含むリストである。図2に示すように、ドライバリストに関する情報としては、ドライバ名称、ドライバダウンロード先URL(Uniform Resource Locator)、およびこのドライバに対応するReadMeファイルダウンロード先URL等がある。なお、ドライバとは、オペレーティングシ
ステムを拡張して様々な周辺機器等を使えるようにするためのプログラムのことである。また、Read Meファイルとは、これに対応するドライバに関する機能、適用可能な装置、
注意事項、改版履歴などの各種情報等をいわゆるテキストで記述したいわゆるテキストファイルである。
装置100は、サーバ200からのドライバリストを受信し(S104)、これを自己の内部メモリ等に格納する。装置100は、ドライバリストから、更新すべきドライバがあるか否かを、所定条件に従って判定する(S105)。すなわち、更新すべきドライバを選択する。これは、ドライバリスト中のドライバのうち装置100に既にインストールされているのと同じドライバについては再度インストールする必要がないことから、そのようなドライバを再度インストールしないようにするために行う処理である。
更新すべきドライバがあるか否かは各種の方法で判定することが考えられる。この判定方法の一例について図3を参照しながら説明する。図3は、装置100による判定処理を説明するためのフローチャートである。図4も図3とほぼ同内容となっている。
装置100は、サーバ200からのドライバリストを受信すると(S104)、そのリスト中のRead Meファイルダウンロード先URLにアクセスして、Read Meファイルをダウンロードする。なお、そのリスト中に複数のRead Meファイルダウンロード先URLが含
まれていれば、それぞれのURLにアクセスして、複数のRead Meファイルをダウンロー
ドする(S1040)。このダウンロードしたRead Meファイルは、後述のように、不可
視的文字列に変換(エンコード)された制御コード(そのRead Meファイルに対応するド
ライバの公開日等)を含む。
装置100は、その不可視的文字列に変換された制御コード(公開日等)を、後述のように、元の制御コード(公開日等)に変換(デコード)する(S1041)。そして、装置100は、そのデコードされた公開日と自己のレジストリ等に格納されているシステム構築日(マスタ作成日)とを比較し(S1042)、先ほどダウンロードしたRead Meフ
ァイルが新しいか否かを判定する(S1043)。このように、日付比較に基づき判定していることから、バージョン比較に基づき判定する場合に比べて、判定精度を高めることが可能となる。なぜならば、例えば、サーバ200にアップロードした最新バージョンのドライバにバグがあり、そのため旧バージョンのドライバを再度アップロードした場合、
バージョンで新旧を判定すると、装置100においてはサーバ200にアップロードされたドライバのバージョンが自身にインストールされているドライバのバージョンより旧版であるため、それをサーバ200からダウンロードしなくなる。本発明の手法はこのような場合にも対応できることで判定精度を高めている。
その結果、先ほどダウンロードしたRead Meファイルが新しくないと判定されると(S
1043:No)、そのRead Meファイルは更新対象外とされる(S1044)。一方、
そのRead Meファイルが新しいと判断されると(S1043:Yes)、装置100は、
自己に既にインストール処理済みのRead Meファイルがあるか否かを判定する(S104
5)。その結果、既にインストール処理済みのRead Meファイルがあると判定されると(
S1045:Yes)、装置100は、このRead Meファイルと先ほどダウンロードしたRead Meファイルの公開日(いずれも制御コードをデコードして得られたもの)とを比較し(S1046)、インストール候補(先ほどダウンロードしたRead Meファイル)の方が
新しいか否かを判定する(S1047)。
その結果、インストール候補の方が新しくないと判定されると(S1047:No)、そのインストール候補は更新対象外とされる(S1048)。一方、インストール候補の方が新しいと判定されると(S1047:Yes)、装置100は、先ほどダウンロードしたRead Meファイルからデコードされた制御コード中に特定の情報(File情報)が
あるか否かを判定する(S1049)。その結果、特定の情報があれば(S1049:Yes)、装置100は、既定のフォルダにその特定の情報と同じ情報があるか否かを判定する(S1050)。その結果、同じ情報があれば(S1050:Yes)、そのインストール候補は更新対象外とされる(S1051)。一方、同じ情報がなければ(S1052)、そのインストール候補は更新対象とされる(S1052)。装置100は、S1040でダウンロードした全てのRead Meファイルについて上記S1041〜S1052の
処理を実行する。以上のようにして、更新すべきドライバがあるか否かを判定すること、すなわち、更新すべきドライバを選択することが可能となっている。
更新すべきドライバが選択されると、装置100は、その更新対象とされた全てのインストール候補ドライバに関する情報(ドライバ名称等)を、例えば図5に示すように表示する(S106)。そして、装置100は、同図に示す更新ボタンがクリック等により押下された場合には(S107)、インストール候補ドライバダウンロード先URL(ドライバリストまたはRead Meファイルの制御コードに含まれている)にアクセスして(S1
08)、該当するドライバをダウンロードする(S109、S110)。そして、装置100は、そのダウンロードしたドライバをインストール(更新)する処理を実行する(S111)。
以上説明したように、本実施形態では、サーバ200は、装置100のプログラム実行環境下でインストール可能なドライバプログラムを絞り込んで、ドライバリストの形式で装置100に送信する。従って、このような絞り込みを行わずに、ドライバの全てを装置100に送信する場合に比べて、ネットワーク上の通信量を低減させることが可能となる。また、ドライバのインストールを自動化することが可能となる。
なお、本実施形態では、インストール候補がドライバであるように説明したが、本発明はこれに限定されない。例えば、インストール候補は更新プログラム(例えばバージョンアップされたアプリケーションプログラム等)であってもよい。
(不可視的文字列への変換処理)
次に、不可視的文字への変換処理について図面を参照しながら説明する。
この処理は、制御コード(本発明の所定情報に相当)を不可視的文字列に変換(エンコ
ード)してRead Meファイル(本発明の所定ファイルに相当)に付加又は記述しようとす

ものである。
(従来技術)
従来、パソコン安定稼動を達成するために、修正ソフトウエアを開発後、配布用サーバに登録している。その後は顧客が自発的に修正ソフトウエアを登録したサーバへ修正版が有るかどうか確認のためにアクセスする。そして登録されていれば、手動でダウンロード後、修正版をシステムへインストールする。
(発明が解決しようとする問題点)
しかしながら、従来の修正方法は、顧客に修正ソフトウェアの確認をさせ、それをダウンロードさせるというものであるため、顧客はパソコンのメンテナンスを常に意識する必要があり、また、修正ソフトウェアの配布用サーバに対し、自己のパソコンに適合した的確な情報の指示及び必要な修正ソフトウェアの取捨選択をしなければならなかった。これには、顧客がパソコンに関してある程度の知識を持っている必要があり、通常の顧客にとってはこれら作業をすることは困難であった。したがって、顧客に対するサポート情報が活用されず、顧客のサポート品質、満足度が低下する原因となっていた。
これらの問題を回避すべく、修正ソフトウェアの自動ダウンロード及びインストールを実現するシステムを構築するためには、上記既存の修正ソフトウェア配布用サーバとは別個に新規に専用のサーバを開発する必要があって非常に高額な開発コストがかかるという問題がある。また、双方のシステム(サーバ)をメンテナンスしなければならないというサポート側のメンテナンス作業負担が大きくなると共にメンテナンスコストも増大するという問題がある。さらには、顧客に自動配布するためには顧客からのユーザ登録などの操作が必要になり、結果、サポート範囲が限られサポート品質の低下、装置販売会社の評判低下をまねくことの他、顧客閲覧ドキュメントにコマンドを添付すると意味不明な記号を顧客に見せることになり顧客の混乱、サポート品質の低下をまねくという問題がある。
ここでは、制御コード(本発明の所定情報に相当)を不可視的文字列に変換(エンコード)して顧客閲覧用ドキュメントであるRead Meファイル(本発明の所定ファイルに相当
)に付加又は記述することにより、顧客閲覧用ドキュメントを閲覧した顧客に意味不明な記号等を見せないようにすることを目的とする。
(不可視的文字列へのエンコード処理)
次に、所定情報を不可視的文字列にエンコードする方法について図面を参照しながら説明する。図6は、所定情報を不可視的文字列にエンコードする方法について説明するためのフローチャートである。
このエンコードは、例えば所定コンピュータに、制御コード(本発明の所定情報に相当)を不可視的文字列にエンコードする機能、これを顧客閲覧用ドキュメント(ここではRead Meファイル)に付加する機能、を有する所定プログラムが読み込まれて実行されるこ
とにより実現される。
図7に示すように、制御コードとしては、ドライバ名、詳細説明・・・公開日等がある。エンコードに際して、所定コンピュータは、まず制御コードのヘッダ文字列を設定(または出力)する(S201)。ヘッダ文字列は対象言語によって異なる。例えば、日本語であればcts、英語であればcts_engの文字列を設定する(図7参照)。このヘッダ文字
列は、タブ(本発明の第1不可視的文字に相当)と半角スペース(本発明の第2不可視的文字に相当)に置き換えられ(エンコード)、例えば顧客閲覧用ドキュメント中の所定箇所に付加又は記述される。
ここで、エンコードの手順について説明する。所定コンピュータは、自動配布用コマンド等の制御コード(本発明の所定情報に相当)を、タブと半角スペースとを予め定められ
たルールに従って組み合わせた不可視的文字列に変換(エンコード)する。例えば、シフトJIS全角“A”は16進数で“8260”、二進数で“1000 0010 0110 0000”と表記される。従って、タブを二進数の“1”に対応させ、半角スペースを二進数の“0”に対応させるように予め取り決めておけば、シフトJIS全角“A”を不可視的文字列[Tab] [Space] [Space] [Space] [Space] [Space] [Tab] [Space] [Space] [Tab] [Tab] [Space] [Space] [Space] [Space] [Space]に変換(エンコード)する
ことが可能となる。
上記のようにして、ヘッダ文字列を不可視的文字列にエンコードすると、次に、所定コンピュータは、各制御コードの先頭にこれに対応する識別子を付加した後、それぞれの文字を、上記のようにして不可視的文字にエンコードする。例えば、ドライバ名の先頭にはこれに対応する識別子「DN:」(図6参照)が付加された後、それぞれの文字が不可視的
文字にエンコードされ、例えば顧客閲覧用ドキュメント中のヘッダ文字列の直後に付加又は記述される(S201)。このエンコードは、最後の制御コード(ここでは公開日)に達するまで繰り返される(S203)。
最後の制御コードに対するエンコードが完了すると、所定コンピュータは、制御コードのフッタ文字列を設定(出力)する(S204)。フッタ文字列としては全言語共通で例えば「end:」を設定する。このフッタ文字列は上記のようにエンコードされ、例えば顧客閲覧用ドキュメント中の最後の制御コード(ここでは公開日)の直後に付加又は記述される。
(不可視的文字列のデコード処理)
次に、不可視的文字列にエンコードされた制御コードを元の制御コードにデコードする方法について図面を参照しながら説明する。図8は、不可視的文字列にエンコードされた制御コードを元の制御コードにデコードする方法について説明するためのフローチャートである。
このデコードは、例えば装置100に、不可視的文字列にエンコードされた制御コードをデコードする機能を有する所定プログラムが読み込まれて実行されることにより実現される。
装置100は、所定ファイル(例えば、上記エンコードにより生成された不可視的文字列(および可視的文字列)を含むRead Meファイル)からエンコードされたヘッダ文字列
を検索する(S300)。検索できなければ、処理を終了する(S300:No)。一方、ヘッダ文字列を検索できた場合(S300:Yes)、所定プログラムはこの次の行を抽出してデコードする(S301)。このデコードは上記エンコードと逆の処理を行うことにより実現される。このデコードの結果がフッタ文字列である場合(S301:Yes)、デコードが全て完了したとして、所定プログラムはデコード処理を終了する。
一方、デコードの結果がフッタ文字列でない場合(S301:No)、先頭3文字がドライバ名識別子「DN:」であるか否かを判定し(S302)、ドライバ名識別子「DN:」であれば(S302:Yes)、4文字目以降をドライバ名として設定する(S303)。このデコードは、最後の制御コード(ここでは公開日)に達するまで繰り返される(S304〜S307)。そして、所定プログラムは、デコードの結果がフッタ文字列である場合、デコード処理を終了する(S301:Yes)。
以上説明したように、制御コードは、タブと半角スペースとを予め定められたルール(例えばタブが二進数の“1”、半角スペースが二進数の“0”)に従って組み合わせた不可視的文字列変換される。そして、この不可視的文字列がRead Meファイルに付加又は記
述されることにより、この不可視的文字列(および可視的文字列)を含むRead Meファイ
ルが生成される。
従って、顧客閲覧用ドキュメントを閲覧した顧客に意味不明な記号等を見せないようにすることが可能となる。すなわち、ユーザに視認される今までのインフラでユーザが意識しない形態で制御コードを提供し、この情報をもとにプログラム・ユーザへドキュメントと全く別の情報を提供することが可能になる。また、一つの顧客閲覧用ドキュメントに可視的文字列と不可視的文字列とを混在して記述できることから、制御コードを提供する側にとっても、顧客閲覧用ドキュメントに付加するだけで極めて容易にかつ簡易に制御コードを提供することが可能になる。また、顧客オペレーションに頼らず安定して顧客システムを最新の状態に保つことができる。また、日々システムの安定度が向上するため顧客が予期しないシステムのハングアップやフリーズを事前に阻止できることから、顧客データの消失を未然に防ぐことができる。さらに、常時システム販売メーカのサポートを身近に感じることができるためシステム使用時の安心感がある。
なお、本実施形態では、所定情報を不可視的情報にデコードしてこれを所定ファイルに可視的情報とともに付加または記述するように説明したが、本発明はこれに限定されない。例えば、所定情報をデコードすることなく可視的情報のまま、これを所定ファイルに可視的情報とともに記述(付加)するようにしてもよい。このようにすれば、所定情報(制御コード等)を提供する側にとっては、顧客閲覧用ドキュメントに付加するだけで所定情報(制御コード等)を提供することが可能になる。
(アクセス分散処理その1)
次に、装置(パソコン)の出荷累積増加によるメンテナンスシステムへの負荷の分散化手法についてその処理を図面を参照しながら説明する。図9および図10は、複数の装置100からのアクセスを分散させるための処理について説明するためのフローチャート等である。
各装置100は、メンテナンス履歴を確認して初回であるか又は非初回であるかを判定する(S400)。非初回であれば(S400:非初回)、経過日数=システム構築日(本発明の基準日に相当)−利用日を計算し、経過日数を算出する(S401)。一方、初回であれば(S400:初回)、メンテナンス履歴の初期化を実行した後(S402)、非初回と同様に、経過日数を算出する(S401)。
次に、装置100は、経過日数が予め定めたしきい値を超えるごとに、ネットワークNを介してサーバ200等へ次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅い(遅く到来する)タイミングを設定する(S403〜S411)。具体的には、経過日数<半月(しきい値)であれば(S403:Yes)、メンテナンス日(次回アクセスタイミング)を3日後に設定する(S404)。また、経過日数<2月(しきい値)であれば(S405:Yes)、メンテナンス日(次回アクセスタイミング)を1週間後に設定する(S406)。また、経過日数<3月(しきい値)であれば(S407:Yes)、メンテナンス日(次回アクセスタイミング)を2週間後に設定する(S408)。また、経過日数<半年(しきい値)であれば(S409:Yes)、メンテナンス日(次回アクセスタイミング)を1月後に設定する(S410)。さらに、経過日数が6月を超えるのであれば(S409:No)、メンテナンス日(次回アクセスタイミング)を2月後に設定する(S411)。装置100は、上記の設定されたタイミングでサーバ200(特定のURL)等にアクセスして、ドライバ等が存在すれば、これを自動ダウンロードする。
以上説明したように、上記アクセス分散処理によれば、経過日数が予め定めたしきい値を超えるごとに、ネットワークNを介してサーバ200等へ次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定することから、アクセス
を分散化することが可能となる。
(アクセス分散処理その2)
次に、アクセスを分散させるための処理について説明する。
この処理は、複数の装置100から近似時間に発生する自動問い合わせ要求(アクセス)を分散化させようとするものである。
(従来技術)
近年、一定期間に監視・問合せを行うシステムにより、状態監視・状態維持の自動化が要求されている。このとき、対象装置が問合せ先へ自動的に情報を問い合わせる要求(アクセス)が発生するが、特定日や特定時間を指定する手法では特定の時間に問合せが集中し、ピーク時と非ピーク時で大きな隔たりが発生していた。このため、特定の時間に集中する問い合わせ(アクセス)を分散化し、特定の時間に集中してかかる負荷を軽減する必要がある。
一定期間毎に情報を入手する必要がある場合において、ユーザが装置を利用開始するごとに(もしくはあらかじめ指定した特定の日時に)、情報の確認(アクセス)を行う場合、特定の日にちや時間帯に問い合わせ(アクセス)が集中することとなり、ゆえに特定期間だけが極端な高負荷に陥り、しばしば問い合わせ先が急激な負荷に耐えられずシステム停止に陥っていた。ところが一定期間毎に入手する情報は即時の緊急性を必要とする情報だけではないにも関わらず特定日や特定時間が指定されているため、不必要に特定日や特定時間に問い合わせが集中していた。
典型的な従来例を図11および図12に示す。装置100’にインストールされた自動監視プログラムと基幹システムを一例にすると、装置100’にインストールされた自動監視プログラムが開始した時の 基点a点にN台の装置にインストールされたプログラムが同じくa点に基幹システムへ一斉に問い合わせを行い、同じくa点に処理を要求する高負荷(N台からの応答・即時処理要求)となっていた。
(発明が解決しようとする問題点)
従って、即時の緊急性がない自動問い合わせの場合においても、即時処理要求を特定日や特定時間(a点)に行うという問題を生じていた。また、近似時間に自動問い合わせ要求
が多数発生した場合、問い合わせ先はその要求を同時に受ける必要があった。
ここでは、図13のようにN台がほぼ同じ日時a点、b点に案件が発生しても即時(a点、b点)には問い合わせを要求せず、所定の時間経過したa'点、b'点に問い合わせ要求(アクセス)を行い、問い合わせ要求(アクセス)を分散化することを目的とする。
次に、アクセスを分散させるための処理について図面を参照しながら説明する。図14は、アクセスを分散させるための処理について説明するためのフローチャートである。
装置100は、システムが起動されると(S500)、問い合わせ案件の発生時間を基点とし、基点から所定の時間経過した時間に問い合わせ先へ要求(アクセス)を行う。具体的には、装置100は、自動メンテナンスプログラムがロードされた時間(本発明のプログラムの起動時刻に相当)を取得し、これを基点とし、この基点の時間から保守システムへ最新情報の確認を要求する時間を分散化した要求時間として予約(設定)する(S501)。問い合わせ開始時間(分散化した要求時間)は次の式を演算することで得る。
(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基
点時間のミリ秒×係数2)秒+基点時間のミリ秒+Offset時間
この式によると、例えば、基点時間が8時40分00秒000ミリ秒、係数1が3、係数2が0.18、Offset時間が0時間0分0秒000ミリ秒であるとすれば、1分間に発
生する要求を約3時間へ分散化することが可能となる(分散化の度合い)。なお、係数1
を調整することで分散化の時間を調整可能となっている。図15および図16に、各基点時間とこの基点時間に基づいて演算される分散化した要求時間との関係を示す。
自動メンテナンスプログラムは予約された要求時間まで待機し(S502)、予約した要求時間に達したら(S503)保守システム(期間システム)へ保守情報を要求する(S503)。保守システムは、要求に基づき、装置100へ保守情報を提供する(S504、S505)。装置100は、その保守システムからの応答内容に従い所定処理を実行する(S506)。
以上説明したように、一定期間に監視・問合せを行う装置において、状態監視・状態維持の自動問い合わせ要求を近似の時間から期待する幅に分散することができる。よって、同時に発生する要求量を抑え、ピークトラフィック量を分散化し、インフラ開発・維持のためのコストを低く抑えることが可能となる。
なお、本実施形態では、システムが起動され自動メンテナンスプログラムがロードされた時間を基点とするように説明したが、本発明はこれに限定されない。例えば、そのような時間+α(例えば20分)の時間を基点とするようにしてもよいし、他の時間を基点とするようにしてもよい。
また、保守システムにおけるダウンロード不可時間帯(例えば午前3時から午前5時)にかかる場合は、その時間帯の時間を当初の予約した要求時間に加算することとしてもよい。このようにすれば、ダウンロード不可時間帯に保守システムにアクセスすることがなくなる。
本発明は、その精神または主要な特徴から逸脱することなく、他の様々な形で実施することができる。このため、上記の実施形態は、あらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。
本発明は次のように特定することもできる。
(付記)
(付記1) コンピュータに、前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークを介して所定サーバに送信するステップ、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、所定条件に従ってインストール候補を前記リストから選択するステップ、前記選択されたインストール候補をインストールするステップ、を実行させるためのプログラム。(1)
(付記2)前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、付記1に記載のプログラム。(2)
(付記3) 前記インストール候補はドライバプログラムである、付記1に記載のプログラム。(3)
(付記4) 前記リストはインストール候補のダウンロード先アドレスを含み、前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、付記1に記載のプログラム。(4)
(付記5) コンピュータに、インストール候補に関する日付を取得するステップ、前記取得されたインストール候補に関する日付と所定日付とを比較するステップ、前記比較の結果に基づいてインストール候補をインストールするか否かを判定するステップ、前記インストールすると判定されたインストール候補をインストールするステップ、を実行させるためのプログラム。(5)
(付記6) コンピュータに、所定情報をユーザに入力させるステップ、前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換するステップ、前記変換された不可視的文字列を、所定ファイルに付加するステップ、を実行させるためのプログラム。(6)
(付記7) コンピュータに、所定ファイルを取得するステップ、前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出するステップ、前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換するステップ、を実行させるためのプログラム。(7)
(付記8) 前記所定情報は制御コードである、付記6または7に記載のプログラム。(8)
(付記9) コンピュータに、基準日からの経過日数が予め定めたしきい値を超えるごとに、ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定するステップ、前記設定されたタイミングで前記ネットワークを介してアクセスするステップ、を実行させるためのプログラム。(9)
(付記10) コンピュータに、当該プログラムの起動時刻を取得するステップ、前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスするステップ、を実行させるためのプログラム。(10)
(付記11) 情報処理装置であって、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段、を備える情報処理装置。(12)
(付記12) 前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、付記11に記載の情報処理装置。(13)
(付記13) 前記インストール候補はドライバプログラムである、付記11に記載の情報処理装置。(14)
(付記14) 前記リストはインストール候補のダウンロード先アドレスを含み、
前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、付記11に記載の情報処理装置。(15)
(付記15) インストール候補に関する日付を取得する手段、前記取得されたインストール候補に関する日付と所定日付とを比較する手段、前記比較の結果に基づいてインストール候補をインストールするか否かを判定する手段、前記インストールすると判定されたインストール候補をインストールする手段、を備える情報処理装置。(16)
(付記16) 所定情報をユーザに入力させる手段、前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換する手段、前記変換された不可視的文字列を、所定ファイルに付加する手段、を備える情報処理装置。(17)
(付記17) 所定ファイルを取得する手段、前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出する手段、前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換する手段、を備える情報処理装置。(18)
(付記18) 前記所定情報は制御コードである、付記16または17に記載の情報処
理装置。(19)
(付記19) 情報処理装置であって、基準日からの経過日数が予め定めたしきい値を超えるごとに、ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定する手段、前記設定されたタイミングで前記ネットワークを介してアクセスする手段、を備える情報処理装置。(20)
(付記20) 情報処理装置であって、当該プログラムの起動時刻を取得する手段、前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスする手段、を備える情報処理装置。
(付記21) ネットワークに接続されたコンピュータにインストールする方法であって、前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信するステップ、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、所定条件に従ってインストール候補を前記リストから選択するステップ、前記選択されたインストール候補をインストールするステップ、を備えるインストール方法。
(付記22) 前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、付記21に記載のインストール方法。
(付記23) 前記インストール候補はドライバプログラムである、付記21に記載のインストール方法。
(付記24) 前記リストはインストール候補のダウンロード先アドレスを含み、
前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、付記21に記載のインストール方法。
(付記25) コンピュータに、インストール候補に関する日付を取得するステップ、前記取得されたインストール候補に関する日付と所定日付とを比較するステップ、前記比較の結果に基づいてインストール候補をインストールするか否かを判定するステップ、前記インストールすると判定されたインストール候補をインストールするステップ、を実行させるためのインストール方法。
(付記26) 所定情報をユーザに入力させるステップ、前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換するステップ、前記変換された不可視的文字列を、所定ファイルに付加するステップ、を備える不可視的文字処理方法。
(付記27) 所定ファイルを取得するステップ、前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出するステップ、前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換するステップ、をさらに実行させるための不可視的文字処理方法。
(付記28) 前記所定情報は制御コードである、付記26または27に記載の不可視的文字処理方法。
(付記29) コンピュータからのアクセスを分散させる方法であって、基準日からの経過日数が予め定めたしきい値を超えるごとに、ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定するステップ、前記設定されたタイミングで前記ネットワークを介してアクセスするステップ、を備え
るアクセス分散方法。
(付記30) コンピュータからのアクセスを分散させる方法であって、当該プログラムの起動時刻を取得するステップ、前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスするステップ、を備えるアクセス分散方法。
(付記31) ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、前記情報処理装置は、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段、を備えるシステム。
(付記32) 前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、付記31に記載のシステム。
(付記33) 前記インストール候補はドライバプログラムである、付記31に記載のシステム。
(付記34) 前記リストはインストール候補のダウンロード先アドレスを含み、前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、付記31に記載のシステム。
(付記35) インストール候補に関する日付を取得する手段、前記取得されたインストール候補に関する日付と所定日付とを比較する手段、前記比較の結果に基づいてインストール候補をインストールするか否かを判定する手段、前記インストールすると判定されたインストール候補をインストールする手段、を備えるシステム。
(付記36) ネットワークに接続された情報処理装置を包含するシステムであって、基準日からの経過日数が予め定めたしきい値を超えるごとに、前記ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定する手段、前記設定されたタイミングで前記ネットワークを介してアクセスする手段、を備えるシステム。
(付記37) ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、当該プログラムの起動時刻を取得する手段、前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスする手段、を備えるシステム。
(付記38) ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、前記情報処理装置は、自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、前記ネットワークを介して所定サーバに送信する手段、前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、所定条件に従ってインストール候補を前記リストから選択する手段、前記選択されたインストール候補をインストールする手段を備え、前記所定サーバは、前記情報処理装置から送信されるリクエストを受信する手段、前記リクエストに含まれる実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補に関
する情報を、所定データベースから検索する手段、前記検索結果を前記インストール候補を含むリストとして前記情報処理装置に送信する手段を備えるシステム。
(付記39) コンピュータに、(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算させるステップ、前記演算結果が示す時分秒に、ネットワークを介して所定サーバにアクセスするステップ、を実行させるためのプログラム。(11)
(付記40) 情報処理装置であって、(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算する手段、前記演算結果が示す時分秒に、前記ネットワークを介して所定サーバにアクセスする手段、を備える情報処理装置。
(付記41) コンピュータからのアクセスを分散させる方法であって、(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算させるステップ、前記演算結果が示す時分秒に、前記ネットワークを介して所定サーバにアクセスするステップ、を備えるアクセス分散方法。
(付記42) ネットワークに接続された、情報処理装置および所定サーバを包含するシステムであって、(式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算する手段、前記演算結果が示す時分秒に、前記ネットワークを介して前記所定サーバにアクセスする手段、を備えるシステム。
本発明によれば、あるコンピュータにとって自己のプログラム実行環境に適合しているもののみをダウンロードすることが可能となる。
本実施形態におけるネットワークシステムの概略構成を説明するための図である。 ドライバ更新処理について説明するためのシーケンス図である。 装置100による判定処理を説明するためのフローチャートである。 装置100による判定処理を説明するためのフローチャートである。 インストール候補ドライバの表示画面例である。 所定情報を不可視的文字列にエンコードする方法について説明するためのフローチャートである。 制御コード等の例示である。 不可視的文字列にエンコードされた制御コードを元の制御コードにデコードする方法について説明するためのフローチャートである。 複数の装置100からのアクセスを分散させるための処理について説明するためのフローチャートである。 複数の装置100からのアクセスを分散させるための処理について説明するための図である。 従来例を説明するための図である。 従来例を説明するための図である。 複数の装置100からのアクセスを分散させるための処理について説明するための図である。 複数の装置100からのアクセスを分散させるための処理について説明するためのフローチャートである。 各基点時間とこの基点時間に基づいて演算される分散化した要求時間との関係を説明するための図である。 各基点時間とこの基点時間に基づいて演算される分散化した要求時間との関係を説明するための図である。
符号の説明
100 装置
200 サーバ
N ネットワーク

Claims (20)

  1. コンピュータに、
    前記コンピュータのプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークを介して所定サーバに送信するステップ、
    前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信するステップ、
    所定条件に従ってインストール候補を前記リストから選択するステップ、
    前記選択されたインストール候補をインストールするステップ、
    を実行させるためのプログラム。
  2. 前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、請求項1に記載のプログラム。
  3. 前記インストール候補はドライバプログラムである、請求項1に記載のプログラム。
  4. 前記リストはインストール候補のダウンロード先アドレスを含み、
    前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、請求項1に記載のプログラム。
  5. コンピュータに、
    インストール候補に関する日付を取得するステップ、
    前記取得されたインストール候補に関する日付と所定日付とを比較するステップ、
    前記比較の結果に基づいてインストール候補をインストールするか否かを判定するステップ、
    前記インストールすると判定されたインストール候補をインストールするステップ、
    を実行させるためのプログラム。
  6. コンピュータに、
    所定情報をユーザに入力させるステップ、
    前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換するステップ、
    前記変換された不可視的文字列を、所定ファイルに付加するステップ、
    を実行させるためのプログラム。
  7. コンピュータに、
    所定ファイルを取得するステップ、
    前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出するステップ、
    前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換するステップ、
    を実行させるためのプログラム。
  8. 前記所定情報は制御コードである、請求項6または7に記載のプログラム。
  9. コンピュータに、
    基準日からの経過日数が予め定めたしきい値を超えるごとに、ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設
    定するステップ、
    前記設定されたタイミングで前記ネットワークを介してアクセスするステップ、
    を実行させるためのプログラム。
  10. コンピュータに、
    当該プログラムの起動時刻を取得するステップ、
    前記取得された起動時刻に応じて求めたタイミングにてネットワークを介して所定サーバにアクセスするステップ、
    を実行させるためのプログラム。
  11. コンピュータに、
    (式)基点時間の時+(基点時間の分+基点時間の秒×係数1)分+(基点時間の秒+基点時間のミリ秒×係数2)秒+基点時間のミリ秒+オフセット時間、を演算させるステップ、
    前記演算結果が示す時分秒に、ネットワークを介して所定サーバにアクセスするステップ、
    を実行させるためのプログラム。
  12. 情報処理装置であって、
    自己のプログラム実行環境を特定するための実行環境特定情報を含むリクエストを、ネットワークを介して所定サーバに送信する手段、
    前記実行環境特定情報により特定されるプログラム実行環境下でインストール可能なインストール候補を含むリストを、前記ネットワークを介して前記所定サーバから受信する手段、
    所定条件に従ってインストール候補を前記リストから選択する手段、
    前記選択されたインストール候補をインストールする手段、を備える情報処理装置。
  13. 前記実行環境特定情報は、前記コンピュータの機種名を特定する情報とそのコンピュータにインストールされているオペレーティングシステムを特定する情報を含む、請求項12に記載の情報処理装置。
  14. 前記インストール候補はドライバプログラムである、請求項12に記載の情報処理装置。
  15. 前記リストはインストール候補のダウンロード先アドレスを含み、
    前記選択されたインストール候補は、そのダウンロード先アドレスからダウンロードされてインストールされる、請求項12に記載の情報処理装置。
  16. インストール候補に関する日付を取得する手段、
    前記取得されたインストール候補に関する日付と所定日付とを比較する手段、
    前記比較の結果に基づいてインストール候補をインストールするか否かを判定する手段、
    前記インストールすると判定されたインストール候補をインストールする手段、
    を備える情報処理装置。
  17. 所定情報をユーザに入力させる手段、
    前記入力された所定情報を、第1不可視的文字と第2不可視的文字とを予め定められたルールに従って組み合わせた不可視的文字列に変換する手段、
    前記変換された不可視的文字列を、所定ファイルに付加する手段、
    を備える情報処理装置。
  18. 所定ファイルを取得する手段、
    前記取得された所定ファイルから第1不可視的文字と第2不可視的文字とを含む不可視的文字列を抽出する手段、
    前記抽出された不可視的文字列を予め定められたルールに従って元の所定情報に変換する手段、
    を備える情報処理装置。
  19. 前記所定情報は制御コードである、請求項17または18に記載の情報処理装置。
  20. 情報処理装置であって、
    基準日からの経過日数が予め定めたしきい値を超えるごとに、ネットワークを介して次回アクセスするタイミングとして前回アクセスしたタイミングよりも遅いタイミングを設定する手段、
    前記設定されたタイミングで前記ネットワークを介してアクセスする手段、
    を備える情報処理装置。
JP2004252970A 2003-09-22 2004-08-31 プログラム Pending JP2005122704A (ja)

Priority Applications (10)

Application Number Priority Date Filing Date Title
JP2004252970A JP2005122704A (ja) 2003-09-22 2004-08-31 プログラム
KR1020040075421A KR100676807B1 (ko) 2003-09-22 2004-09-21 프로그램을 기록한 컴퓨터 판독 가능 기록 매체
US10/945,424 US20050114481A1 (en) 2003-09-22 2004-09-21 Program
EP09166430A EP2124145A1 (en) 2003-09-22 2004-09-22 Program, apparatus and method for downloading and installing a program.
CN200710180366A CN100594478C (zh) 2003-09-22 2004-09-22 信息处理装置、访问分散方法及包含信息处理装置的系统
EP04255766A EP1521175A3 (en) 2003-09-22 2004-09-22 Program, apparatus and method for downloading and installing a program.
CNB2004100800338A CN100356324C (zh) 2003-09-22 2004-09-22 信息处理装置、安装方法和信息处理系统
EP08164960A EP2012232A3 (en) 2003-09-22 2004-09-22 Program, apparatus and method for downloading and installing a program
US12/111,427 US20080244058A1 (en) 2003-09-22 2008-04-29 Program
US12/111,399 US20080243909A1 (en) 2003-09-22 2008-04-29 Program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003330768 2003-09-22
JP2004252970A JP2005122704A (ja) 2003-09-22 2004-08-31 プログラム

Related Child Applications (4)

Application Number Title Priority Date Filing Date
JP2007211320A Division JP2008016048A (ja) 2003-09-22 2007-08-14 プログラム、情報処理装置、不可視的文字処理方法
JP2007211319A Division JP4654227B2 (ja) 2003-09-22 2007-08-14 プログラム、情報処理装置、インストール方法、システム
JP2007211322A Division JP4769775B2 (ja) 2003-09-22 2007-08-14 プログラム、情報処理装置、アクセス分散方法、システム
JP2007211321A Division JP2007323672A (ja) 2003-09-22 2007-08-14 プログラム、情報処理装置、アクセス分散方法、システム

Publications (2)

Publication Number Publication Date
JP2005122704A true JP2005122704A (ja) 2005-05-12
JP2005122704A5 JP2005122704A5 (ja) 2007-09-27

Family

ID=34315704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004252970A Pending JP2005122704A (ja) 2003-09-22 2004-08-31 プログラム

Country Status (5)

Country Link
US (3) US20050114481A1 (ja)
EP (3) EP2124145A1 (ja)
JP (1) JP2005122704A (ja)
KR (1) KR100676807B1 (ja)
CN (1) CN100356324C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012059180A (ja) * 2010-09-13 2012-03-22 Canon Inc 画像形成装置、ファームェアのアップデート方法、及び、プログラム
JP2014503926A (ja) * 2011-02-01 2014-02-13 サムスン エレクトロニクス カンパニー リミテッド デジタルデバイスにおけるアプリケーション自動インストール機能を提供するための装置及び方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007066092A (ja) * 2005-08-31 2007-03-15 Canon Inc 情報処理装置及びネットワークデバイス及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
CN1794734B (zh) * 2005-09-28 2010-04-14 华为技术有限公司 预先下载后续安装媒体对象的方法及终端设备
KR100755697B1 (ko) * 2005-11-09 2007-09-05 삼성전자주식회사 소프트웨어 설치 방법, 장치, 및 시스템
US8049611B2 (en) * 2007-06-13 2011-11-01 Eingot Llc Location mechanism for mobile device
WO2009001422A1 (ja) 2007-06-25 2008-12-31 Fujitsu Limited ファームウェア配布装置、プログラム及び方法
CA2773726C (en) * 2011-04-07 2017-06-27 Research In Motion Limited Device for distribution of content
US20140059249A1 (en) * 2011-11-14 2014-02-27 Panasonic Corporation Data conversion device, data conversion method, and program for data conversion

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132397A (ja) * 1998-10-22 2000-05-12 Hitachi Ltd クライアントとサーバおよびそれらを用いたソフトウェア配布システム
JP2001005671A (ja) * 1999-06-23 2001-01-12 Denso Corp データ送信システム
JP2003223326A (ja) * 2002-01-29 2003-08-08 Sony Corp 情報処理システム、情報処理装置および方法、プログラム

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4791556A (en) * 1984-08-29 1988-12-13 Vilkaitis John V Method for operating a computer which searches for operational symbols and executes functions corresponding to the operational symbols in response to user inputted signal
US5448731A (en) * 1990-11-20 1995-09-05 International Business Machines Corporation Method and apparatus for controlling the deferred execution of user requests in a data processing system
US6086706A (en) * 1993-12-20 2000-07-11 Lucent Technologies Inc. Document copying deterrent method
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
JPH0822424A (ja) * 1994-07-06 1996-01-23 Hitachi Ltd クライアント・サーバ・システムおよびその制御方法
US5659801A (en) * 1994-12-07 1997-08-19 Emc Corporation Method and apparatus for replacing resident peripheral device control microcode by download via an application program
US5845077A (en) * 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
JP3618917B2 (ja) * 1996-08-05 2005-02-09 株式会社東芝 情報収集方法
JP3875749B2 (ja) * 1996-08-08 2007-01-31 富士通株式会社 マルチプロセッサ装置及びそのメモリアクセス方法
US6006034A (en) * 1996-09-05 1999-12-21 Open Software Associates, Ltd. Systems and methods for automatic application version upgrading and maintenance
US6023585A (en) * 1997-05-02 2000-02-08 Webtv Networks, Inc. Automatically selecting and downloading device drivers from a server system to a client system that includes one or more devices
US6282709B1 (en) 1997-11-12 2001-08-28 Philips Electronics North America Corporation Software update manager
US5974454A (en) * 1997-11-14 1999-10-26 Microsoft Corporation Method and system for installing and updating program module components
US6094679A (en) * 1998-01-16 2000-07-25 Microsoft Corporation Distribution of software in a computer network environment
US7017156B1 (en) * 1998-08-28 2006-03-21 Oracle International Corporation System for computing an estimate execution time by totaling the time value base on an architecture or a software operating environment
US6493871B1 (en) * 1999-09-16 2002-12-10 Microsoft Corporation Method and system for downloading updates for software installation
JP3501354B2 (ja) * 1999-09-27 2004-03-02 日本電気株式会社 電話装置
US6966029B1 (en) * 1999-12-08 2005-11-15 Koninklijke Philips Electronics N.V. Script embedded in electronic documents as invisible encoding
DE60025901T2 (de) * 2000-01-11 2006-08-24 International Business Machines Corp. Verfahren und Vorrichtung zur Markierung eines Textdokuments mit einem Muster von zusätzlichen Leerstellen zum Zweck der Authentifizierung
US6769061B1 (en) 2000-01-19 2004-07-27 Koninklijke Philips Electronics N.V. Invisible encoding of meta-information
EP1170919A1 (en) * 2000-07-04 2002-01-09 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Method and device for improving the transmission efficiency in a communication system with a layered protocol stack
US20020174422A1 (en) * 2000-09-28 2002-11-21 The Regents Of The University Of California Software distribution system
US7246348B1 (en) * 2000-10-13 2007-07-17 International Business Machines Corp. Method and apparatus for using print jobs for downloading and executing printer controller code
KR20020031201A (ko) * 2000-10-19 2002-05-01 지성재 인터넷을 이용한 소프트웨어 원클릭 업그레이드방법
JP2002152279A (ja) * 2000-11-10 2002-05-24 Sony Corp ネットワーク接続制御装置及びその方法
JP3866506B2 (ja) 2000-12-04 2007-01-10 株式会社エヌ・ティ・ティ・ドコモ 電子メールの配信制御方法及びメールサーバ
KR100361191B1 (ko) * 2001-03-29 2002-11-23 삼성에스디에스 주식회사 소프트웨어를 업그레이드하기 위한 방법, 기록매체, 서버및 클라이언트 시스템
EP1396142B8 (en) * 2001-06-12 2005-06-08 International Business Machines Corporation Method of authenticating a plurality of files linked to a text document
CN1272955C (zh) * 2001-06-12 2006-08-30 国际商业机器公司 将数据嵌入和隐藏到软拷贝文本文档中的方法
US20030023770A1 (en) * 2001-07-26 2003-01-30 Barmettler James W. Automated software driver installation
TW560187B (en) * 2001-12-12 2003-11-01 Kinpo Elect Inc Method and device for displaying commercial on TV screen
US7580972B2 (en) * 2001-12-12 2009-08-25 Valve Corporation Method and system for controlling bandwidth on client and server
JP3454269B1 (ja) * 2002-03-26 2003-10-06 セイコーエプソン株式会社 電波修正時計および電波修正時計の制御方法
KR100490415B1 (ko) * 2002-11-07 2005-05-17 삼성전자주식회사 주변 기기 구동용 프로그램 갱신 방법 및 장치
US7231573B2 (en) * 2002-12-20 2007-06-12 Verigy Pte. Ltd. Delay management system
US7624393B2 (en) * 2003-09-18 2009-11-24 International Business Machines Corporation Computer application and methods for autonomic upgrade maintenance of computer hardware, operating systems and application software

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132397A (ja) * 1998-10-22 2000-05-12 Hitachi Ltd クライアントとサーバおよびそれらを用いたソフトウェア配布システム
JP2001005671A (ja) * 1999-06-23 2001-01-12 Denso Corp データ送信システム
JP2003223326A (ja) * 2002-01-29 2003-08-08 Sony Corp 情報処理システム、情報処理装置および方法、プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012059180A (ja) * 2010-09-13 2012-03-22 Canon Inc 画像形成装置、ファームェアのアップデート方法、及び、プログラム
JP2014503926A (ja) * 2011-02-01 2014-02-13 サムスン エレクトロニクス カンパニー リミテッド デジタルデバイスにおけるアプリケーション自動インストール機能を提供するための装置及び方法
US10055362B2 (en) 2011-02-01 2018-08-21 Samsung Electronics Co., Ltd. Apparatus and method for providing application auto-install function in digital device

Also Published As

Publication number Publication date
CN1601469A (zh) 2005-03-30
KR20050029701A (ko) 2005-03-28
US20080243909A1 (en) 2008-10-02
EP2012232A2 (en) 2009-01-07
US20080244058A1 (en) 2008-10-02
EP1521175A2 (en) 2005-04-06
EP2012232A3 (en) 2009-01-14
US20050114481A1 (en) 2005-05-26
EP2124145A1 (en) 2009-11-25
EP1521175A3 (en) 2005-08-31
CN100356324C (zh) 2007-12-19
KR100676807B1 (ko) 2007-02-02

Similar Documents

Publication Publication Date Title
US6711557B1 (en) Client-based background update monitoring
US9432481B2 (en) Method and apparatus for dynamically locating resources
US7047485B1 (en) Intelligent pre-caching on a network
US6141010A (en) Computer interface method and apparatus with targeted advertising
US20080244058A1 (en) Program
US8667480B1 (en) Automatically updating browser extensions, and applications thereof
EP1586989A2 (en) Automatic customization of printer drivers
US7403297B2 (en) Printing system that manages font resources using system independent resource references
KR101310218B1 (ko) 화상형성장치의 파일 통합 설치 방법 및 파일 통합 설치가 가능한 화상형성장치
US8046757B2 (en) Method for installing ActiveX control
US10878055B2 (en) Web server
US7171616B1 (en) Method, system and computer program product for keeping files current
JP4769775B2 (ja) プログラム、情報処理装置、アクセス分散方法、システム
JP4215710B2 (ja) クライアントへのデータ送信および更新データの実行制御方法
JP4654227B2 (ja) プログラム、情報処理装置、インストール方法、システム
US6980311B1 (en) Method and apparatus for modifying temporal addresses
JP2008016048A (ja) プログラム、情報処理装置、不可視的文字処理方法
US11907707B2 (en) Methods and systems for orchestrating software application variant configuration
JP2007323672A (ja) プログラム、情報処理装置、アクセス分散方法、システム
JP2005222453A (ja) パッチ管理システムおよびパッチ管理プログラム
CN100594478C (zh) 信息处理装置、访问分散方法及包含信息处理装置的系统
JP2006018721A (ja) 帳票定義管理システム、帳票定義開発システム、及び、帳票定義管理方法
JP5513429B2 (ja) コンテンツ提供プログラム
JP2005352583A (ja) コンテンツサーバプログラム
JP2002304263A (ja) ネットワーク印刷システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070814

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110111