summaryrefslogtreecommitdiff
path: root/content/cockpit/dbus-powerful-ipc.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/cockpit/dbus-powerful-ipc.md')
-rw-r--r--content/cockpit/dbus-powerful-ipc.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/content/cockpit/dbus-powerful-ipc.md b/content/cockpit/dbus-powerful-ipc.md
new file mode 100644
index 0000000..17e4285
--- /dev/null
+++ b/content/cockpit/dbus-powerful-ipc.md
@@ -0,0 +1,36 @@
+Title: DBus is powerful IPC
+Date: 2014-11-04
+Category: Linux
+Tags: dbus, linux
+Slug: d-bus-is-powerful-ipc
+
+D-Bus is powerful IPC Cockpit is heavily built around DBus. We send DBus over our
+[WebSocket transport](https://github.com/cockpit-project/cockpit/blob/master/doc/protocol.md),
+and marshal them in JSON.
+
+DBus is powerful, with lots of capabilities. Not all projects use all of these, but so many of
+these capabilities are what allow Cockpit to implement its UI.
+
+ * Method Call Transactions
+ * Object Oriented
+ * Efficient Signalling
+ * Properties and notifications
+ * Race free watching of entire Object trees for changes
+ * Broadcasting
+ * Discovery
+ * Introspection
+ * Policy
+ * Activation
+ * Synchronization
+ * Type-safe Marshalling
+ * Caller Credentials
+ * Security
+ * Debug Monitoring
+ * File Descriptor Passing
+ * Language agnostic
+ * Network transparency
+ * No trust required
+ * High-level error concept
+ * Adhoc type definitions
+
+Lennart goes into these further [in a kdbus talk](http://youtu.be/HPbQzm_iz_k?t=2m6s), as well as some of the weaknesses of DBus.