RT-Thread RTOS 1.2.0
An open source embedded real-time operating system
载入中...
搜索中...
未找到
ipc.c 文件参考
#include <rtthread.h>
#include <rthw.h>
#include <rtdbg.h>
+ ipc.c 的引用(Include)关系图:

浏览该文件的源代码.

宏定义

#define DBG_TAG   "kernel.ipc"
 
#define DBG_LVL   DBG_INFO
 
#define GET_MESSAGEBYTE_ADDR(msg)
 

函数

rt_inline rt_err_t _ipc_object_init (struct rt_ipc_object *ipc)
 
struct rt_threadrt_susp_list_dequeue (rt_list_t *susp_list, rt_err_t thread_error)
 
rt_err_t rt_susp_list_resume_all (rt_list_t *susp_list, rt_err_t thread_error)
 
rt_err_t rt_susp_list_resume_all_irq (rt_list_t *susp_list, rt_err_t thread_error, struct rt_spinlock *lock)
 
rt_err_t rt_susp_list_enqueue (rt_list_t *susp_list, rt_thread_t thread, int ipc_flags)
 
void rt_susp_list_print (rt_list_t *list)
 
rt_err_t rt_sem_init (rt_sem_t sem, const char *name, rt_uint32_t value, rt_uint8_t flag)
 
 RTM_EXPORT (rt_sem_init)
 
rt_err_t rt_sem_detach (rt_sem_t sem)
 
 RTM_EXPORT (rt_sem_detach)
 
rt_sem_t rt_sem_create (const char *name, rt_uint32_t value, rt_uint8_t flag)
 
 RTM_EXPORT (rt_sem_create)
 
rt_err_t rt_sem_delete (rt_sem_t sem)
 
 RTM_EXPORT (rt_sem_delete)
 
rt_err_t rt_sem_take (rt_sem_t sem, rt_int32_t time)
 
 RTM_EXPORT (rt_sem_take)
 
rt_err_t rt_sem_take_interruptible (rt_sem_t sem, rt_int32_t time)
 
 RTM_EXPORT (rt_sem_take_interruptible)
 
rt_err_t rt_sem_take_killable (rt_sem_t sem, rt_int32_t time)
 
 RTM_EXPORT (rt_sem_take_killable)
 
rt_err_t rt_sem_trytake (rt_sem_t sem)
 
 RTM_EXPORT (rt_sem_trytake)
 
rt_err_t rt_sem_release (rt_sem_t sem)
 
 RTM_EXPORT (rt_sem_release)
 
rt_err_t rt_sem_control (rt_sem_t sem, int cmd, void *arg)
 
 RTM_EXPORT (rt_sem_control)
 
rt_inline rt_uint8_t _mutex_update_priority (struct rt_mutex *mutex)
 
rt_inline rt_uint8_t _thread_get_mutex_priority (struct rt_thread *thread)
 
rt_inline void _thread_update_priority (struct rt_thread *thread, rt_uint8_t priority, int suspend_flag)
 
rt_err_t rt_mutex_init (rt_mutex_t mutex, const char *name, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mutex_init)
 
rt_err_t rt_mutex_detach (rt_mutex_t mutex)
 
 RTM_EXPORT (rt_mutex_detach)
 
void rt_mutex_drop_thread (rt_mutex_t mutex, rt_thread_t thread)
 
rt_uint8_t rt_mutex_setprioceiling (rt_mutex_t mutex, rt_uint8_t priority)
 
 RTM_EXPORT (rt_mutex_setprioceiling)
 
rt_uint8_t rt_mutex_getprioceiling (rt_mutex_t mutex)
 
 RTM_EXPORT (rt_mutex_getprioceiling)
 
rt_mutex_t rt_mutex_create (const char *name, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mutex_create)
 
rt_err_t rt_mutex_delete (rt_mutex_t mutex)
 
 RTM_EXPORT (rt_mutex_delete)
 
rt_err_t rt_mutex_take (rt_mutex_t mutex, rt_int32_t time)
 
 RTM_EXPORT (rt_mutex_take)
 
rt_err_t rt_mutex_take_interruptible (rt_mutex_t mutex, rt_int32_t time)
 
 RTM_EXPORT (rt_mutex_take_interruptible)
 
rt_err_t rt_mutex_take_killable (rt_mutex_t mutex, rt_int32_t time)
 
 RTM_EXPORT (rt_mutex_take_killable)
 
rt_err_t rt_mutex_trytake (rt_mutex_t mutex)
 
 RTM_EXPORT (rt_mutex_trytake)
 
rt_err_t rt_mutex_release (rt_mutex_t mutex)
 
 RTM_EXPORT (rt_mutex_release)
 
rt_err_t rt_mutex_control (rt_mutex_t mutex, int cmd, void *arg)
 
 RTM_EXPORT (rt_mutex_control)
 
rt_err_t rt_event_init (rt_event_t event, const char *name, rt_uint8_t flag)
 
 RTM_EXPORT (rt_event_init)
 
rt_err_t rt_event_detach (rt_event_t event)
 
 RTM_EXPORT (rt_event_detach)
 
rt_event_t rt_event_create (const char *name, rt_uint8_t flag)
 
 RTM_EXPORT (rt_event_create)
 
rt_err_t rt_event_delete (rt_event_t event)
 
 RTM_EXPORT (rt_event_delete)
 
rt_err_t rt_event_send (rt_event_t event, rt_uint32_t set)
 
 RTM_EXPORT (rt_event_send)
 
