問題タブ [fat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2616 参照

assembly - フロッピーディスクから読み取るために、(FAT12 ファイルシステムの) FAT テーブルに格納されているクラスター番号を変換する

FAT12 ファイルシステム用の 2 段階ブートローダーを作成しています。ブートローダーのステージ 1 は、FAT12 ファイルシステムにあるフロッピー ディスクからステージ 2 をロードします。現在、(FAT テーブルから取得した) クラスタ番号を、トラック、ヘッド、およびセクタ番号を含む形式に変換する際に問題が発生しています。ブートローダーを作成するためのチュートリアルhttp://www.brokenthorn.com/Resources/OSDev6.htmlに従っていました。

ここでの私の混乱は、チュートリアルでは、FAT から取得したクラスター番号が最初に LBA (リニア ブロック アドレス) 形式に変換され、次にセクターをメモリに読み込む前に CHS (シリンダー ヘッド セクター) 形式に変換されることです。

クラスター番号を直接 CHS 形式に変換できないのはなぜですか?? FAT テーブルはクラスタ番号を線形に格納しませんか?? ここで何が欠けているのか正確に知りたいですか??

チュートリアルで使用されているブートローダーのソース コードへのリンクは、リンクのページの最後にありますhttp://www.brokenthorn.com/Resources/OSDev6.html

0 投票する
3 に答える
4117 参照

c - Cでリトルエンディアンの16進数をビッグエンディアンの10進数に変換する

FAT12をベースにしたシンプルなファイルシステムを理解して実装しようとしています。私は現在、次のコードスニペットを見ていて、それが私を夢中にさせています。

};

これまで読んだことから、FAT12形式は整数をリトルエンディアン形式で格納します。上記のコードは、ブートセクターの19バイト目と20バイト目に格納されているファイルシステムのサイズを取得しています。

しかし、なぜかわかりません

作します。ビット単位の<<8は、2番目のバイトを10進数に変換していますか?またはビッグエンディアン形式に?なぜそれは最初のバイトではなく、2番目のバイトに対してのみ実行するのですか?

問題のバイトは[リトルエンディアン形式]です:

40 0B

最初に順序を切り替えて手動で変換してみました

0B 40

次に、16進数から10進数に変換すると、正しい出力が得られます。最初のバイトを2番目のバイトのビット単位のシフトに追加しても同じことがどのように行われるのかわかりません。ありがとう

0 投票する
2 に答える
1620 参照

c++ - FAT ファイル システムのクラスタ、ページ、セクタ

FAT ファイルシステムの「クラスタ」の概念を理解しようとしています。具体的には、クラスター、ブロック、セクター間の関係は何ですか。

私の理解は次のとおりです。1) ブロック/ページは 4096 バイトで、ブロックはセクターに分割されます。2) セクターは、ディスク上のストレージの最小単位です。3) 当社が取得し、ブロック/ページに保存したデータ。4) ディスクにはトラックがあり、各トラックにはブロック/ページがあります。

私の理解は正しいですか?クラスターがこれらすべてのどこに収まるかはわかりません。

誰かが私の理解を明確にすることができますか

0 投票する
1 に答える
92 参照

filesystems - ファイルを「使用中」としてマークする

「MP3 プレーヤー」のような USB デバイスを開発しています。USB ホスト (Windows) からは大容量記憶装置として認識されます。デバイスが接続されている間、現在の曲を再生し続けられるようにしたいと思います。理想的な世界では、ユーザーはファイル エクスプローラーを使用してすべての mp3 ファイルを削除できる必要がありますが、現在再生中の mp3 ファイルは Windows によって "使用中" と見なされます。

ファイルシステムは FAT です。デバイス上のファイルの読み取りには FatFS を使用します。

FAT はそのようなこと (ファイルを「使用中」としてマークすること) を許可しますか? もっと賢いアイデアはありますか?

0 投票する
1 に答える
428 参照

groovy - Gradle を使用して FAT ソースのみの jar を作成する

Gradle を使用して、依存関係を含む jar (FAT jar) を作成する必要があります。

キャッチ: jar には、ストレートな .groovy ファイルのみを含める必要があります... .class ファイルは必要ありません。

Gradleクックブックからそれを行う方法を見てきました: http://docs.codehaus.org/display/GRADLE/Cookbook#Cookbook-Creatingafatjar

One-Jar プラグイン: https://github.com/rholder/gradle-one-jar

ただし、どちらの方法でも、実際のソース .groovy ファイルではなく、コンパイルされた .class ファイルを使用する必要がありました。また、この jar を実行可能にする必要はありません。.groovy スクリプトを参照できるようにし、それらの依存関係が既に存在するようにする必要があるだけです。

これは可能ですか?