組み込み DSP ターゲット (どの OS でもサポートされていない) 用のアプリケーションを開発しており、開発は C を使用して実行されます。次のように、初期化と無限ループを持つ単純なアプリケーションがあります。
#include <>
main (){
initialize ;
while (1){
poll_timer_for_scheduling (); // use for timing
remote_link_to_receive_data(); // used to receive data
remote_link_to_transmit_data(); // used to transmit data
switch (sel) {
case '1':
function1();
case '2':
dummy_function(); // to be replaced by function2() later
}
}
} // end of main
//-------------------------
function1()
{
// some code
}
//--------------------------
dummy_function()
{
// NO code; just an empty function to be replaced later by function2()
}
ここで、実行可能ファイルをコンパイルして DSP ターゲットにダンプします。DSP ターゲットは完全に実行されます。システムにアクセスできない可能性があるため、dummy_function() は後でリモートで function2() に置き換えたい関数です。これは、アプリケーションのオンライン パッチ適用に似ていますが、セルフ パッチ適用を実行するには、アプリケーションをターゲットで実行する必要があります。
したがって、私の要件は、後で運用段階で (予期しない状況に対応するために) 追加機能で実行可能ファイルを更新することです。ac 関数 function2() をコンパイルし、実行可能ファイルを dummy_function() にアップロードするにはどうすればよいですか?
アプリケーションの動的リンク機能の簡略化されたバージョンを探しています。これを達成するための簡単なメカニズムはありますか?