From 7fe60435bce6595a9c58a9bfd8244d74b5320e96 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Tue, 15 Jan 2013 08:46:13 +0100 Subject: Import DirectFB141_2k11R3_beta5 --- Source/FusionDale/README | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 Source/FusionDale/README (limited to 'Source/FusionDale/README') diff --git a/Source/FusionDale/README b/Source/FusionDale/README new file mode 100755 index 0000000..04c3264 --- /dev/null +++ b/Source/FusionDale/README @@ -0,0 +1,27 @@ +FusionDale +---------- + +FusionDale is applied Fusion and will be a collection of different +services for use by applications and other libraries. + +There's a component manager (Coma) which allows any process to create a +component - identified by only a string at the moment - and provide methods +and notifications. Other processes can get access to the component and call +methods or listen to notifications. Multiple component managers can exist +with each one identified globally by a string. + +You have the ability to create 'thread local shared memory' and reuse it to +avoid alloc/free for every RPC call with data not already in shared memory. +Allocation will happen on first call or if the buffer needs to be extended, +but there's a method to free it in case a big allocation has been done or +just for cleanup. + +Be aware that only method calls are synchronous. Notifications are sent out +and execution returns to the sender immediately. Component implementors can +register a callback being called when there's no more recipient for a notification +that was sent, e.g. to free the shared data associated with the notification. + +FusionDale also contains a messaging API for notifications and data distribution +using shared memory with lifecycle management. The attached data is freed after +all recipients have processed the message, or exited, or died. However, this code +is more complex than it needs to be due to some relevant improvements in Fusion. -- cgit