Domain/OS Types

Domain/OS Types

In Domain, the files in the networked filesystem aren't merely files, but objects. This filesystem was the first commercial object-store. Each object is an instance of a type. A set of operations that implement a certain behaviour is a trait; types may support one or more traits.

There are a handful of system traits, divided between those that are built-in to the system and those that are separately loaded. Unfortunately, Apollo never released information on how to write traits, so there are few user-written ones floating around.

I'm working on writing a "how to write a trait" page.

Built-in traits

io
Standard file-like input-output operations.
io_oc
Standard file-like open and create.
io_xoc
Extended open and create, for object with internal structure.
ios_dir
Directory operations.
sio
Serial port operations.
prot
Object protection operations, regarding owner, groups, permissions, etc.
attr
Object attributes, like size, timestamps, etc.
geo
Geometry?
gpr
Graphics primitives?
gsr
More graphics something?
ipmac
?
socket
A generalization of BSD sockets.
ws
?
vstreams
System V STREAMS.
wm
Window manager?

Additional traits

xdl
Something to do with X-windows displays
xpager
External (user-space) pager daemon (à la Mach?)