SDRAM を初期化して準備する単純なブートローダーがあります。次に、フラッシュからアプリケーションをロードし、RAM のあるアドレスで開始します。アプリケーションの実行が終了すると、システムは再起動します。システム スタックはありません。
ここで、アプリケーションが実行を終了した後に、このブートローダーが制御を取り戻すことを望みます。ブートローダー (OS と呼びましょう) も、アプリケーションのリターン コードを読み取る必要があります。
アプリケーションはどのようにして呼び出し元の OS に値を返し、呼び出し元の OS はどのようにして制御を取り戻すことができるでしょうか? 割り込みを使用して実行できると思います-OSには、割り込みに結合された特別な常駐機能があり、すべてのアプリケーションは、独自の実行の最後にこの割り込みを呼び出すだけです。しかし、システム スタックがない場合、OS はどのようにしてリターン コードを読み取ることができるでしょうか。