1. 組み込みソフトウェアレベル 1) ブートローダ -> ブートローダ 組み込みシステム全体の読み込みと起動のタスクは、すべてブートローダに引き継がれます。ブートローダの主なタスクは、ハードディスクからカーネルイメージを RAM に読み込み、カーネルエントリにジャンプしてカーネル (オペレーティングシステム) を起動することです。簡単に言えば、ブートローダの役割は、ハードウェアを初期化し、オペレーティング システムを起動することです。 U-BOOT は最も一般的に使用されているブートローダです。開発ボードの NAND フラッシュ (ROM) に uboot をダウンロードした後、シミュレーション ソフトウェア Secure CRT を使用して開発ボードの初期設定を行うことができます。 開発ボードの環境変数、IP、その他の設定が含まれており、これらはカーネルのダウンロードと、後でファイル システムのロードの基盤となります。 2) Linuxカーネル さまざまなハードウェアおよびソフトウェアの要件を満たすために、さまざまなシステム カーネルを構成します。一般的には既存のカーネルの変更に基づいている カーネルの設定 -> カーネルのコンパイル -> カーネルのインストール -> カーネルプロセスファイルのクリーンアップ (make clean) カーネルを設定します: make menuconfig ARCH=arm メニューベースの対話型インターフェースで必要なドライバーとプロトコルファイルを選択します カーネルをコンパイルします: make uImage(カーネル名) ARCH=arm CROSS_COMPILE=arm-linux- カーネルをインストールします: tftp サーバー「tftp uImage 20007fc0」を介して uboot に基づいて uImage を 20000fc0 (開発ボードのブート アドレス 210) にダウンロードします。 3) ファイルシステム 簡単に言えば、ファイルシステムとはディレクトリ構造です。Linux オペレーティングシステムのデバイスはファイルという形でシステム内に存在するため、これらのファイルは分類・管理され、カーネルとやりとりするためのインターフェースが提供され、特定のディレクトリ構造、つまりファイルシステムを形成します。 基本的なプロセス:
" make modules ARCH=arm CROSS_COMPILE=arm-linux- " カーネルコンパイル 「make modules——install ARCH=arm INSTALL_MOD_PATH=/home/S5-/rootfs」カーネルファイルをルートファイルディレクトリにコピーします
SecureCRT -> uboot (nfs 構成項目) を介して開発ボード パラメータを構成する -> tftp サーバーから Linux カーネルをダウンロードする -> bootm 20007fc0 を実行してマウントする! 2. 時々起こる問題 1. 開発ボードのpingに関する一連の問題 1) モデル構造の構築: PC -> 有線ネットワークカード -> ルーター -> 直接ネットワークケーブル -> 開発ボードのネットワークポート。 2) a. 仮想マシンをブリッジ モードに設定して、外部ネットワークが Linux 仮想マシンの IP を見つけられるようにします。 b. PC が有線ネットワーク カードを使用している場合は、PC および Linux 仮想ネットワーク アダプタに Realtak USB (有線ネットワーク ポート) を選択します。 c. Linux 仮想マシン、PC、開発ボードの IP アドレスが同じネットワーク セグメントにあることを確認します。 3) Linux仮想マシンとPCのファイアウォールをオフにして、PCがLinuxと開発ボードにpingを実行できるようにします。 ハードウェアインターフェースの問題を解決すれば、通信が可能になります。 2.nfsマウントの問題 NFS マウント時に「サーバーが応答しない」「ルートをマウントできない」などの問題が発生する場合があります。主な原因は、NFS マウントの設定パラメータとダウンロード アドレスに問題があることです。たとえば、smart210 のダウンロード アドレスは 20007fc0 です (20008000 ではありません)。NFS はデフォルトで UDP 通信プロトコルを使用します。マウント パラメータはオンラインで検索できます。数回試してみるだけで問題はありません。前提は、Linux NFS サーバーが正常に使用できることを確認することです。 以上が組み込みLinux開発環境の設定とpingやnfsの問題解決に関するナレッジポイントのすべてです。123WORDPRESS.COMをご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: MySQL における単一テーブルと複数テーブル、およびビューと一時テーブルに対する Update と Select の違い
>>: Vue Element フロントエンドアプリケーション開発 テーブルリスト表示
デフォルトでは、MySQLの文字タイプは大文字と小文字を区別しません。つまり、name='A...
目次成果を達成する完全なコード + 詳細なコメントまとめ成果を達成する完全なコード + 詳細なコメン...
MySQL による CPU 負荷の上昇今日の午後、MySQL によってサーバーの負荷が高くなる問題を...
序文3 列レイアウトは、その名前が示すように、両側が固定され、中央が適応します。実際の開発では、3 ...
<p><b>これは太字フォントです</b></p> ...
質問 1: ブラウザに必要なフォントを表示するように指示するにはどうすればよいでしょうか? フォント...
目次SQL文を挿入する前にレコードが既に存在するかどうかを確認するSQL挿入時の判断の簡単なコレクシ...
目次シナリオ中核問題ステータス監視状態監視の利点国家監視の欠点復興実行のアイデア依存関係の収集要約す...
1. 仮想マシンバージョン15.5.1をダウンロードする公式サイトから直接最新バージョンをダウンロー...
目次1. nodejsをダウンロードする2. ダブルクリックしてインストール3. グローバル npm...
目次1. 匿名スロット2. 名前付きスロット要約するスロット (slot) は、Vue のコンテンツ...
WeChatアプレットの簡単な計算機は参考用です。具体的な内容は次のとおりです。 1. はじめに1....
マウス効果では、setTimeout を使用して固定時間にノードを生成し、ノードを削除し、生成された...
序文IE の将来のすべてのバージョンで Web ページの外観が一貫していることを保証するために、IE...