3 ms·
Dependency resolution is implicit to the design -- the entire global namespace is available on every system so any dependencies are resolved as they are request
by rkeene2 11y ago
Dependency resolution is implicit to the design -- the entire global namespace is available on every system so any dependencies are resolved as they are requested.
That is, if you have an executable such as "ls" that relies upon the dynamic linker provided by "glibc", then the glibc requested will be fetched automatically because you attempted to open the dynamic linker.
Additionally, the design is superior to the single-user nature of a remote disk image in that each user's writes are redirected to their own home directory (by default, you can change this in a config file).
Even further, it allows for setuid files to be handled safely which is sometimes needed (e.g., "sudo" or "chrome-sandbox").
Caching is handled by the kernel for the VFS cache but also by a more persistent disk cache so that you can use applications offline as long as you have cached them (by running them, usually) ahead of time.