From a498ab4cb1b81c096158507f5510d944b4f4b8b3 Mon Sep 17 00:00:00 2001 From: Christopher Tom Date: Mon, 6 Dec 2021 09:45:25 -1000 Subject: [PATCH] Correct LiteIpcPoolReInit, update for LiteIPC storage optimization. Change-Id: I576539c5152ee01f8ed633c6caf77005e4c9a4da --- en/readme/liteipc_driver.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/en/readme/liteipc_driver.md b/en/readme/liteipc_driver.md index 5079d0cf5b0..1ff23354a66 100644 --- a/en/readme/liteipc_driver.md +++ b/en/readme/liteipc_driver.md @@ -87,10 +87,9 @@ The `IPC_CMS_CMD` request provides various service related utility functions to LiteIPC includes utility functions for the kernel to manage the IPC system. `OsLiteIpcInit` initializes the IPC system and must be called before it can be used. -`LiteIpcPoolInit` performs basic initialization of a ProcIpcInfo. Called by the kernel on task creation to initialize the IPC variables in the task's control block. -`LiteIpcPoolReInit` initializes the IPC variables of a child task from it's parent's task. Called by the kernel on the creation of child tasks for basic initialization. -`LiteIpcPoolDelete` removes a process' IPC memory pool allocated by memory mapping and all the process' access rights. Called by the kernel on process deletion for automatic memory and IPC resource management. -`LiteIpcRemoveServiceHandle` deregisters a service, clearing out the service task's message list and the list of processes with access rights to the service and sending death notification messages to any services with a set IPC task which had access. Death notification messages are only sent once, if there is an error in the send (**ENOMEM**) the recipient will not get the death notification. Death notification messages set target.token to the sevice handle of the service which terminated. Called by the kernel on task deletion for automatic IPC resource management. +`LiteIpcPoolReInit` creates and initializes the process control block IPC variables for a child process from its parent's process. Called by the kernel on the creation of child processes for basic initialization. +`LiteIpcPoolDestroy` removes a process' IPC memory pool allocated by memory mapping and all the process' access rights. Also responsible for freeing memory, used for per-process IPC variables, which the system dynamically allocates the first time a process opens `LITEIPC_DRIVER`. Called by the kernel on process deletion for automatic memory and IPC resource management. +`LiteIpcRemoveServiceHandle` deregisters a service, clearing out the service task's message list and the list of processes with access rights to the service and sending death notification messages to any services with a set IPC task which had access. Death notification messages are only sent once, if there is an error in the send (**ENOMEM**) the recipient will not get the death notification. Death notification messages set target.token to the sevice handle of the service which terminated. Also responsible for freeing memory, used for per-task IPC variables, which the system dynamically allocates the first time a task sends a valid message or initiates a request including **RECV**. Called by the kernel on task deletion for automatic IPC resource management. ### Sample code 1. Initialization before we can use LiteIPC. -- Gitee