問題タブ [mbr]

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 に答える
347 参照

floating-point - 最小境界矩形を正方形 [10000][10000] に正規化する方法は?

http://www.rtreeportal.org/からダウンロードした空間データ セットがあります。

MBR は次のような値を持つ四角形です。

506364.3125 4583290.0 508388.09375 4584786.0 は四角形の (x_low,y_low,x_high,y_high) を表します。

ご覧のとおり、すべての場所は大きな float 値によって調整されています。そして、空間にはほぼ20000以上の長方形があります。

空間全体を面積[10000][10000]の空間に生成したい

すべての x の最小値は 0 になります

すべての x の最大値は 10000 になります

すべての y の最小値は 0 になります

すべての y の最大値は 10000 になります

それに応じて、他のすべての x 座標と y 座標が変更されます。ロジックはどうなりますか?

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

boot - MBR が読み込まれるための要件は何ですか?

古い USB スティックの MBR を変更したり、そこから起動したり、さまざまな BIOS 機能をテストしたりして遊んでいます...

しかし、私は理解していないようです - どのデバイスから起動するかを決定するときに、BIOS は何を調べますか? 明らかな 2 つの要件は次のとおりです。

  • BIOS の起動順序を変更して、接続時に USB からの起動を試みるようにします。
  • MBR 署名 - オフセット 0x1fe に 0x55aa があります。

何らかの理由で、私のラップトップは、私が書いた一部の MBR では USB からのみ起動し、他のものでは USB を無視してメイン HD から起動します。もちろん、すべて 0x55aa で署名されています。

なぜそれが起こるのですか?BIOS は他に何を探しますか?

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

arm - ラズベリー Pi から MBR を抽出する

Linuxマシンと同じように、ラズベリーパイ(SDCARDにラズビアンがロードされている)からMBRを抽出しようとしました。

ただし、fileonmbr.binを実行すると、次のメッセージが表示されます:-

mbr.bin: x86 boot sector; partition 1: ID=0xc, starthead 130, startsector 8192, 114688 sectors; partition 2: ID=0x83, starthead 0, startsector 122880, 15400960 sectors, code offset 0xb8

なぜそれがであると言うのx86 boot sectorですか?

[編集]ここで起動シーケンスについても読みました。ラズベリーパイはMBRを使用しますか?

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

mbr - Windows 8でGPTボリュームをMBRに変換する方法

GPT私の問題は、ディスクではなくボリュームを変換することです。いくつかの解決策を見つけましたが、それらはすべてディスクを変換する方法に関するものです。私のWindows 8では、disk 0. ボリュームdisk 0があります。7で 1 つのボリュームを変換したいだけですdisk 0。これどうやってするの?

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

bios - VMDK ファイルで MBR セクターを見つけるにはどうすればよいですか?

VMware BIOS がロード前に MBR を検出する方法を理解しようとしています。

物理ハードディスクでは簡単です。MBR は最初のセクターにあります。
しかし、.. VM ではどうなるでしょうか。

2 つの VM を作成しました。最初の vmdk (Linux ベースのシステムがインストールされている) で、オフセット 0x2A0000 に MBR が見つかりました。
2 番目の vmdk ファイル (Windows XP がインストールされている) で、MBR を 2 回以上見つけましたが、見つけたすべてのオフセットを 512 (セクター サイズ) で割ることができませんでした。 MBRはセクターの先頭から開始する必要があります+セクターサイズはvmdkの512バイトです=> MBRの開始オフセットは512で除算する必要があります。間違っている場合は修正してください)。
したがって、それらはおそらくバックアップ用のコピーだったと思います..言うまでもなく、xp .vmdk の @ offset 0x2A0000 は何も興味深いものではありませんでした。

では、VMware の BIOS はどのように MBR を検出するのでしょうか? この構成可能なパラメータはどこにありますか\どのように計算されていますか?

追加情報:
- どちらの VMDK も 1 ファイルのハードディスク ファイルです (40GB まで拡張できます)。
それらが提供するシステムはそれらとそれらのみを使用します(XPはxp.vmdkを使用し、Linuxはlinux.vmdkを使用し、追加のVMDKはありません)。

- @Windows VM \.\PhysicalDrive0 で WinHex を使用して MBR を取得しました。問題ないように見えました (署名など)。
- @Linux VM コマンド「dd if=/dev/sda of=mbr.bin bs=512 count=1」を使用し、16 進バイトを表示して MBR を取得しました。最後に署名など)。
VM から MBR を取得した後、対応する各 .vmdk ファイルでホスト PC の MBR を検索しました (16 進エディターを使用)。オフセットは上記のとおりでした。

どんな助けでも大歓迎です。ありがとう!

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

assembly - オペレーティング システムのバイナリ コードを作成するには、どのような環境を使用できますか?

オペレーティング システムのブートストラップを学習するために、次の方法でいくつかの簡単なテストを行います。

  • oracle viratualbox をインストールし、hdd ディスクを作成します

  • hex-editor HxD をインストールし、この hdd ディスクにコードを書き込み、この hdd を表すファイルを開きます

最初の 512 バイト セクタの最後に、55 AA を 1FE および 1FF バイトで書き込みます。

および他のコードは、最初のセクターの最初のバイトから書き込みます。

このようにして、HxD から hdd ファイルのブロックを解除する必要があります。これが完了するまで、virtualbox は起動できないためです。

独立した開発環境を作成するため、仮想マシンまたは別の実マシンを使用したい (2 番目の方法はあまり便利ではありません)。

ブートストラップ (および単純な開発後) オペレーティング システムを学習するために、このテストをより効率的に行うにはどうすればよいですか?