2

Android 2.0 がプリインストールされている非常に弱いネットブックを購入しましたが、これを puppy や DamnSmallLinux などの別の Linux ディストリビューションに置き換えたいと考えています。

ネットブックには「SDカードから起動」オプションを備えたBIOSメニューがないため、grub/liloでSDカードまたはUSBキーを挿入しても、そこからボットしませんでした。

Androidシステムのルートを持っていないため、Androidデバッグモードに入るキーシーケンスが見つかりませんでした。

  1. 別のメディアからの起動を指定する Android 内部の方法はありますか?
  2. 別のデバイスから Android を強制的に起動する「das-uboot」方法はありますか?

ありがとう!

4

1 に答える 1

3

私はアンドロイドを実行しているネットブックに慣れていないので、組み込みデバイスでの私の経験は次のとおりです。

私の知る限り、「アンドロイド内部」の方法はありません。Android は u-boot 後に引き継ぎますが、u-boot 環境パーティションに変更することはめったにありません (決して読むことはありません)。

簡単に言えば、それはほぼ不可能であり、無駄な努力が多すぎるのです。また、初心者には、ボードまたは ADB シェルに接続されたデバッグ シリアル コンソールが必要です。シェルなしで作業を推測するだけです。

一般的なアルゴリズムの場合:

  1. シェルを動作させる
  2. システムを理解する (CPU タイプ、パーティション テーブルなど)
  3. 次に、知っていることで何ができるかを調べてください。

または、「オール オア ナッシング」 - ファームウェア アップグレードとファームウェア イメージをリバース エンジニアリングし、独自のもので起動してみてください。

長い話:

sd_card ブートには 2 つのオプションがあります。

  1. ボード上のブートローダーを使用し、sdcard からカーネルと rootfs をロードします
  2. sd_card から起動

sd_card からカーネルと fs をロードします。

u-boot 環境を変更せずにブート デバイスを変更する一般的な u-boot の方法はありません。ほとんどの場合、u-boot 環境は nand パーティションに存在します。製造元によってコード化された何らかの方法が存在する可能性があり、これはオフラインのファームウェア アップグレード手順によって推測される可能性があります。これはおそらく、迅速な解決のための最善の策です。それをリバースエンジニアリングしてみてください。

sd_card から起動:

ほとんどのプラットフォームには SYSCONFIG レジスタまたはハードウェア ピンがあり、開発プラットフォームではジャンパによって操作され、ほとんどが製品プラットフォームではハードワイヤードされています。SYSCONFIG はブート デバイスを制御します。NAND のみ、または SD_CARD のみなどに設定できます。

システムが実際に sd_card からロードするように構成されている場合、さらにいくつかの問題があります。

  • 場合によっては、SD カードを特定の方法でフォーマットする必要があります (例: http://www.omappedia.org/wiki/SD_Configuration )。
  • また、最初の段階のローダーに署名する必要がある場合もあります。そして、第 1 段階のブートローダー (x-loader など) が何であるかを理解するのは難しく、署名部分はちょっとトリッキーです :)
  • u-boot と x-loader をビルドするには、正確なプラットフォーム構成を知る必要があります
于 2011-02-26T22:49:45.700 に答える