Comments
Loading Dream Comments...
You must be logged in to write a comment - Log In
Rather than allow every thread to have access to every segment in the datastore, all addresses in userspace must go via the GHOST -- Global Hosting Online Segment Table. This is a part of ::SHE::, and maps local "virtual" segment addresses (represented as one BCD byte, in 00...99) onto the LBA (logical block addresses) of the segments in the datastore. Not only does this shorten addresses by a few bytes (e.g. an LBA may take 6 or 8 BCD digits to represent, i.e. 3 or 4 bytes, and this is now compressed to 2 digits, i.e. 1 byte), but more importantly it prevents a block of user code from randomly treading all over the disk, thus enhancing security. In the ultimate case, we could require that GHOSTs must be set up by a Data Administrator, rather than the user themself. In any case it stops users accidentally (or maliciously) from corrupting the datastore. Typically the GHOST will be part of the system pagetable, owned by the ::SHE:: module, part of the kernel.