rt_err_t rt_event_recv (rt_event_t event, rt_uint32_t set, rt_uint8_t option, rt_int32_t timeout, rt_uint32_t *recved)
 
 RTM_EXPORT (rt_event_recv)
 
rt_err_t rt_event_recv_interruptible (rt_event_t event, rt_uint32_t set, rt_uint8_t option, rt_int32_t timeout, rt_uint32_t *recved)
 
 RTM_EXPORT (rt_event_recv_interruptible)
 
rt_err_t rt_event_recv_killable (rt_event_t event, rt_uint32_t set, rt_uint8_t option, rt_int32_t timeout, rt_uint32_t *recved)
 
 RTM_EXPORT (rt_event_recv_killable)
 
rt_err_t rt_event_control (rt_event_t event, int cmd, void *arg)
 
 RTM_EXPORT (rt_event_control)
 
rt_err_t rt_mb_init (rt_mailbox_t mb, const char *name, void *msgpool, rt_size_t size, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mb_init)
 
rt_err_t rt_mb_detach (rt_mailbox_t mb)
 
 RTM_EXPORT (rt_mb_detach)
 
rt_mailbox_t rt_mb_create (const char *name, rt_size_t size, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mb_create)
 
rt_err_t rt_mb_delete (rt_mailbox_t mb)
 
 RTM_EXPORT (rt_mb_delete)
 
rt_err_t rt_mb_send_wait (rt_mailbox_t mb, rt_ubase_t value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_send_wait)
 
rt_err_t rt_mb_send_wait_interruptible (rt_mailbox_t mb, rt_ubase_t value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_send_wait_interruptible)
 
rt_err_t rt_mb_send_wait_killable (rt_mailbox_t mb, rt_ubase_t value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_send_wait_killable)
 
rt_err_t rt_mb_send (rt_mailbox_t mb, rt_ubase_t value)
 
 RTM_EXPORT (rt_mb_send)
 
rt_err_t rt_mb_send_interruptible (rt_mailbox_t mb, rt_ubase_t value)
 
 RTM_EXPORT (rt_mb_send_interruptible)
 
rt_err_t rt_mb_send_killable (rt_mailbox_t mb, rt_ubase_t value)
 
 RTM_EXPORT (rt_mb_send_killable)
 
rt_err_t rt_mb_urgent (rt_mailbox_t mb, rt_ubase_t value)
 
 RTM_EXPORT (rt_mb_urgent)
 
rt_err_t rt_mb_recv (rt_mailbox_t mb, rt_ubase_t *value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_recv)
 
rt_err_t rt_mb_recv_interruptible (rt_mailbox_t mb, rt_ubase_t *value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_recv_interruptible)
 
rt_err_t rt_mb_recv_killable (rt_mailbox_t mb, rt_ubase_t *value, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mb_recv_killable)
 
rt_err_t rt_mb_control (rt_mailbox_t mb, int cmd, void *arg)
 
 RTM_EXPORT (rt_mb_control)
 
rt_err_t rt_mq_init (rt_mq_t mq, const char *name, void *msgpool, rt_size_t msg_size, rt_size_t pool_size, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mq_init)
 
rt_err_t rt_mq_detach (rt_mq_t mq)
 
 RTM_EXPORT (rt_mq_detach)
 
rt_mq_t rt_mq_create (const char *name, rt_size_t msg_size, rt_size_t max_msgs, rt_uint8_t flag)
 
 RTM_EXPORT (rt_mq_create)
 
rt_err_t rt_mq_delete (rt_mq_t mq)
 
 RTM_EXPORT (rt_mq_delete)
 
rt_err_t rt_mq_send_wait (rt_mq_t mq, const void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_send_wait)
 
rt_err_t rt_mq_send_wait_interruptible (rt_mq_t mq, const void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_send_wait_interruptible)
 
rt_err_t rt_mq_send_wait_killable (rt_mq_t mq, const void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_send_wait_killable)
 
rt_err_t rt_mq_send (rt_mq_t mq, const void *buffer, rt_size_t size)
 
 RTM_EXPORT (rt_mq_send)
 
rt_err_t rt_mq_send_interruptible (rt_mq_t mq, const void *buffer, rt_size_t size)
 
 RTM_EXPORT (rt_mq_send_interruptible)
 
rt_err_t rt_mq_send_killable (rt_mq_t mq, const void *buffer, rt_size_t size)
 
 RTM_EXPORT (rt_mq_send_killable)
 
rt_err_t rt_mq_urgent (rt_mq_t mq, const void *buffer, rt_size_t size)
 
 RTM_EXPORT (rt_mq_urgent)
 
rt_ssize_t rt_mq_recv (rt_mq_t mq, void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_recv)
 
rt_ssize_t rt_mq_recv_interruptible (rt_mq_t mq, void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_recv_interruptible)
 
rt_ssize_t rt_mq_recv_killable (rt_mq_t mq, void *buffer, rt_size_t size, rt_int32_t timeout)
 
 RTM_EXPORT (rt_mq_recv_killable)
 
rt_err_t rt_mq_control (rt_mq_t mq, int cmd, void *arg)
 
 RTM_EXPORT (rt_mq_control)
 

宏定义说明

◆ DBG_TAG

#define DBG_TAG   "kernel.ipc"

在文件 ipc.c54 行定义.

◆ DBG_LVL

#define DBG_LVL   DBG_INFO

在文件 ipc.c55 行定义.

◆ GET_MESSAGEBYTE_ADDR

#define GET_MESSAGEBYTE_ADDR ( msg)
值:
((struct rt_mq_message *) msg + 1)

在文件 ipc.c58 行定义.