大量のデータをディスクに書き込むことができるUEFIアプリケーションを作成しています。 FAT-32のファイルサイズの制限とディレクトリあたりのファイル数などについてはわかっていますが、これは問題ではありません。私が書き込もうとしているメモリ領域は、メモリマップによって使用可能であるとマークされています。問題なく読み書きできますが、ある量のデータの後では、エラーメッセージなしでリブートします。 次の行は問題になります:EFI_FILE_HANDLE->約3.4GBを超える書き込みでクラッシュするGiB
uefi_call_wrapper(handle->Write, 3, handle, size, content);
ハンドルが数行先に初期化され、サイズは常に最大128MiBおよびコンテンツの読み取り/書き込みアクセス権を持つ有効なメモリ領域です。 私は既にEDK2を使ってWindows上の薄い部分を書き直して同じ問題を抱えています。
誰もがこれを手伝ってくれますか? あらかじめありがとうございました。
どのようなエラーが表示されますか? –
私は何のエラーも出ません.VMはリブートし、実際にはちょうどハングして何も起こりません。 – AlexRoot
'handle'のタイプは何ですか?書き込みは小さいサイズで呼び出すと機能しますか?それが失敗し始めるサイズは何ですか?再起動した後に再起動するのではなく、再起動する必要はありませんか? – prl