A new directory is created. This directory has the generation number of the original sector
cluster.
A process credential file is created in the directory. It is marked to indicate that the process
will host the sector service. This mark means that the process will be responsible (jointly,
along with all other such processes in the directory) for storing the sectors in the directory.
The new process starts and initializes a new directory in its local filesystem to store sector
data. It knows to create this directory because it is configured to run the sector service,
which creates a new storage directory if one does not already exist. As part of the creation
process a new super block is created, which is the file with inode 1 and which is not contained
in any directory. This new superblock contains the generation number which identifies the sector
service in this directory. The generation number is determined by contacting the sector service
in the root directory, which has knowledge and authority to assign unique numbers to every
sector service.
The filesystem service in the directory will discover the sector service actor running inside the
new process. When it creates new files in the directory it will store their sectors using the
sector service in the process. These new files will use the generation number defined in the
superblock stored in the sector service in the directory, which is different from the generation
number of the directory itself.
When new processes configured to run the sector service are added to the directory, they
automatically replicate sectors marked with their generation number, and use Raft to ensure the
consistency of sector data.
Note that the sectors of the directory itself are actually stored by the parent sector service.
It is just the files created within it which are created after the sector
service in the directory becomes active which are stored by the child sector service.