[MUD-Dev] OS Inspiration
Phillip Lenhardt
philen at funky.monkey.org
Sat Jan 1 17:49:22 CET 2000
I myself don't have the ability to apply this code and its ideas to MUD
design, but I feel EROS (http://www.eros-os.org/) has a lot
to offer the MUD developer, including:
Pure Capability Architecture
EROS is a pure capability system. Authority in the system is conveyed
exclusivly by secure capabilities, down to the granularity of
individual pages.
Orthogonal Global Persistence
All user state, including both data and running programs, are
transparently saved on a periodic basis. In the event of system
failure processes are resumed as of the last checkpoint. No special
action or programming on the part of the application is required.
Kernel Threads
The EROS kernel itself is implemented using multiple kernel-mode
threads. This improves the performance of EROS drivers, makes them
simpler to code, and greatly simplifies the design of the kernel. In
addition, it enables selected kernel functionality to be preempted by
higher priority user activities.
Security
Because EROS processes are persistent, processes can hold authorities
in their own right rather than inheriting them from the user. This
enables a rich variety of options for security and access control that
are impossible in systems lacking persistent processes.
"Stateless" Supervisor
While the EROS kernel caches user state in a variety of ways for the
sake of performance, essentially all of the state maintained by the
kernel is derived from user-provided information. Only two pieces of
kernel state are saved in a persistent snapshot: the list of running
threads and the directory of objects in the checkpoint log.
Deadlock-Free Supervisor
Minimal Kernel
The EROS kernel contains relatively little code. The current
(incomplete) system is 24.3k of binary code. The final,
non-distributed kernel is expected to weigh in at 50k to 60k on
completion. The latter number includes critical drivers and the
persistence manager. No size tuning has been done.
Distribution
EROS provides all of these facilities, including orthogonal
persistence, across a cluster of machines.
_______________________________________________
MUD-Dev maillist - MUD-Dev at kanga.nu
http://www.kanga.nu/lists/listinfo/mud-dev
More information about the mud-dev-archive
mailing list