2006年11月25日

GET PERFORMANCE - Performance

GET PERFORMANCE コマンドの Performance (Type = 0x00)では、 CDB の Data Type に次のデータをセットします。

BYTE\bit 4 3 2 1 0
Data Type Tolerance Write Except

ここで、
Tolerance :10B = 10%, nominal; 20%, exceptions
       他は予約(デフォルト)
Write:0=読み取りの場合、1=書き込みの場合
Except:00B=標準、01B=全体、10B=例外のみ、11B=予約
です。ただ、00100B しか使ったことがありません。

Starting LBA は、Except=01B のときのみ意味があり、これ以上のLBAでの Performance を取得します。

Maximum Number of Descriptors には取得できるデータの最大数を指定します。
Except=00B の場合、
(確保したバッファのバイト数 - 8)/16
です。


Except=00B の場合、個々の Performance Descriptor は 16 バイトのブロックよりなり、それは次のとおりです。

BYTE\bit 7 6 5 4 3 2 1 0
0
(MSB)
 
Start LBA
 
(LSB)
1
2
3
4
(MSB)
Start Performance
 
[1,000 Bytes/second]
(LSB)
5
6
7
8
(MSB)
 
End LBA
 
(LSB)
9
10
11
12
(MSB)
End Performance
 
[1,000 Bytes/second]
(LSB)
13
14
15

CD の場合、全てのセクタは 2352 バイトとします。

一つの Performance Descriptor ブロックがその区間における読み書きの速さを示します。
Start LBA が区間の開始位置で、そこでの速さが Start Performance
End LBA が区間の終了位置で、そこでの速さが End Performance
です。
CLV の場合、Start Performance と End Performance は同じ値になります。

Except=10B の場合は、使ったことがありませんので、表のみ載せておきます。

BYTE\bit 7 6 5 4 3 2 1 0
0
(MSB)
 
LBA
 
(LSB)
1
2
3
4
(MSB)
Time
(LSB)
5
posted by 七癖 at 09:23| Comment(0) | TrackBack(0) | Multimedia Commands | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック