Because software components employ user-supplied namespaces exclusively
to locate resources, we avoid the need for process-relative names. In
traditional systems, programs are written with careful attention to how
they fit into process granularity. Once a program leaves the
programmer's hands, its orginization is fixed, because each
process-sized unit requires and carefully shares the resources of a
single process.
|
Snowflake software can be written without regard to how objects pack
into processes. Because components don't acquire resources from the
process object but from a user-supplied namespace, multiple components
can be colocated into one protected process context, or individual
components may be separated across contexts or across machines. The
organization of components in contexts can be assigned at runtime
according to the user's safety and performance requirements.
|