rt.com3.cの1276行目
case 1:
if (min_usage < 1000) { /* usageが1000以下の場合 */
if (my_usage < (min_usage + 5000)) goto leave_loadbalance;
} else if ((my_usage < (min_usage + 15000)) || (my_usage < 5000)) {
leave_loadbalance:
start_tick = 0;
return *my_pnidp;
}
break;
my_pnidpは、この関数(sss_loadbalance)の第1引数。
int sss_migration_request(int node,int type); nodeはマイグレーション先の物理ノードID(SSS-CORE世界 のID)を指定する。typeはマイグレーション時の同期,ペー ジコピー,MBCFの整合性に関する方式を指定する。 マイグレーションに成功した場合は返り値として0が返り, 動作ノードが移動する。マイグレーションに失敗した場合は システムコールを実行したノードで動作を続け,返り値として -1が返る。type マイグレーションタイプ 0 : 事前同期なし、eagerページコピー、MBCF事後変更通知なし帰り値: -1 エラー (移動していない) 0 成功