問題タブ [bios]
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.
bios - インターネットに接続するBIOSプログラムの書き方は?
BIOSにインストールされるラップトップ用のlojackのようなプログラムがあることは知っていますが、それでも少し混乱しています。ロージャックについて読んでいると、ユーザーがログインしてインターネットにアクセスしようとするまで、ラップトップの場所を完全に特定できないように思われます。ですから、泥棒がHDを再フォーマットしてもかまわないように、BIOSアプリケーションだと思います。
だから私の質問は、インターネットがどのようにBIOSアプリケーションを可能にするかについて誰かが何か考えを持っているかということです。私は完全な答えを探しているのではなく、始めるためのアイデアやリソースだけを探しています。たとえば、そのようなものはアセンブリで書かれていますか?そのようなアプリが1つ作成されると、どのようにしてBIOSに転送されますか。BIOSプログラム自体は、インターネット接続があることを認識していますか(泥棒がOSにログオンしたとき)。または、ログオン時に、追加のプロセスが生成されますか?誰もが私に指示できるリソース/ウェブサイトはありますか?
boot - A/C 電源が使用可能になると、コンピューターの電源が自動的にオンになります
ミニ PC を搭載したハードウェア セットアップの電源障害 (私の状況では比較的一般的かもしれません) から保護するために、A/C 電源が使用可能になったときに、コンピューターの電源をできるだけ早く自動的にオンにする必要があります。 . 一部の BIOS には、A/C 電源を使用してコンピューターの電源を自動的にオンにするオプションがあると聞きましたが (まさに私が望んでいるものです)、現在使用しているコンピューター (Giada N20) には BIOS にこのオプションがありません。
そこに最も近いのは、特定の時間にコンピューターを目覚めさせるRTCアラームですが、コンピューターがオフの場合は常にコンピューターを目覚めさせたいだけです。私の場合、Wake-on-LAN は不必要なハックのように思えます。これは、サーバーが常にコンピューターのスリープを解除しようとする必要があるためです。
コンピュータの電源を自動的にオンにするために他にできることはありますか? ありがとう。
java - JavaでBIOS時間を取得する
JavaでBIOSの日付と時刻を取得する方法はありますか?
Javaは、電話をかけるときにBIOS(Basic Input / Output System)日時を使用しますjava.util.Calendar.getInstance()か?new java.util.Date()?
1970年1月1日00:00:00GMTをベースとして、Javaが現在の日付と時刻を何らかの形で機能させていることを私は知っています。
しかし、どのくらい正確に?
assembly - マシンをS3スリープにする最後の命令は何ですか?
ACPI Spec 4.0の299ページから、マシンをS3スリープ状態にする方法を示すサンプルコードがいくつかあります。ハードウェアをスリープ状態にする最後の手順は何ですか?コードに従うとどうなりますか、またその理由は何ですか?
assembly - このブートローダーコードが機能しないのはなぜですか?
私の期待は、文字列を印刷することですが、何も印刷されません。文字列を短くするとうまくいくこともあれば、もう一度長くするとうまくいくこともあります。
なぜこれが機能しないのかわかりません。
誰かが私を助けてもらえますか?ありがとう。
私が使用しているアセンブリコードは次のとおりです。
(Emacs 23、Ubuntu 10.10、nasm、VirtualBox OSE)
protected - プロテクト モードから BIOS 割り込みを呼び出せないのはなぜですか?
右。保護モードのときに BIOS ISR を呼び出すことができない理由を理解するために、今日 3 時間以上を費やしました。IDTを設定すると、必ずしもIVTの通常のアドレスになるとは限らず、保護モードではセグメントのサイズが固定されないなどのことがわかります。しかし、単一の4GBを作成できない理由はまだわかりませんセグメントを作成し、IDT セグメントを BIOS IVT にマップし、すべてをリング 0 に設定して呼び出します。それはうまくいくべきではありませんか?
ほとんどの記事には、「保護モードでは BIOS 割り込みを使用できないことを忘れないでください!」主題を調査しないか、非常に説明的であり、その背後にある理由として、トラップ、例外、写真の再マッピング、権利の欠如、およびセグメント登録の問題を挙げています.
誰かがより人間に優しい説明を思い付くことができれば、それは非常に役に立ちます...私は記事が言っていることを疑っていません.なぜそれがそのような「痛み」なのかを理解したいだけです!
前もって感謝します!
assembly - bios int 0x13 がエラーなしで失敗する
私は教育用のブートローダーを書いていますが、うまくいきます。しかし、実際のマシンで起動しようとすると、ディスク読み取りコードがいくつかのセクターのロードに失敗します。エラーコードは表示されず、CF も設定されません。また、1 in al を返します。これは、1 セクターが読み取られたことを意味します (これは正しいはずです)。しかし、ロードされたセクターにジャンプしようとすると、ハングして何もしません..最初の段階では A が出力され、2 番目の段階では F で上書きされます。実際のハードウェアで起動すると、A のみが表示されます。したがって、セクターはメモリ内にあるべき場所にありません..
これは私の MBR です:
ステージ 2:
kvm では完全に動作しますが、実際の BIOS を備えた実際のハードウェアでは動作しません。USB フラッシュ ドライブを使用して、実際のハードウェアでの起動をテストします。
問題は、mbr の最初のバイトで定義していない BPB でしょうか? 生のセクターを読んだだけなので、そうは思いません..間違っている場合は修正してください。
誰でもそれが何であるかの手がかりはありますか?
ありがとう
c - BIOS プロパティのクエリと設定のための API
Linux でコンピューターの BIOS の設定を変更したいとします (問題がある場合は Ubuntu 11 としましょう)。BIOS 設定を照会および操作できるようにする API にはどのような種類がありますか?
さらに、この種の開発を行うための適切なリソースは何ですか?
winapi - Win32 APIを使用してBIOSハードディスクのパスワードステータスを確認するにはどうすればよいですか?
一部のハードディスクは、起動時にパスワード保護をサポートしています。ハードディスクのパスワードステータスを確認するために呼び出すことができるWin32APIはありますか?
クラス:Win32_ComputerSystemには、このフィールドがないようです。
ありがとう。
linux - Linux カーネルでのハードウェア クロック信号の実装
Linux カーネルがさまざまなハードウェア クロックの設定をどのように実装しているかを理解するための指針をいくつか調べています。これは基本的に、LCD、UART などのハードウェア機能が使用するさまざまなクロックの設定に関連しています。たとえば、Linux の起動時に、UART または USB のクロックの設定をどのように処理しますか。たぶん、クロックマネージャーか何かのようなものです。
私は基本的に、作業中の新しいハードウェア上の別の OS に同様のものを実装しようとしています。どんな助けでも本当にありがたいです。
[編集]
返信とリンクをありがとう。だからここに私が今まで実装したものがあります。これで、私がどこに向かっているのかがわかります。
ターゲットにしている特定のシステムのハードウェア リファレンス マニュアルを調べ、興味のある周辺機器の信号/ピンを監視/変更するコードをいくつか書きました。つまり、コマンド ラインからオン/オフを切り替えます。クロック/信号は一緒に周辺機器を制御します.HRMは、UARTまたは何かをオンにしたい場合は、そのような信号/ピンをオンにすると言います. そして@BjoernDはい、mmap()関数のようなものを使用して周辺機器と通信しています。
私の質問の本質は、私が既に書いたユーティリティを使用するクロック/ペリフェラル マネージャーの設計と実装を理解したいということです。このClock/Peripheral Managerを使用すると、必要な周辺機器を有効/無効にすることができます.基本的に、このManagerを使用すると、現在実行中のinitコードを変更できます. また、実行時にプロセスがこのマネージャーを呼び出して、デバイスのオン/オフを切り替え、電力消費が最適化されるようにすることもできます。完全に理にかなっていないかもしれませんが、私自身がこれに頭を悩ませようとしています.
今では、このようなものが Linux に実装されていたと確信しています。さらに言えば、パフォーマンスの問題のために任意の OS に実装されていたはずです (起動時にすべての周辺機器をオンにして電力を浪費したいと思う人はいません)。そのソフトウェアアーキテクチャを理解したいです。現時点では、任意の OS からの参照により、少なくとも有利なスタートを切ることができます。また、私は自分の OS を書いているわけではありません。OS はありますが、BSP とも呼ばれるボード レベルのソフトウェアに取り組んでいます。しかし、とにかくOSリンクに感謝します。それらは本当に優れています。感謝します。
ありがとう!