問題タブ [uefi]

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 投票する
1 に答える
391 参照

linux - 自動 Debian UEFI インストール後の黒いコンソール

Debian 8.1 Jessie に基づいて、再現可能な自動ビルド環境を構築しようとしています。netinstall イメージに基づいてブート ISO イメージを作成し、自動インストール用に preseed.cfg ファイルを int に配置しました。BIOS と UEFI でブート可能にすることができ、完全に自動化された VMWare Workstation 11 に KDE Developer Debian をインストールできます。

BIOSとUEFIブートの両方で、Jenkinsを使用してdebianサーバーをインストールするためのサーバーisoイメージもあります。

ただし、インストール後、UEFI ブートを使用するバージョンでは、起動時に黒い画面が表示されます。

やみくもにログインし、「startx」で GUI を起動すると、インストールされた xfce デスクトップが表示されます。xfce を終了すると、コンソールが使用可能になり、表示されます。

Googleで見つけた推奨ブートパラメータ「nomodeset」と「vga = Linux」を試しましたが、役に立ちませんでした。

また、起動プロセスをデバッグして、どのコマンドが空白の画面につながるかを調べようとしましたが、起動時にプロセスを遅らせる適切な場所が見つからなかったので、メッセージがいつ消えるかを確認できます (quiet bootparameter が削除されました:-)

また、コンソールを無駄にリセットしようとしました。

コンソールが使用可能になるように、X と同じ「切り替え」を行うツールを教えてもらえますか?

ブートプロセスをデバッグして、どのコマンドがこの動作を引き起こしているかを調べる方法のヒントを教えてもらえますか?

これは後でヘッドレスサーバーシステムになるはずなので、Xをインストールしたくありません。

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

c - UEFI プロトコル ヘッダー ファイルが、1 つのプロトコル GUID に対してマクロと外部グローバル変数の両方を定義するのはなぜですか?

UEFI (Unified Extensible Firmware Interface) 開発は初めてです。また、EDK (EFI Development Kit) を使用しています。

新しいプロトコルを作成するには、プロトコルに GUID を与える必要があります。たとえば、BlockIOプロトコルのヘッダー ファイルでは、次のように表示されます。

(MdePkg\Include\BlockIo.h)

マクロ: ここに画像の説明を入力

グローバル変数:

ここに画像の説明を入力

そして、パッケージ宣言ファイルでMdePkg.dec:

ここに画像の説明を入力

プロトコルに GUID を与えるために、これらのうち 3 つが必要なのはなぜですか?

(この質問は C 言語の仕様に関係しているのかもしれませんので、cmacrosタグも追加します。)

0 投票する
0 に答える
1093 参照

filesystems - uefi は自分のマシンのボリュームにファイルを作成できません

efi 環境で動作するアプリケーションを作成しています (fe は EFI シェルから実行できます)。私の問題は、マシンのボリュームにファイルを作成できないことです。私はWMVareとntfsを備えた実際のマシン、さらにはhfs +を備えたMacでテストしました(http://efi.akeo.ie/からドライバーを取得しました)。すべてを読み取ることができますが、書き込もうとするとエラー コード 8 (EFI_WRITE_PROTECTED) が表示されます。

この保護を回避する方法はありますか? ファイルシステムの代わりにブロックデバイスで作業する必要があるかもしれません (実際にはやりたくありません)。

私のコード。ドライバーの読み込み (念のため、問題なく動作すると思います):

ファイルの読み書き:

<---------------- ちょっと調べてみたら ------------------------>

マシンのファイル システムでできることは、既存のファイルの内容を変更することだけであることが判明しました。何ヶ月もの研究なしでそれが唯一の可能な方法のようです. しかし、それでも、それを行うのは簡単ではありません:

「EFI_FILE *fileHandle」変数があり、事前に作成されたファイルを読み取ることができます。対応する LBA (または DiskIO のオフセット) を見つける方法は?

EFI ソース (AMI bios ソースから) を調べたところ、EFI_FILE 構造体の直後に非表示のデータが配置されていることがわかりました。

そして、彼らはそれを次のように操作します:

しかし、その構造体を読み込もうとすると、この構造体に正しいフィールド値があるようには見えません (fe FILE_HANDLE ポインターは無効です)。これを次にどうするかはわかりません。アイデアがない..

問題は、有効な EFI_FILE ポインタがある場合、対応する LBA (または diskIO のオフセット) を見つけるにはどうすればよいかということです。

0 投票する
5 に答える
10081 参照

assembly - UEFI はどのように機能しますか?

UEFIという用語に正確に出会ったとき、私はブートローダーについて勉強していました。UEFI に関するいくつかのことは理解できます。それでも、UEFI を使用したシステムはどのモード (Real、Protected、Long) で起動しますか? 通常のブートローダーが UEFI で動作しない場合、UEFI を処理する際のブートローダーの代替手段は何ですか? また、アセンブリ以外にプログラミングを作成する必要はありますか?

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

filesystems - EFI を使用してローカル ファイルシステムに書き込むことはできますか

OSがEFIアプリケーションを介して起動するとすぐに、このプロジェクトに取り組んでおり、ファイルをローカルファイルシステムに書き込みます。それが可能かどうかを知る必要があります。はいの場合は、親切に私を少し案内してください。ありがとう

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

shell - EFI アプリケーション シェル スクリプト

EFI シェル スクリプトを使用して .efi アプリケーションを実行したいのですが、可能ですか? はいの場合、startup.nsh スクリプトは、システムが起動するたびにこのスクリプトを実行しますか? ありがとう。

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

c++ - cサポートのみで実行するようにcppソースをコンパイルします

C/C++ コンパイルに関する問題について質問したいのですが、Cpp 言語に基づいて作成されたライブラリを再利用する必要があるプロジェクトがあります。しかし、C 言語 (UEFI) のみをサポートするプラットフォームで動作するプロジェクトでライブラリを再利用する必要があり
ます。

-そして、これらすべて (Wrap API、CppLibrary、マイ ソース プロジェクト) を C コンパイラでコンパイルした後 => ビルド アプリケーションは私のプラットフォーム (UEFI) で動作しますか? "

( Cpp ライブラリと My project ソースの両方を同じコンパイルでコンパイルする場合 (visual c 2013) のように仮定)

ありがとうございました

0 投票する
0 に答える
1017 参照

c++ - uEFI で文字列を unsigned short int C++ に変換する

文字列を unsigned short int に変換したい。

以下はコードです:

先に進む方法がわかりません。助けてください。ありがとう。