Changeset 457 for trunk/kernel/libk/remote_sem.h
- Timestamp:
- Aug 2, 2018, 11:47:13 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/libk/remote_sem.h
r23 r457 25 25 #define _SEMAPHORE_H_ 26 26 27 #include <hal_ types.h>27 #include <hal_kernel_types.h> 28 28 #include <xlist.h> 29 29 #include <remote_spinlock.h> … … 77 77 * This function implements the SEM_INIT operation. 78 78 * It allocates memory for a remote semaphore in reference cluster, using a RPC if required, 79 * and initializes it, using remote accesses. 79 * and initializes it, using remote accesses from values defined by the <vaddr> and <value> 80 * arguments. It uses also a remote access to return the extended pointer on the semaphore 81 * in the buffer identified by the <buf_xp> argument. 80 82 ********************************************************************************************* 81 * @ vaddr : semaphore virtual address, used as identifier. 82 * @ value : semaphore initial value. 83 * @ returns 0 if success / returns ENOMEM if error. 83 * @ vaddr : [in] semaphore virtual address, used as identifier. 84 * @ value : [in] semaphore initial value. 85 * @ sem_xp_xp : [out] extended pointer on buffer to store extended pointer on semaphore. 86 * @ returns 0 if success / returns -1 if no memory. 84 87 ********************************************************************************************/ 85 88 error_t remote_sem_create( intptr_t vaddr, 86 uint32_t value ); 89 uint32_t value, 90 xptr_t sem_xp_xp ); 87 91 88 92 /****************************yy*************************************************************** … … 91 95 * reference cluster, using a RPC if required. 92 96 ********************************************************************************************* 93 * @ sem_xp : extended pointer on semaphore.97 * @ sem_xp : [in] extended pointer on semaphore. 94 98 ********************************************************************************************/ 95 99 void remote_sem_destroy( xptr_t sem_xp ); … … 102 106 * waiting queue, block the thread, and yield. 103 107 ********************************************************************************************* 104 * @ sem_xp : extended pointer on semaphore.108 * @ sem_xp : [in] extended pointer on semaphore. 105 109 ********************************************************************************************/ 106 110 void remote_sem_wait( xptr_t sem_xp ); … … 111 115 * - If the waiting queue is not empty, it wakes up the first waiting thread. 112 116 ********************************************************************************************* 113 * @ sem_xp : extended pointer on semaphore.117 * @ sem_xp : [in] extended pointer on semaphore. 114 118 ********************************************************************************************/ 115 119 void remote_sem_post( xptr_t sem_xp ); … … 119 123 * It returns in the <data> buffer the semaphore current value. 120 124 ********************************************************************************************* 121 * @ sem_xp : extended pointer on semaphore.122 * @ data : [out] returned value.125 * @ sem_xp : [in] extended pointer on semaphore. 126 * @ data : [out] local pointer on buffer for returned value. 123 127 ********************************************************************************************/ 124 128 void remote_sem_get_value( xptr_t sem_xp,
Note: See TracChangeset
for help on using the changeset viewer.