SF16
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
* SF16のページ
-メディアの総容量に関わらず、FAT12になるのを回避し、FAT16...
--FAT12はFATの管理がややこしいが、FAT16はやさしい。
-FATの位置やルートディレクトリの位置とエントリ数などが固...
-ディスクイメージをほんの少しいじるだけで、2GBまでのメデ...
-セクタがきれいにアラインされている。
--これによりメモリカードなどでは、''書き込み速度の向上や...
---ただしSF16_40じゃないと効果がないだろうと思われる。
-特にSF16_40がよく使われる(32KBクラスタ)。
--他にSF16_08(4KBクラスタ)とSF16_01(0.5KBクラスタ)が...
--もちろん20、10、04、02もあるが、そこまでサポートしなく...
-Windowsはフォーマットシグネチャを読まずに、容量だけでFAT...
--当然この場合でも空き容量は正しく表示される(総容量が最...
--imgtol0ではfコマンドでこの誤認回避のための処置を自動で...
---抑制するには、fコマンドではなくFコマンドを使う。
---その場合、たぶんWindowsでは誤認して読み書きできなくな...
--pcctol0ではfコマンドでこの誤認回避のための処置を自動で...
---抑制するには、fコマンドではなくeコマンドを使う。
---その場合、たぶんWindowsでは誤認して読み書きできなくな...
--SF16に正式対応したOSやツールでは、この処置がされていて...
-サポートできる容量範囲:
--星の数はおすすめ度数
--(Win対策しなくなる容量については、技術的な参考のために...
|フォーマット|クラスタサイズ|最大容量|Win対策しなくなる最...
|SF16_40 **|32KB|2GB|128.4MB|
|SF16_20|16KB|1GB|64.4MB|
|SF16_10|8KB|512MB|32.4MB|
|SF16_08 *|4KB|256MB|16.4MB|
|SF16_04|2KB|128MB|8.4MB|
|SF16_02|1KB|64MB|4.4MB|
|SF16_01 *|512B|32MB|2.4MB|
*** フォーマット
-SF16ではセクタ単位で考えるのではなく、すべてバイト単位で...
--純粋なFAT16として見た場合、データは512バイトセクタのと...
|0000_0000 - 0000_004F|80B|ブートセクタのうちのSF16情報領...
|0000_0050 - 0000_01EF|416B|ブートセクタのうちのOS用開放...
|0000_01F0 - 0000_01FF|16B|(ブートセクタのうちのKHBIOS用...
|0000_0200 - 0000_0203|4B|(Win95スキャンディスクバグ回避...
|0000_0204 - 0000_5FFF|23.5KB|リザーブ領域のうちのOS用開...
|0000_6000 - 0000_7FFF|8KB|(リザーブ領域のうちのKHBIOS用...
|0000_8000 - 0002_7FFF|128KB|FAT|
|0002_8000 - 0004_7FFF|128KB|FATのコピー|
|0004_8000 - 0004_FFFF|32KB|ルートディレクトリ|
|0005_0000 -||ファイル領域|
-ブートセクタのうちのSF16情報領域:
000 jj jj jj jj jj jj jj jj jj jj jj 00 02 ## 40 00
010 02 00 04 xx xx F8 00 01 ?? ?? ?? ?? ?? ?? ?? ??
020 xx xx xx xx ?? ?? 29 ?? ?? ?? ?? jj jj jj jj jj
030 jj jj jj jj jj jj 46 41 54 31 36 20 20 20 jj jj
040 53 46 31 36 xx xx 00 x0 xx xx xx xx 00 00 00 00
050 - これ以降は01F0まですべてjj -
1F0 kk kk kk kk kk kk kk kk kk kk kk kk kk kk jj jj
--jjは自由なバイト。いかなる用途に使ってもよい。ただし000...
--??はFAT16でインストール先のメディアに併せてKHBIOS系のツ...
--##はクラスタサイズ。
--kkはKHBIOS用のリザーブとしてもっともふさわしいところだ...
--xxはパーティション容量を表わすバイト。
---048-04B:ファイル領域の総クラスタ数 * ## + 0x280。
---044-045:アクセス可能な最大クラスタ番号 + 1(つまりフ...
---047のbit4-7:拡張フラグ(デフォルトは0000)
---020-023:048-04Bのコピー、もしくは、Windowsを騙すため...
---013-014:もし022-023が0000なら、ここは020-021のコピー...
--00B-00C:SF16では実際のセクタサイズに関係なく、常に0200...
-Win95スキャンディスクバグ回避用領域:
0200 F8 FF FF FF
-拡張フラグについて
--bit4:FATが特殊形式だと1。特殊形式とは、FATのチェインが...
--bit5:全てのファイルが連続したクラスタに配置されている...
//--bit6:既存ファイルのアロケートサイズ変更禁止がONだと1。
--bit6:リザーブ。
--bit7:リザーブ。
//---アロケートを0にすることももちろんできないので、ファ...
//--bit7:ディスクイメージ全体に対するライトプロテクトがO...
--これらの拡張フラグについてはサポートしなくても良いが、...
-(参考)
--KHBIOS関連ツールで初期化した場合では「MBR+リザーブ」で...
*** SF16 のメリット
-アラインに配慮されており、メモリカードの消去ブロックとの...
-MOやCD-ROMなどセクタ長が異なる場合でも、ディスクイメージ...
-ディスクイメージを少しいじるだけで容易に総容量を変更でき...
--たとえば128MB用のディスクイメージを1.5GBのパーティショ...
-可変長部分が少ないのでFAT16をフルサポートするよりも楽。
-FAT16をサポートしていれば、SF16も読み書きできる。
--SF16しかサポートしないプログラムからは、FAT16は扱いきれ...
--だから2GB以下のデバイスは、みんなSF16になっちゃえばいい...
---HDDやメモリカード類はもちろんのこと、CD-ROM、FD、MO、Z...
*** SF16 のデメリット
-FAT16のサブセットでしかないため、FAT16に存在する欠陥を全...
-FAT領域のサイズやルートディレクトリのサイズ、そしてたく...
--例えば1440KBのデバイスに対して、FAT16なら最大で1436KBを...
*** SF16 のドライバの例
-(例えばリアルモード用の簡易なやつ、しかもクラスタサイズ...
-4KB単位でデバイスを読み書きするような汎用的なドライバを...
--FDの場合はさらに下請けで1KB単位で読み書きするやつを作っ...
--こういう風にしておけばMOやCD-ROMなどでかいセクタのデバ...
--SF16だけを前提にしているうちは、絶対にアクセスは4KB単位...
-そのドライバで最初の4KBをバッファに読み、次の部分を確認...
--+0x40-+0x43の4バイトが 0x53 0x46 0x31 0x36 であることを...
--+0x0dの1バイトが0x40であることをチェック(SF16_40)。
--一致しなかったらこのフォーマットは分かりませんでしたエ...
-FATの部分のうちの最初の64KBを読み込む
-ルートディレクトリ32KBも読み込む
-後は0x8000以降のFATにアクセスしようとしたら、未サポート...
--こうすればリアルモードでもかなり簡単にFATをたどれる。
--1GBしか読み書きできないが、これだけの手間でここまででき...
-この例ではセクタサイズも32KB固定なので、クラスタ番号から...
--ここを可変にするとそれだけですぐにSF16_01~SF16_40の全...
-ということで[[OSASK]]でのサポートもやろうとおもえばすぐ...
*** おまけ FAT16 vs FAT12
-FAT12はFAT16に対して以下の点で優れている
--FAT用領域が25%削減できる。
-FAT12はFAT16に対して以下の点で劣っている
--アクセスがめんどう。
--4096クラスタ以上が扱えない。
-[[K]]が簡易柔軟フォーマットの提案に際してFAT12を廃し、FA...
--4096クラスタ制限は可変長ディスクイメージの実現にはあま...
--FAT12とFAT16のサポートをするくらいなら、FAT16のみにして...
--仮にちょうど4096クラスタの場合で、FAT16からFAT12に変更...
---SF16ではクラスタ位置のアラインなどが当然のように行われ...
---リザーブをわずか4KB増やすだけのために、FAT12とFAT16の...
* 対応状況
*** 凡例
|◎|Win対策しないでも正しく認識 (もちろんWin対策してもOK)|
|○|Win対策したものが正常動作|
|△|Win対策したら動作しないが、クラスタサイズを小さくしてW...
|×|何をやっても誤動作|
*** OS
|OS|ATA-HDD|PCカード|USB|備考|
|Windows 95 OSR2.0|○|○|-|◎ではないことも確認済み|
|Windows 98||○||◎ではないことも確認済み|
|Windows 98SE|||||
|Windows ME|||||
|Windows XP||○|○|◎ではないことも確認済み|
-PCカードというのは、PCカード接続のカードメモリ(PCカード...
-空欄は、試してないけどたぶんOK。
-ここにあがってない他のデバイスはためしてないけど多分駄目。
-----
-検証方法(他の方法でもよいが、確実な方法の例):
>''[事前準備]''
--OSASKのおすすめ版をダウンロードして、
prompt>imgtol e osaimgat.bin fdimage0.bin 1440
--とやって、FDIMAGE0.BINという1440KBのファイルを用意して...
--128MB未満のメディアに対してDOSなどで(DOSプロンプトは不...
prompt>pcctol f 20 sf16_40.eii (NOT DOS-PROMPT!!)
>''[実験 (実験したいOS上でやる)]''
--実験したいOS上で、このメディアのプロパティをみて、総容...
---これで総容量が1.99GBではなく、正しく表示されていればそ...
---この時点で空き容量がおかしければ、以下を試すまでもなく...
--このメディアに対して、実験したいOS上で、先ほどのFDIMAGE...
>''[確認 (OSASK上でやる)]''
--そして今度はOSASKを起動し、このメディアをPCカード接続(...
--これで正しく認識できれば、先の書き込みテストはうまくい...
--OSASKを使わずに、試したいOS上で読み書きできればそれでOK...
>''[補足]''
--[実験]は該当OS上でやる必要があるが、[事前準備]と[...
*** デジタルカメラ
|メーカ|機種名|対応|備考|
|Canon|[[PowerShot A200:http://web.canon.jp/Imaging/PSA20...
|FUJIFILM|[[DS-20:http://www.fujifilm.co.jp/products/ds20...
|KODAK|[[DC4800:http://wwwjp.kodak.com/JP/ja/digital/came...
//|KODAK|[[DC4800:http://wwwjp.kodak.com/JP/ja/digital/ca...
|OLYMPUS|[[C-200ZOOM:http://olympus-imaging.jp/jp/imsg/Li...
|RICOH|[[Caplio RR30:http://www.ricoh.co.jp/dc/product/rr...
|TOSHIBA|[[Allegretto M70:http://www.toshiba.co.jp/mobile...
*** PDAなど
|メーカ|機種名|対応|備考|
|SONY|[[PEG-N600C:http://www.sony.jp/products/Consumer/PE...
//-USBタイプアダプタ
//|メーカ|機種名|対応|
//|century|[[CMR-KING:http://www.century.co.jp/products/c...
* こめんと欄
-FAT12ってそんなに扱いにくいかなあ? そりゃFAT16の方が楽で...
-とりあえず僕の見解を「FAT12 vs FAT16」に書いておきました...
-FAT12/FAT16のスレッショルドは4096クラスタじゃないですよ;...
-000や001やff7以降が使えないから差し引いてね、っていう意...
-[[OSASKスレPart6だすYO! :http://pc.2ch.net/test/read.cgi...
-Win95OSR2.0では、FDをSF16フォーマットした後、一度ドライ...
-「 フォーマット」のところの拡張フラグについて追記。 -- [...
-%%SF16でWin2000が落ちる問題を確認しました。CFは16MB、SF1...
#comment
終了行:
* SF16のページ
-メディアの総容量に関わらず、FAT12になるのを回避し、FAT16...
--FAT12はFATの管理がややこしいが、FAT16はやさしい。
-FATの位置やルートディレクトリの位置とエントリ数などが固...
-ディスクイメージをほんの少しいじるだけで、2GBまでのメデ...
-セクタがきれいにアラインされている。
--これによりメモリカードなどでは、''書き込み速度の向上や...
---ただしSF16_40じゃないと効果がないだろうと思われる。
-特にSF16_40がよく使われる(32KBクラスタ)。
--他にSF16_08(4KBクラスタ)とSF16_01(0.5KBクラスタ)が...
--もちろん20、10、04、02もあるが、そこまでサポートしなく...
-Windowsはフォーマットシグネチャを読まずに、容量だけでFAT...
--当然この場合でも空き容量は正しく表示される(総容量が最...
--imgtol0ではfコマンドでこの誤認回避のための処置を自動で...
---抑制するには、fコマンドではなくFコマンドを使う。
---その場合、たぶんWindowsでは誤認して読み書きできなくな...
--pcctol0ではfコマンドでこの誤認回避のための処置を自動で...
---抑制するには、fコマンドではなくeコマンドを使う。
---その場合、たぶんWindowsでは誤認して読み書きできなくな...
--SF16に正式対応したOSやツールでは、この処置がされていて...
-サポートできる容量範囲:
--星の数はおすすめ度数
--(Win対策しなくなる容量については、技術的な参考のために...
|フォーマット|クラスタサイズ|最大容量|Win対策しなくなる最...
|SF16_40 **|32KB|2GB|128.4MB|
|SF16_20|16KB|1GB|64.4MB|
|SF16_10|8KB|512MB|32.4MB|
|SF16_08 *|4KB|256MB|16.4MB|
|SF16_04|2KB|128MB|8.4MB|
|SF16_02|1KB|64MB|4.4MB|
|SF16_01 *|512B|32MB|2.4MB|
*** フォーマット
-SF16ではセクタ単位で考えるのではなく、すべてバイト単位で...
--純粋なFAT16として見た場合、データは512バイトセクタのと...
|0000_0000 - 0000_004F|80B|ブートセクタのうちのSF16情報領...
|0000_0050 - 0000_01EF|416B|ブートセクタのうちのOS用開放...
|0000_01F0 - 0000_01FF|16B|(ブートセクタのうちのKHBIOS用...
|0000_0200 - 0000_0203|4B|(Win95スキャンディスクバグ回避...
|0000_0204 - 0000_5FFF|23.5KB|リザーブ領域のうちのOS用開...
|0000_6000 - 0000_7FFF|8KB|(リザーブ領域のうちのKHBIOS用...
|0000_8000 - 0002_7FFF|128KB|FAT|
|0002_8000 - 0004_7FFF|128KB|FATのコピー|
|0004_8000 - 0004_FFFF|32KB|ルートディレクトリ|
|0005_0000 -||ファイル領域|
-ブートセクタのうちのSF16情報領域:
000 jj jj jj jj jj jj jj jj jj jj jj 00 02 ## 40 00
010 02 00 04 xx xx F8 00 01 ?? ?? ?? ?? ?? ?? ?? ??
020 xx xx xx xx ?? ?? 29 ?? ?? ?? ?? jj jj jj jj jj
030 jj jj jj jj jj jj 46 41 54 31 36 20 20 20 jj jj
040 53 46 31 36 xx xx 00 x0 xx xx xx xx 00 00 00 00
050 - これ以降は01F0まですべてjj -
1F0 kk kk kk kk kk kk kk kk kk kk kk kk kk kk jj jj
--jjは自由なバイト。いかなる用途に使ってもよい。ただし000...
--??はFAT16でインストール先のメディアに併せてKHBIOS系のツ...
--##はクラスタサイズ。
--kkはKHBIOS用のリザーブとしてもっともふさわしいところだ...
--xxはパーティション容量を表わすバイト。
---048-04B:ファイル領域の総クラスタ数 * ## + 0x280。
---044-045:アクセス可能な最大クラスタ番号 + 1(つまりフ...
---047のbit4-7:拡張フラグ(デフォルトは0000)
---020-023:048-04Bのコピー、もしくは、Windowsを騙すため...
---013-014:もし022-023が0000なら、ここは020-021のコピー...
--00B-00C:SF16では実際のセクタサイズに関係なく、常に0200...
-Win95スキャンディスクバグ回避用領域:
0200 F8 FF FF FF
-拡張フラグについて
--bit4:FATが特殊形式だと1。特殊形式とは、FATのチェインが...
--bit5:全てのファイルが連続したクラスタに配置されている...
//--bit6:既存ファイルのアロケートサイズ変更禁止がONだと1。
--bit6:リザーブ。
--bit7:リザーブ。
//---アロケートを0にすることももちろんできないので、ファ...
//--bit7:ディスクイメージ全体に対するライトプロテクトがO...
--これらの拡張フラグについてはサポートしなくても良いが、...
-(参考)
--KHBIOS関連ツールで初期化した場合では「MBR+リザーブ」で...
*** SF16 のメリット
-アラインに配慮されており、メモリカードの消去ブロックとの...
-MOやCD-ROMなどセクタ長が異なる場合でも、ディスクイメージ...
-ディスクイメージを少しいじるだけで容易に総容量を変更でき...
--たとえば128MB用のディスクイメージを1.5GBのパーティショ...
-可変長部分が少ないのでFAT16をフルサポートするよりも楽。
-FAT16をサポートしていれば、SF16も読み書きできる。
--SF16しかサポートしないプログラムからは、FAT16は扱いきれ...
--だから2GB以下のデバイスは、みんなSF16になっちゃえばいい...
---HDDやメモリカード類はもちろんのこと、CD-ROM、FD、MO、Z...
*** SF16 のデメリット
-FAT16のサブセットでしかないため、FAT16に存在する欠陥を全...
-FAT領域のサイズやルートディレクトリのサイズ、そしてたく...
--例えば1440KBのデバイスに対して、FAT16なら最大で1436KBを...
*** SF16 のドライバの例
-(例えばリアルモード用の簡易なやつ、しかもクラスタサイズ...
-4KB単位でデバイスを読み書きするような汎用的なドライバを...
--FDの場合はさらに下請けで1KB単位で読み書きするやつを作っ...
--こういう風にしておけばMOやCD-ROMなどでかいセクタのデバ...
--SF16だけを前提にしているうちは、絶対にアクセスは4KB単位...
-そのドライバで最初の4KBをバッファに読み、次の部分を確認...
--+0x40-+0x43の4バイトが 0x53 0x46 0x31 0x36 であることを...
--+0x0dの1バイトが0x40であることをチェック(SF16_40)。
--一致しなかったらこのフォーマットは分かりませんでしたエ...
-FATの部分のうちの最初の64KBを読み込む
-ルートディレクトリ32KBも読み込む
-後は0x8000以降のFATにアクセスしようとしたら、未サポート...
--こうすればリアルモードでもかなり簡単にFATをたどれる。
--1GBしか読み書きできないが、これだけの手間でここまででき...
-この例ではセクタサイズも32KB固定なので、クラスタ番号から...
--ここを可変にするとそれだけですぐにSF16_01~SF16_40の全...
-ということで[[OSASK]]でのサポートもやろうとおもえばすぐ...
*** おまけ FAT16 vs FAT12
-FAT12はFAT16に対して以下の点で優れている
--FAT用領域が25%削減できる。
-FAT12はFAT16に対して以下の点で劣っている
--アクセスがめんどう。
--4096クラスタ以上が扱えない。
-[[K]]が簡易柔軟フォーマットの提案に際してFAT12を廃し、FA...
--4096クラスタ制限は可変長ディスクイメージの実現にはあま...
--FAT12とFAT16のサポートをするくらいなら、FAT16のみにして...
--仮にちょうど4096クラスタの場合で、FAT16からFAT12に変更...
---SF16ではクラスタ位置のアラインなどが当然のように行われ...
---リザーブをわずか4KB増やすだけのために、FAT12とFAT16の...
* 対応状況
*** 凡例
|◎|Win対策しないでも正しく認識 (もちろんWin対策してもOK)|
|○|Win対策したものが正常動作|
|△|Win対策したら動作しないが、クラスタサイズを小さくしてW...
|×|何をやっても誤動作|
*** OS
|OS|ATA-HDD|PCカード|USB|備考|
|Windows 95 OSR2.0|○|○|-|◎ではないことも確認済み|
|Windows 98||○||◎ではないことも確認済み|
|Windows 98SE|||||
|Windows ME|||||
|Windows XP||○|○|◎ではないことも確認済み|
-PCカードというのは、PCカード接続のカードメモリ(PCカード...
-空欄は、試してないけどたぶんOK。
-ここにあがってない他のデバイスはためしてないけど多分駄目。
-----
-検証方法(他の方法でもよいが、確実な方法の例):
>''[事前準備]''
--OSASKのおすすめ版をダウンロードして、
prompt>imgtol e osaimgat.bin fdimage0.bin 1440
--とやって、FDIMAGE0.BINという1440KBのファイルを用意して...
--128MB未満のメディアに対してDOSなどで(DOSプロンプトは不...
prompt>pcctol f 20 sf16_40.eii (NOT DOS-PROMPT!!)
>''[実験 (実験したいOS上でやる)]''
--実験したいOS上で、このメディアのプロパティをみて、総容...
---これで総容量が1.99GBではなく、正しく表示されていればそ...
---この時点で空き容量がおかしければ、以下を試すまでもなく...
--このメディアに対して、実験したいOS上で、先ほどのFDIMAGE...
>''[確認 (OSASK上でやる)]''
--そして今度はOSASKを起動し、このメディアをPCカード接続(...
--これで正しく認識できれば、先の書き込みテストはうまくい...
--OSASKを使わずに、試したいOS上で読み書きできればそれでOK...
>''[補足]''
--[実験]は該当OS上でやる必要があるが、[事前準備]と[...
*** デジタルカメラ
|メーカ|機種名|対応|備考|
|Canon|[[PowerShot A200:http://web.canon.jp/Imaging/PSA20...
|FUJIFILM|[[DS-20:http://www.fujifilm.co.jp/products/ds20...
|KODAK|[[DC4800:http://wwwjp.kodak.com/JP/ja/digital/came...
//|KODAK|[[DC4800:http://wwwjp.kodak.com/JP/ja/digital/ca...
|OLYMPUS|[[C-200ZOOM:http://olympus-imaging.jp/jp/imsg/Li...
|RICOH|[[Caplio RR30:http://www.ricoh.co.jp/dc/product/rr...
|TOSHIBA|[[Allegretto M70:http://www.toshiba.co.jp/mobile...
*** PDAなど
|メーカ|機種名|対応|備考|
|SONY|[[PEG-N600C:http://www.sony.jp/products/Consumer/PE...
//-USBタイプアダプタ
//|メーカ|機種名|対応|
//|century|[[CMR-KING:http://www.century.co.jp/products/c...
* こめんと欄
-FAT12ってそんなに扱いにくいかなあ? そりゃFAT16の方が楽で...
-とりあえず僕の見解を「FAT12 vs FAT16」に書いておきました...
-FAT12/FAT16のスレッショルドは4096クラスタじゃないですよ;...
-000や001やff7以降が使えないから差し引いてね、っていう意...
-[[OSASKスレPart6だすYO! :http://pc.2ch.net/test/read.cgi...
-Win95OSR2.0では、FDをSF16フォーマットした後、一度ドライ...
-「 フォーマット」のところの拡張フラグについて追記。 -- [...
-%%SF16でWin2000が落ちる問題を確認しました。CFは16MB、SF1...
#comment
ページ名: