ソフトウェアイメージとは何ですか?


ベストアンサー

使用している言葉遣いから、一部で実行されるソフトウェアについて話しているようです。デスクトップアプリケーションまたは他のバリアントとして展開されるソフトウェアとは対照的に、一種の組み込みシステム。

特定のハードウェアでプログラムを実行する前に、作成したソースコードを実際にマシンで解釈できるものに変換するために実行する必要のあるいくつかの手順があります。

ソースコードは、特定の構文とセマンティクスを持ち、読み取り可能な言語で記述されていますが、プロセッサは1と0のみを予期して理解します。

コンパイルされた言語を使用する場合、特定の順序で使用し、適切な入力でフィードすると、一般にソフトウェアイメージと呼ばれるものが生成される一連のツール。このソフトウェアイメージは、最終的にターゲットにロードするものです。

ハードウェアとツールチェーンの構築方法によって、ソフトウェアイメージを生成するツールは異なりますが、確かにプリプロセッサ、コンパイラ、およびリンカーが必要になります。

ソースコードはプリプロセッサに渡され、いくつかの問題(マクロ、インクルード、プリプロセッサディレクティブなど)が解決されます。この時点で、まだ読み取り可能な中間ファイルがあります。次に、前処理されたファイルがコンパイラに渡され、コンパイラがオブジェクトファイルを生成します。正しいオブジェクトファイルを生成するために、どのファイルをどのように取得するかをコンパイラに指示する必要があります。

最後に、リンカは前のステップのさまざまなオブジェクトファイルを指示どおりに結合し、結果としてバイナリイメージを生成します(リンカはライブラリのリンクなど、できなかったものを処理します)コンパイルフェーズで解決されます)。

ソフトウェアイメージのインストールまたはテストとは、最後の手順で作成したバイナリイメージをターゲットハードウェアにロードすることを意味します。ロードは通常、イメージを不揮発性メモリストレージにコピーすることによって行われます。

これはプロセスの大まかな説明であり、網羅的なものではありません。

回答

私の前にある2つの回答を読んで、私はそうではないと告白します。実際に何を求めているのか、これらは参照している可能性のあるものです。

多くのマルチユーザーシステムでは、共有する必要のあるハードウェアレジスタのセットはマシン上に1つしかないため、通常は各ユーザーに時間のスライス(たとえば、10ミリ秒)を与えてから、次と次へ進みます。データはディスクまたは未使用のメモリに保存されているため、各ユーザーのデータの状態は変わりません。レジスタセットの状態は、この瞬間に起こっていることのスナップショットとして保存する必要があります。これにより、次にユーザーが選択されたときに復元できます。

この用語の別の使用法は、必要な数学とメモリ管理です。さまざまな値の一連の行をスキャンするのではなく、画像をメモリに保持します。

メインフレームコンピュータの昔は、ソースコードがコンパイルまたはアセンブルされて「コアイメージ」ライブラリ、マシンになりました。メモリにロードされ、そのまま実行されるブロックとしての言語。ほとんどのDLLは、実践していなくても同様の理論を使用しています。

水を濁らせただけで申し訳ありません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です