diff --git a/src/SUMMARY.md b/src/SUMMARY.md index b3b4b9a..40641f5 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -12,12 +12,13 @@ - [System overview](./operation/index.md) - [The System Bus: syndicate-server](./operation/system-bus.md) - - [Bus scripting language](./operation/scripting.md) + - [Services and service dependencies](./operation/service.md) - [Built-in services and service classes](./operation/builtin/index.md) - [Gatekeeper](./operation/builtin/gatekeeper.md) - [TCP/IP and Unix-socket Transports](./operation/builtin/relay-listener.md) - [Configuration watcher](./operation/builtin/config-watcher.md) - - [Process supervision and management](./operation/builtin/daemon.md) + - [Daemons and external programs](./operation/builtin/daemon.md) + - [Configuration scripting language](./operation/scripting.md) - [Configuration files and directories]() - [The boot layer]() - [Logging]() diff --git a/src/glossary.md b/src/glossary.md index 88eb238..c0d942d 100644 --- a/src/glossary.md +++ b/src/glossary.md @@ -3,9 +3,9 @@ ## Actor ## Assertion ## Attenuation -## Bus Scripting Language ## Capability ## Compositional +## Configuration Scripting Language ## Conversational State ## Dataspace ## E diff --git a/src/operation/builtin/index.md b/src/operation/builtin/index.md index 62c1525..8284d21 100644 --- a/src/operation/builtin/index.md +++ b/src/operation/builtin/index.md @@ -1 +1,3 @@ # Built-in services and service classes + +The `syndicate-server` program diff --git a/src/operation/index.md b/src/operation/index.md index b137f13..8aab167 100644 --- a/src/operation/index.md +++ b/src/operation/index.md @@ -7,7 +7,6 @@ tree](../glossary.md#supervision-tree), conceptually rooted at the [system bus](./system-bus.md) (NB. not at PID 1). ```ditaa system-supervision-tree -(Example) +----------------------------------+ |Root System Bus (syndicate–server)| +----------------+-----------------+ diff --git a/src/operation/scripting.md b/src/operation/scripting.md index 088b83f..0d8a77e 100644 --- a/src/operation/scripting.md +++ b/src/operation/scripting.md @@ -1 +1 @@ -# Bus scripting language +# Configuration scripting language diff --git a/src/operation/service.md b/src/operation/service.md new file mode 100644 index 0000000..68d05d2 --- /dev/null +++ b/src/operation/service.md @@ -0,0 +1 @@ +# Services and service dependencies diff --git a/src/operation/system-bus.md b/src/operation/system-bus.md index 0bb413c..b105838 100644 --- a/src/operation/system-bus.md +++ b/src/operation/system-bus.md @@ -6,26 +6,36 @@ The `syndicate-server` program has a number of closely-related functions. In many ways, it is a reification of the [system layer concept](../glossary.md#system-layer) itself. - 1. It provides a root **system bus** service for use by other programs. In this way, it is +It provides: + + 1. A **[root system bus](#the-root-system-bus)** service for use by other programs. In this way, it is analogous to D-Bus. - 2. It provides a [**gatekeeper** service](./builtin/gatekeeper.md), for exposing + 2. A general-purpose **[service dependency tracking facility](./service.md)**. + + 3. A [**gatekeeper** service](./builtin/gatekeeper.md), for exposing [capabilities](../glossary.md#capability) to running objects as (potentially long-lived) [macaroon](../glossary.md#macaroon)-style "sturdy references", plus TCP/IP- and Unix-socket-based **[transports](./builtin/relay-listener.md)** for accessing capabilities through the gatekeeper. - 3. It provides a limited **[configuration scripting language](./scripting.md)** suitable for + 4. A limited **[configuration scripting language](./scripting.md)** suitable for programming [dataspaces](../glossary.md#dataspace) with simple reactive behaviours. - 4. It provides an [`inotify`](https://en.wikipedia.org/wiki/Inotify)-based **[configuration + 5. An [`inotify`](https://en.wikipedia.org/wiki/Inotify)-based **[configuration loader](./builtin/config-watcher.md)** which loads and executes configuration files written in the scripting language. - 5. It provides [**process supervision** and **dependency tracking**](./builtin/daemon.md) - services for starting other programs. + 6. [**Process startup and supervision**](./builtin/daemon.md) + services for running external programs. -## The main system bus +The program can also be used as an "inferior" bus. For example, there may be a per-user bus, or +a per-session bus, or both. Each bus would appropriately scope the lifetime of its supervised +processes. + +Finally, it can be used completely standalone, outside a Synit context. + +## The root system bus The [`synit-pid1`](./index.md#sbinsynit-pid1) program invokes `syndicate-server` like this: