.
.
H氏からの手紙
January 1998 MACお宝鑑定団 
counter

SCSI Manager 4.3

この内容はNIFTYのZAK氏が発言された内容を本人の許可を得て転載しています。
この内容に関する質問等は一切お受けできませんので御了承下さい。


●質問:
Appleが新しく採用した、SCSI Manager4.3について教えて下さい。
●回答:
SCSI Manager 4.3は複数のバスをアクセスすることができます。しかも、同時に旧SCSI Managerの呼び出しも処理することができます。

勘の良い方はお気づきかと思いますが、じゃあ複数のバスがある場合、旧SCSIManagerの呼び出しを行うとどのデバイスにアクセスするのかというのが大きな問題になるかと思います。もしバス番号0のバスしかアクセスしないなんて事にしてしまうと、外付けのドライブに対しては一切アクセスできなくなってしまいます。

そのため、起動時にその時点で接続されているデバイスをバス番号の小さいほうから確認し、最初にアクセスできたデバイスが、旧SCSI Managerからアクセス可能なデバイスということにしています。

つまり、どうしても旧SCSI Managerからアクセスしなければならない場合、同一IDのデバイスをバス番号の小さい側に置いてはいけないのです。

また、よく起動時に電源やINITを抜いておいて、後からSCSI Probe等で強制的にドライバを読み込ませてマウントさせる方がいらっしゃいますが、そのデバイスがもつドライバが旧SCSI Managerをコールしている場合、すでに別のバスに同一IDのデバイスがいますと、ドライバのインストールの関係で厄介なことが発生し、最悪は爆弾が出ます。

これは旧SCSI Managerの時代、SCSIにアクセスするドライバの登録場所が固定的に扱われていたことに起因するトラブルです。

登録する場所の事をUnit Tableと言います。このテーブルにたくさんのドライバが登録され、ドライバ自身は登録した枠の番号で管理されています。

旧SCSI Manager時代、SCSI用デバイスドライバは、決められた枠に登録することになっていました。SCSI Manager4.3以降は、任意の場所に登録することが可能になりましたが、同時に旧来の場所にも登録することが可能です。

先ほどのシチュエーションの場合、すでに存在していた別バスのデバイス用のドライバが旧来の枠へ登録されていると、後から来た旧SCSI Manager用のドライバは旧来の枠しか知りませんので、行き場所を失ってしまいます。

ここでドライバを書いた奴の性格が出る(^_^;)のですが、行き場所がない場合にどれかのパターンをたどるようです。

●すでに埋っていることを検知して何事もなかったかのように去っていくタイプ
 →これがもっとも安全なパターンです。後から来たデバイスは使えませんが、大きな事故にはつながりません。
●前にいるドライバを排除し、自分が居座るタイプ
 →前に存在したドライバは排除されますので、前からあったデバイスが使えなくなります。また、場合によってはうまく排除できず、亡霊が作動して爆弾が出ることもあります。

●なにも考えずに、無理やり自分が居座るタイプ
 →前に存在したドライバは排除されますので、前からあったデバイスが使えなくなります。しかし、周辺はまだ以前のドライバがそこにいるものと思っていたりしますので、何かのはずみに以前のドライバのつもりでアクセスする奴がいると、その時点で爆弾が出ることが多いです。

という状態なんですね。

現時点では、ストレージに関してはまず4.3非対応のものは皆無といって良いと思いますが、スキャナやプリンタのドライバの場合はまだまだ旧SCSI Managerをコールするものも多いそうで、しばらくはトラブルが続くことになりそうです。

.
.
Copyright (C) 1998 Mac Treasure Tracing Club. All rights reserved.
Site design by BRESTO, Inc.