リロケータブル 【relocatable】 再配置可能
概要
リロケータブル(relocatable)とは、転居可能な、再配置可能な、という意味の英単語。ソフトウェアの分野で、コンピュータプログラムがメモリ上のどこに配置しても実行可能なことをリロケータブルであるという。実行可能な機械語のプログラム(バイナリコード)では、メモリ上の特定の位置の内容を読み書きしたり、次の命令の実行位置を特定の位置に変更(無条件ジャンプや条件分岐など)したりする命令がよく用いられる。
このとき、メモリ上の位置の指定をアドレス(番地)の絶対値で行うと、そのプログラムを実行する際には必ずメモリ上の同じ位置に置かなければコード中の番地の指定がずれてしまうため、開発時に決めたアドレス以外に置くことができなくなる。
一方、命令が参照するメモリ上の位置の指定を、その命令が置かれている現在位置からの相対位置や、プログラム先頭からの相対位置などで指定するようにしておけば、プログラムをメモリのどこに置いても正常に動作する。このようなプログラムのことをリロケータブルであるという。
リロケータブルIPアドレス
ネットワークの分野では、多重化されたサーバやネットワークインターフェース(NIC)の間で共有されるIPアドレスのことを「リロケータブルIPアドレス」または「仮想IPアドレス」という。
稼働中の装置が故障した場合などに、その装置が使っていたIPアドレスが待機中の装置に自動的に引き継がれる。外部から見ると同じアドレスで同じ機能が提供され続け、故障によってサービスが中断することがない。
(2020.3.27更新)