Restartable actors, just like traditional ChorusOS actors, are identified in the system by a unique capability and identifier (actor ID). Restartable actors also run in a user group (with a user ID), like traditional ChorusOS actors. The lifetime of each of these credentials is the same as the lifetime of a particular run-time instance of the actor: when a restartable actor is restarted, it is given a new capability, actor ID and user ID.
Hot restartable actors also have two additional credentials, which persist across an actor restart, and serve to characterize them in the Hot Restart Controller:
Each restartable actor has a unique name.
The maximum number of restartable actors (unique names) which can be registered
in the Hot Restart Controller is fixed by the system tunable parameter hrCtrl.maxActors
.
It is the programmer's responsibility to ensure that each actor running in the system uses a unique name, as this is not checked by the system. Attempting to run two actors which use the same name will give unpredictable results.
Each restartable actor is a member of a restart
group. A restart group is uniquely identified in the system by an integer,
known as the group's ID. The maximum number of group IDs allowed in the system
is fixed by a system tunable parameter, hrCtrl.maxGroups
.