| ログイン | ご入会 |
ADC連絡先
|
|
![]() |
ソフトウェア・アップデートのプロセスの概要Mac OS 9 の新機能の1つである“ソフトウェア・アップデート”を使うと、新しいシステムソフトウェアがリリースされたとき、インターネットを介してシステムソフトウェアをアップデートできるようになります。現在のところ、この機能は Apple システムソフトウェアのアップデートだけに限定されています。ただし、USB デバイスに対しては、認識できない USB デバイスに対応するドライバを検索するという派生機能が用意されています。つまり、ある USB デバイスが接続されていて、そのデバイスを認識できるドライバが存在しない場合、ソフトウェア・アップデートは、インターネット上で必要なドライバを検索するかどうかをユーザに問い合わせてくるということです。適切なドライバが登録されている場合は、そのソフトウェアパッケージが自動的にダウンロードされます。 USB デベロッパが製品に対応したソフトウェア・アップデートのサポートをインプリメントするためには、次に示す6つの重要なステップを踏む必要があります。
なお、現在のインプリメンテーションでサポートされているのは、ソフトシステム上で最適なドライバが見つからないときにインターネットを介してドライバモジュールを検索する機能だけです。現時点では、既存の USB ドライバソフトウェアをアップデートする機能や、“より適切な”USB ドライバソフトウェアを検索する機能はサポートされていません。また、ソフトウェア・アップデートでは、USB 以外のその他のタイプのサードパーティソフトウェアはサポートされていません。さらに、ソフトウェア・アップデートのプロセスは Mac OS 9.0 またはそれ以降でのみ使用できるという制限もあります。ソフトウェア・アップデートは、Mac OS 9.0 より前の Mac OS ではサポートされていません。 Mac OS 9.0.4 に含まれているソフトウェア・アップデート機能はさらに改良され、Disk Copy イメージも扱うことが出来ます。これによって、USB Software Locator はサードパーティのインストーラソフトウェアもご利用いただけます。 USB ソフトウェア・アップデートのプロセスの詳細ユーザが USB デバイスを Macintosh に接続するとき、Mac OS USB は ROM と「機能拡張」フォルダで、そのデバイスの特性と一致する DriverDescription レコードを持った 'ndrv' ドライバファイルを検索します。一致するドライバが見つからない場合、Mac OS 9.0 またはそれ以降では、次のようなアラートが表示されます。
このアラートと、以前の Mac OS のリリースで表示されていた類似のアラートとのメッセージ内容のちがいに注意してください。Mac OS 9 には、デバイスをサポートするドライバをインターネットで検索するためのオプションが用意されています。ユーザが“OK”ボタンをクリックすると、システムはインターネットにアクセスして、Apple の USB データベース Web ページを検索します。この Web ページにアクセスできると、Mac OS USB は、目的のデバイスとベンダ ID、製品 ID、デバイスクラス、およびサブクラスが一致する USB データベースのエントリを検索します。一致するエントリが検出されると、ユーザには次のようなアラートが表示されます。
![]() 上の例では、1つのソフトウェアパッケージだけが検出されています。目的のデバイスで使用可能なソフトウェアパッケージが複数存在することもあります。このような場合は、条件に一致するすべての選択肢がユーザに提示されます。ユーザは一覧表示されているソフトウェアパッケージのいずれかをクリックし、そのときに下部のウィンドウ枠に表示される関連情報を読んで、最適なソフトウェアを選択することができます。 ユーザは選択したソフトウェアをダウンロードすることができます。ユーザがソフトウェアのインストールを選択した場合、ソフトウェア・アップデートは USB データベースで指定されている URL を使って、そのソフトウェアをダウンロードします。ダウンロードされたファイルが Apple インストーラスクリプトである場合はスクリプトが自動的に実行されます。さらに Mac OS 9.0.4 では、ダウンロードされたファイルが Disk Copy イメージである場合、ディスクイメージはマウントされ、ディスクイメージの中にある Apple インストーラスクリプトが実行されます。ダウンロードされたファイルがその他のファイルの場合、ファイルはデベロッパが指定した位置(通常は“機能拡張”フォルダ)に保存されます。ファイルのダウンロードが終了すると、ソフトウェア・アップデートは、USB デバイスをサポートするドライバを再スキャンするように USB に指示します。なお、USB ドライバモジュールを照合するプロセスと並行して、それをアクティブ、またはインストールするために必要な他のプロセスも同時に進行し、結果的にコンピュータの再起動が必要になる場合もあります。 Apple の USB データベースは、Apple の USB Editor Web ページからパスワードを使ってアクセスできます。デベロッパは、自分のベンダ ID に基づいてデータベースレコードにアクセスできるように DTS への登録を行う必要があります。したがって、デバイスがデベロッパ固有のベンダ ID をインプリメントしていることが重要になります。 DTS への登録ソフトウェア・アップデートのプロセスは、デベロッパ・テクニカル・サポート宛てに次の情報を送信することから始めます。
これらの情報を入力すると、Apple の USB Editor Web ページにアクセスできるようになります。USB Editor Web ページは、デバイスに対応した USB ソフトウェアの検索に必要となるソフトウェア・アップデート情報を入力し、アップデートのプロセスが期待どおりに動作するかどうかを検証するためのステージングサーバです。登録が承認されると、USB Editor Web ページにアクセスして、自分のベンダ ID に関連づけられたデータベースエントリの追加、変更、または削除を行うことができます。セキュリティを維持するため、Apple では、デベロッパの Apple Connect ID とデベロッパがアクセスを要求したベンダ ID が関連づけられていることを要求します。ID が一致しない場合は、オフィシャルベンダ ID の所有者が USB Editor データベースにアクセスして、目的のソフトウェアにアクセスするための情報を入力する必要があります。 DTS では、現在多くのデベロッパが、異なるデベロッパに関連づけられた複数のベンダ ID を持つデバイスに対応した USB ソフトウェアを開発していることは承知しています。USB Editor Web ページの現在の設計では、それぞれのベンダ ID に関連づけられたすべてのレコードにアクセスできるのは、ただ 1 人のデベロッパであるという前提に基づいています。もし複数のアカウントで 1 つのベンダ ID にアクセスできるとすると、それらのアカウントはそのベンダ ID に関連づけられているすべてのレコードにアクセスできるようになってしまいます。このような理由から、Apple では、それぞれのベンダ ID レコードへのアクセスをその ID を割り当てられたデベロッパに制限しています。Apple では、将来、よりよいソリューションを提供できると考えています。 USB Editor Web ページの使い方USB Editor Web ページに入力した情報はステージングサーバに送信されます。入力した情報を使用できるのは、情報を入力したデベロッパ自身と、ソフトウェア・アップデートにプロダクションサーバではなくステージングサーバを使用させるための Software Locator Switch アプリケーションを持っている他のデベロッパだけです。これにより、ソフトウェア・アップデートを実施する前にそのプロセスをテストすることができます。 Apple USB Editor Web ページでは、アカウント名とパスワードを入力します。ベンダ ID に対応するデータベースページが表示されます。現在の Apple のエントリは次のように表示されます。
“Add Device”リンクを使用すると、新しいデバイスを定義できます。また、そのデバイスに対応するソフトウェアを定義するには、“Add Software Package”リンクを使用します。ここでは、アクティブなシステムソフトウェアに関連づけられている国別コード値に基づいてユーザに提供されるローカライズ版のソフトウェアを指定することもできます。“Add Description”リンクを使用すると、ユーザに対して表示されるソフトウェアパッケージの説明を設定できます。この説明は、ソフトウェア・アップデートによって表示されます。 Add Device“Add Device”リンクをクリックすると、次のような Web ページが表示されます。このページを使って、デバイスの特性を指定します。USB Software Locatorは、サポートされているデバイスを照合するためにこの特性を使用します ![]() Vendor フィールドの情報はシステムによって自動的に入力され、通常は会社名が表示されるはずです。デベロッパは、Device Name、「USB Device Subclass、および Product ID の各フィールドに情報を入力する必要があります。また、デバイスのデバイスクラスと一致するように USB Class ポップアップを設定する必要もあります。 Protocol および Version フィールドのラベルにはアスタリスク (*) が付いていることからもわかるように、これらのフィールドへの情報の入力は省略可能です。“Save”ボタンをクリックすると、指定した情報が Apple のデータベースに格納されます。情報を保存したくない場合は、“Cancel”ボタンをクリックします。 Device Nameの情報は、ソフトウェアパッケージとデバイスを関連づけるために“Add Software Package”ページの中で使用されます。Device Name の情報は、ソフトウェア・アップデートのプロセスでユーザに表示される製品名と同じものです。 目的のデバイスクラスがポップアップメニューに表示されない場合は、デベロッパ・テクニカル・サポートにその旨を通知し、必要なデバイスクラス名と値を指示してください。 Add Software Packageデバイスを定義してその情報を保存すると、デバイス Web ページに戻ります。ここで“Add Software Package”リンクをクリックすると、次のページが表示されます。
この Web ページに用意されているフィールドとポップアップのうち、特に Web ページに説明のないものは次のように使用します。 Device - このソフトウェアパッケージを使用するデバイスを選択します。あらかじめ定義されているデバイスの中からいずれか1つを選択できます。 Last Changed on - このレコードに対する最終更新日付を示します。 Last Moved to Production on - このレコードが最後にプロダクションサーバに移動された日付を示します。 Move To Production popup - レコードに加えた更新または変更をプロダクションソフトウェア・アップデートサーバに移動するかどうかを指定します。“Y”を選択すると、レコードはプロダクションサーバに移動されます。レコードに加えられた変更は1日に1度チェックされます。つまり、変更が有効になるまでに最大で24時間かかるということです。デバイスに対応したソフトウェア・アップデートのサポートを編集してテストしている間は、このポップアップを「N」に設定します。デバイスに対応する適切なソフトウェアパッケージが正しく識別され、それがソフトウェア・アップデートによって適切にインストールされることが確認できたところで、このポップアップの設定を“Y”に変更します。 Enclosed File Name - Web ページの説明が示すように、これはアーカイブを解除し、Binhex のデコードを行ったときのファイル名です。ファイルが 'kajr' というファイルタイプとクリエータを持つインストーラスクリプトの場合、ソフトウェア・アップデートはそのインストーラスクリプトを実行します。スクリプトを適切に動作させるため、スクリプトには関連するトームファイルをマージする必要があります。強制的にリブートすることなく USB シムをアクティブにする方法については、後述の“USB シムおよびその他のソフトウェアのインストール”のセクションを参照してください。 Mac OS 9.0.4 では、ソフトウェア・アップデートは BinHex 形式のファイルに加えて、MacBinary 形式のファイルもサポートしています。Mac OS 9.0.4 は Disk Copy イメージもサポートしています。Disk Copy イメージがダウンロードされた場合、ディスクイメージがマウントされ、ソフトウェア・アップデートはディスクイメージに含まれている Apple インストーラスクリプトを実行します。 Destination Folder popup - ソフトウェアパッケージが USB モジュールのみで構成される場合は、Destination Folder を“Extensions Folder”に設定します。これにより、モジュールは“機能拡張”フォルダにインストールされるようになります。ソフトウェアパッケージがインストーラスクリプトの場合は、デスティネーションフォルダとして “ItemsDeletedAtBootFolder”を選択します。こうすれば、インストールが完了し、システムが再起動してから、ファイルは自動的に削除されます。 Language popup - このポップアップには、ソフトウェアパッケージがサポートする言語を設定します。必要な場合は、ソフトウェアのローカライズ版を提供することができます。それぞれのソフトウェアパッケージは、このポップアップによって、ターゲットシステムに対応する国別コードに対応させられます。国別コードに対応するソフトウェアパッケージがなく、International English パッケージが用意されている場合は、「International English」という選択肢がユーザに提示されます。 Download URL - ソフトウェア・アップデートがソフトウェアパッケージをダウンロードするために使用する完全な URL を指定します。ソフトウェア・パッケージは、デベロッパがサポートする Web サーバで管理されることになります。したがって、デベロッパにはその URL が有効であることを保証する責任があります。 Product Requires USB Version - このソフトウェアパッケージが必要とする USB のバージョン。ソフトウェア・アップデートはこの値とユーザが実行している USB のバージョンを比較して、ユーザの環境がソフトウェアの必要とする USB のバージョンに満たない場合は、このソフトウェアパッケージを選択肢として表示しません。 ダウンロードされるパッケージが Disk Copy イメージの場合は、ここに 1.4.1 以降を入力して下さい。Disk Copy イメージは Mac OS 9.0.4 に含まれているソフトウェア・アップデート 1.1.1 以降でサポートされています。しかし、ソフトウェア・アップデートのバージョンを指定する仕組みは存在しないので、同じく Mac OS 9.0.4 の一部でもある USB 1.4.1 で見分ける必要があります。ただし、USB を内蔵しないコンピュータに USB PCI または USB CardBus カードを差した場合、Mac OS 9 でありながら、ユーザは USB Adapter Card ソフトウェアバージョン 1.4.1 以降をインストールする可能性があります。この場合、ユーザはソフトウェア・アップデート自体をバージョン 1.1.3 以降にアップデートしてからインストールできるようになります。 Binhexed File Name および Version のラベルにはアスタリスク (*) が付いていることからもわかるように、これらのフィールドへの情報の入力は省略可能です。 1つのデバイスに関連づけられた複数のソフトウェアパッケージが存在する可能性もあります。この場合、それぞれのソフトウェア・パッケージがユーザの“ソフトウェア・アップデート”ウィンドウに表示されます。ユーザがそれぞれの選択肢をクリックするたびに、その製品に関連する説明がユーザに示されます。
Add Description“Add Description”リンクを使用すると、ソフトウェアパッケージの説明を指定することができます。デベロッパが提供するそれぞれのソフトウェアパッケージに対する“Add Description”リンクが表示されます。少なくとも International English を使った説明だけは指定するようにしてください。
USB シムおよびその他のソフトウェアのインストール多くのソフトウェアパッケージには、インストールする必要のある複数のファイルが含まれます。この場合、デベロッパには2つの選択肢が用意されていますが、1つの選択肢は Mac OS 9.0.4 以降を必要とします。Mac OS 9 の場合、複数のファイルをインストールするには Apple インストーラスクリプトを作成する必要があります。 Mac OS 9.0.4 では、Aladdin Systems と MindVision Software を含む、サードパーティのインストーラソフトウェアが使用できます。これは Mac OS 9.0.4 が Disk Copy イメージもサポートするようになったために実現できます。Disk Copy イメージの場合、ディスクイメージは自動的にマウントされ、特殊な Apple インストーラスクリプトが実行されます。Apple インストーラスクリプトは次にインストーラアプリケーションを実行します。インストーラアプリケーションは必要なファイルやリソースをインストールすることができます。インストーラアプリケーションが終了した後、Apple インストーラスクリプトは USB シムファイルを使用可能な状態にしますので、多くの場合は再起動をする必要はありません。 サードパーティのインストーラを利用するスタンドアローンのインストーラアプリケーションを作成するためのサードパーティツールがいくつかありますが、Apple はこれらのツールを販売しているメーカに対して、特殊な Apple インストーラスクリプトを提供しています。この Apple インストーラスクリプトをインストーラアプリケーションと供に Disk Copy イメージに入れることによって、Mac OS 9.0.4 以降において、USB Software Locator がインストーラを実行できるようになります。インストーラアプリケーションの作成方法については、使用するインストーラソフトウェアの手順に従って下さい。最終成果物は BinHex または MacBinary 形式の Disk Copy イメージファイルです。このファイルを HTTP サーバに掲載します。
サードパーティのインストーラを使用する場合の注意事項サードパーティのインストーラを使用する場合は以下の事項にご注意下さい。
Apple インストーラスクリプトの実装複数のファイルをインストールする場合、Apple インストーラスクリプトを作成することができます。この場合、Macintosh Programmer's Workshop(MPW)を利用して、ScriptCheck を行う必要があります。Apple インストーラスクリプトの場合、“トーム”と呼ばれる、インストール用のファイルやリソースを含むファイルを作成します。次に Apple インストーラスクリプトを作成して、ScriptCheck を実行した後、MergeScriptMPWTool を使って、トームファイルとインストーラスクリプトをマージします。最後にファイルを BinHex 形式でエンコーディングして、HTTP サーバに掲載します。 インストーラスクリプトのサンプルは、Mac OS USB DDK の USB Software Locator Kit に用意されています。スクリプトは CodeWarrior で作成されていますが、MPW を使って ScriptCheck する必要があります。サンプルスクリプトは USB シムを扱うための Action Atom が含まれています。Action Atom はすべてのファイルとリソースがインストールされた後に実行されます。USB シムが必要ない場合は Action Atom を取り外すことができます。 USB シムを実装するソフトウェアパッケージは、Mac OS USB 1.4.1 以降に含まれている USBAddShimFromDisk と言う API を利用することができます。この API は Mac OS 1.3.5 以降にも含まれていますが、初期バージョンは正しく動作していませんでした。必ず Mac OS 1.4.1 以降でご使用下さい。 Apple インストーラスクリプトを使ってソフトウェアをインストールする場合は以下の点にご注意下さい。
ここでは、Apple インストーラまたはトームファイルについてあまり詳しくないデベロッパのために補足説明をしておきます。トームファイルには、Installer Engine によってインストールされる圧縮ファイルとリソースが含まれています。また、インストーラスクリプトには、次のような情報を記述する「アトム」と呼ばれる複数のリソースが含まれています。
インストーラスクリプトのソースはリソースソースファイルです。通常、インストーラスクリプトを構築するためには MPW Rez ツールを使用しますが、この目的で Metrowerks CodeWarrior IDE を使用することも可能です。インストーラスクリプトのソースとポストインストールアクションアトムのソースを含む USB モジュールおよび USB シムのサンプルは、Mac OS USB DDK に用意されています。 ここでは、USB シムを初期化するインストーラ action atom の使い方について説明しましたが、必要な場合は、その他のタスクを実行するアクションアトムのコードを書くこともできます。アクションアトムのインプリメントの詳細については、Apple Installer SDK を参照してください。インストールアクションは、ソフトウェア・アップデートによって実行されます。現時点で、Apple インストーラ以外のインストーラは、ソフトウェア・アップデートによってサポートされていません。 Apple インストーラスクリプトに関するヒント次に、ソフトウェア・アップデートとともに動作する Apple インストーラスクリプトを作成する上で役に立ついくつかのヒントを示します。
ライブアップデートのテストUSB ソフトウェア・アップデートのプロセスを処理するため、Apple では2つのサーバをセットアップしています。つまり、プロダクションサーバとステージングサーバの2つです。ソフトウェアパッケージエントリの定義またはアップデートを行うとき、アップデートプロセスが期待どおりに動作することが確認できるまでは、Move To Production を“N”に設定しておいてください。ソフトウェア・アップデートがステージングサーバにアクセスできるようにするには、Software Locator Switch アプリケーションを使って、USB ソフトウェアを検索するサーバをソフトウェア・アップデートに指示します。 Software Locator Switch アプリケーションは、Mac OS USB DDK に付属しています。ソフトウェアがステージングサーバから適切にダウンロードされることを確認できたときは、Move To Production の設定を“Y”に変更します。これにより、24時間以内に変更内容がプロダクションサーバに取り上げられます。 注意: テストの際はドライバの古いバージョンがダウンロードされることがあります。これはダウンロード先の URL Download URL を変更した場合に発生する問題で、USB Editor サーバで情報がキャッシュされていることが原因です。この問題が解決されるまでの回避策は、Download URL を変更する場合は、パッケージ項目を一度削除して、新たなパッケージ項目を作成して下さい。 ヒント集このような方法でソフトウェアをアップデートしようとするときには、以下の情報を参考にしてください。
要約Mac OS 9.0 とソフトウェア・アップデートは、USB デベロッパがデバイスをサポートするために利用できる新しいメカニズムを提供します。インターネットに接続でき、適切な USB ドライバソフトウェアが USB Editor Web ページに登録されていれば、ユーザは使用するデバイスをサポートする USB ドライバを簡単にダウンロードすることができます。 参考文献変更履歴
ダウンロード
|