From: AceVest Date: Wed, 12 Aug 2020 07:33:35 +0000 (+0800) Subject: ... X-Git-Url: http://zhaoyanbai.com/repos/host.html?a=commitdiff_plain;h=26fc49adf9883af4a8390544046baa7fd2b02ffd;p=acecode.git ... --- diff --git a/learn/go/ucos_vs_tos.go b/learn/go/ucos_vs_tos.go new file mode 100644 index 0000000..a2aea8b --- /dev/null +++ b/learn/go/ucos_vs_tos.go @@ -0,0 +1,275 @@ +package main + +import "fmt" + +var ucos = []string{ + "OS_ERR_NONE", + "OS_ERR_A", + "OS_ERR_ACCEPT_ISR", + "OS_ERR_B", + "OS_ERR_C", + "OS_ERR_CREATE_ISR", + "OS_ERR_D", + "OS_ERR_DEL_ISR", + "OS_ERR_E", + "OS_ERR_F", + "OS_ERR_FATAL_RETURN", + "OS_ERR_FLAG_GRP_DEPLETED", + "OS_ERR_FLAG_NOT_RDY", + "OS_ERR_FLAG_PEND_OPT", + "OS_ERR_FLUSH_ISR", + "OS_ERR_G", + "OS_ERR_H", + "OS_ERR_I", + "OS_ERR_ILLEGAL_CREATE_RUN_TIME", + "OS_ERR_INT_Q", + "OS_ERR_INT_Q_FULL", + "OS_ERR_INT_Q_SIZE", + "OS_ERR_INT_Q_STK_INVALID", + "OS_ERR_INT_Q_STK_SIZE_INVALID", + "OS_ERR_ILLEGAL_DEL_RUN_TIME", + "OS_ERR_J", + "OS_ERR_K", + "OS_ERR_L", + "OS_ERR_LOCK_NESTING_OVF", + "OS_ERR_M", + "OS_ERR_MEM_CREATE_ISR", + "OS_ERR_MEM_FULL", + "OS_ERR_MEM_INVALID_P_ADDR", + "OS_ERR_MEM_INVALID_BLKS", + "OS_ERR_MEM_INVALID_PART", + "OS_ERR_MEM_INVALID_P_BLK", + "OS_ERR_MEM_INVALID_P_MEM", + "OS_ERR_MEM_INVALID_P_DATA", + "OS_ERR_MEM_INVALID_SIZE", + "OS_ERR_MEM_NO_FREE_BLKS", + "OS_ERR_MSG_POOL_EMPTY", + "OS_ERR_MSG_POOL_NULL_PTR", + "OS_ERR_MUTEX_NOT_OWNER", + "OS_ERR_MUTEX_OWNER", + "OS_ERR_MUTEX_NESTING", + "OS_ERR_MUTEX_OVF", + "OS_ERR_N", + "OS_ERR_NAME", + "OS_ERR_NO_MORE_ID_AVAIL", + "OS_ERR_O", + "OS_ERR_OBJ_CREATED", + "OS_ERR_OBJ_DEL", + "OS_ERR_OBJ_PTR_NULL", + "OS_ERR_OBJ_TYPE", + "OS_ERR_OPT_INVALID", + "OS_ERR_OS_NOT_RUNNING", + "OS_ERR_OS_RUNNING", + "OS_ERR_OS_NOT_INIT", + "OS_ERR_OS_NO_APP_TASK", + "OS_ERR_P", + "OS_ERR_PEND_ABORT", + "OS_ERR_PEND_ABORT_ISR", + "OS_ERR_PEND_ABORT_NONE", + "OS_ERR_PEND_ABORT_SELF", + "OS_ERR_PEND_DEL", + "OS_ERR_PEND_ISR", + "OS_ERR_PEND_LOCKED", + "OS_ERR_PEND_WOULD_BLOCK", + "OS_ERR_POST_NULL_PTR", + "OS_ERR_POST_ISR", + "OS_ERR_PRIO_EXIST", + "OS_ERR_PRIO", + "OS_ERR_PRIO_INVALID", + "OS_ERR_PTR_INVALID", + "OS_ERR_Q", + "OS_ERR_Q_FULL", + "OS_ERR_Q_EMPTY", + "OS_ERR_Q_MAX", + "OS_ERR_Q_SIZE", + "OS_ERR_R", + "OS_ERR_REG_ID_INVALID", + "OS_ERR_ROUND_ROBIN_1", + "OS_ERR_ROUND_ROBIN_DISABLED", + "OS_ERR_S", + "OS_ERR_SCHED_INVALID_TIME_SLICE", + "OS_ERR_SCHED_LOCK_ISR", + "OS_ERR_SCHED_LOCKED", + "OS_ERR_SCHED_NOT_LOCKED", + "OS_ERR_SCHED_UNLOCK_ISR", + "OS_ERR_SEM_OVF", + "OS_ERR_SET_ISR", + "OS_ERR_STAT_RESET_ISR", + "OS_ERR_STAT_PRIO_INVALID", + "OS_ERR_STAT_STK_INVALID", + "OS_ERR_STAT_STK_SIZE_INVALID", + "OS_ERR_STATE_INVALID", + "OS_ERR_STATUS_INVALID", + "OS_ERR_STK_INVALID", + "OS_ERR_STK_SIZE_INVALID", + "OS_ERR_STK_LIMIT_INVALID", + "OS_ERR_T", + "OS_ERR_TASK_CHANGE_PRIO_ISR", + "OS_ERR_TASK_CREATE_ISR", + "OS_ERR_TASK_DEL", + "OS_ERR_TASK_DEL_IDLE", + "OS_ERR_TASK_DEL_INVALID", + "OS_ERR_TASK_DEL_ISR", + "OS_ERR_TASK_INVALID", + "OS_ERR_TASK_NO_MORE_TCB", + "OS_ERR_TASK_NOT_DLY", + "OS_ERR_TASK_NOT_EXIST", + "OS_ERR_TASK_NOT_SUSPENDED", + "OS_ERR_TASK_OPT", + "OS_ERR_TASK_RESUME_ISR", + "OS_ERR_TASK_RESUME_PRIO", + "OS_ERR_TASK_RESUME_SELF", + "OS_ERR_TASK_RUNNING", + "OS_ERR_TASK_STK_CHK_ISR", + "OS_ERR_TASK_SUSPENDED", + "OS_ERR_TASK_SUSPEND_IDLE", + "OS_ERR_TASK_SUSPEND_INT_HANDLER", + "OS_ERR_TASK_SUSPEND_ISR", + "OS_ERR_TASK_SUSPEND_PRIO", + "OS_ERR_TASK_WAITING", + "OS_ERR_TASK_SUSPEND_CTR_OVF", + "OS_ERR_TCB_INVALID", + "OS_ERR_TLS_ID_INVALID", + "OS_ERR_TLS_ISR", + "OS_ERR_TLS_NO_MORE_AVAIL", + "OS_ERR_TLS_NOT_EN", + "OS_ERR_TLS_DESTRUCT_ASSIGNED", + "OS_ERR_TICK_PRIO_INVALID", + "OS_ERR_TICK_STK_INVALID", + "OS_ERR_TICK_STK_SIZE_INVALID", + "OS_ERR_TICK_WHEEL_SIZE", + "OS_ERR_TIME_DLY_ISR", + "OS_ERR_TIME_DLY_RESUME_ISR", + "OS_ERR_TIME_GET_ISR", + "OS_ERR_TIME_INVALID_HOURS", + "OS_ERR_TIME_INVALID_MINUTES", + "OS_ERR_TIME_INVALID_SECONDS", + "OS_ERR_TIME_INVALID_MILLISECONDS", + "OS_ERR_TIME_NOT_DLY", + "OS_ERR_TIME_SET_ISR", + "OS_ERR_TIME_ZERO_DLY", + "OS_ERR_TIMEOUT", + "OS_ERR_TMR_INACTIVE", + "OS_ERR_TMR_INVALID_DEST", + "OS_ERR_TMR_INVALID_DLY", + "OS_ERR_TMR_INVALID_PERIOD", + "OS_ERR_TMR_INVALID_STATE", + "OS_ERR_TMR_INVALID", + "OS_ERR_TMR_ISR", + "OS_ERR_TMR_NO_CALLBACK", + "OS_ERR_TMR_NON_AVAIL", + "OS_ERR_TMR_PRIO_INVALID", + "OS_ERR_TMR_STK_INVALID", + "OS_ERR_TMR_STK_SIZE_INVALID", + "OS_ERR_TMR_STOPPED", + "OS_ERR_TMR_INVALID_CALLBACK", + "OS_ERR_U", + "OS_ERR_V", + "OS_ERR_W", + "OS_ERR_X", + "OS_ERR_Y", + "OS_ERR_YIELD_ISR", + "OS_ERR_Z", +} + +var tos = []string{ + "K_ERR_NONE", + "K_ERR_BARRIER_COUNT_INVALID", + "K_ERR_BARRIER_OVERFLOW", + "K_ERR_BITMAP_EXCEED", + "K_ERR_BIN_HEAP_FULL", + "K_ERR_BIN_HEAP_EMPTY", + "K_ERR_BIN_HEAP_ITEM_SIZE_NOT_MATCH", + "K_ERR_COMPLETION_OVERFLOW", + "K_ERR_COUNTDOWNLATCH_OVERFLOW", + "K_ERR_DELAY_ZERO", + "K_ERR_DELAY_FOREVER", + "K_ERR_EVENT_PEND_OPT_INVALID", + "K_ERR_IN_IRQ", + "K_ERR_KNL_NOT_RUNNING", + "K_ERR_KNL_RUNNING", + "K_ERR_LOCK_NESTING_OVERFLOW", + "K_ERR_MMBLK_POOL_FULL", + "K_ERR_MMBLK_POOL_EMPTY", + "K_ERR_MMBLK_INVALID_BLK_SIZE", + "K_ERR_MMBLK_INVALID_POOL_ADDR", + "K_ERR_MMHEAP_INVALID_POOL_ADDR", + "K_ERR_MMHEAP_INVALID_POOL_SIZE", + "K_ERR_MMHEAP_POOL_OVERFLOW", + "K_ERR_MMHEAP_POOL_ALREADY_EXIST", + "K_ERR_MMHEAP_POOL_NOT_EXIST", + "K_ERR_MUTEX_NOT_OWNER", + "K_ERR_MUTEX_NESTING", + "K_ERR_MUTEX_NESTING_OVERFLOW", + "K_ERR_OBJ_PTR_NULL", + "K_ERR_OBJ_INVALID", + "K_ERR_OBJ_INVALID_ALLOC_TYPE", + "K_ERR_OUT_OF_MEMORY", + "K_ERR_PEND_NOWAIT", + "K_ERR_PEND_SCHED_LOCKED", + "K_ERR_PEND_ABNORMAL", + "K_ERR_PEND_TIMEOUT", + "K_ERR_PEND_DESTROY", + "K_ERR_PEND_OWNER_DIE", + "K_ERR_PM_DEVICE_ALREADY_REG", + "K_ERR_PM_DEVICE_OVERFLOW", + "K_ERR_PM_WKUP_SOURCE_NOT_INSTALL", + "K_ERR_PRIO_Q_EMPTY", + "K_ERR_PRIO_Q_FULL", + "K_ERR_PRIO_Q_SLOT_NOT_TAKEN", + "K_ERR_PRIO_Q_ITEM_SIZE_NOT_MATCH", + "K_ERR_RING_Q_FULL", + "K_ERR_RING_Q_EMPTY", + "K_ERR_RING_Q_ITEM_SIZE_NOT_MATCH", + "K_ERR_RWLOCK_READERS_TO_MANY", + "K_ERR_RWLOCK_IS_READING", + "K_ERR_RWLOCK_IS_WRITTING", + "K_ERR_RWLOCK_NOT_READING", + "K_ERR_RWLOCK_NOT_WRITTING", + "K_ERR_RWLOCK_NOT_TAKEN", + "K_ERR_RWLOCK_WAITING_WRITERS_TO_MANY", + "K_ERR_SCHED_LOCKED", + "K_ERR_SCHED_NOT_LOCKED", + "K_ERR_SEM_OVERFLOW", + "K_ERR_TASK_ALREADY_CREATED", + "K_ERR_TASK_DESTROY_IDLE", + "K_ERR_TASK_NOT_DELAY", + "K_ERR_TASK_PRIO_INVALID", + "K_ERR_TASK_RESUME_SELF", + "K_ERR_TASK_SUSPENDED", + "K_ERR_TASK_SUSPEND_IDLE", + "K_ERR_TASK_STK_OVERFLOW", + "K_ERR_TASK_STK_SIZE_INVALID", + "K_ERR_TASK_OUT_OF_MEMORY", + "K_ERR_TICKLESS_WKUP_ALARM_NOT_INSTALLED", + "K_ERR_TICKLESS_WKUP_ALARM_NO_INIT", + "K_ERR_TICKLESS_WKUP_ALARM_INIT_FAILED", + "K_ERR_TIMER_INACTIVE", + "K_ERR_TIMER_DELAY_FOREVER", + "K_ERR_TIMER_PERIOD_FOREVER", + "K_ERR_TIMER_INVALID_DELAY", + "K_ERR_TIMER_INVALID_PERIOD", + "K_ERR_TIMER_INVALID_STATE", + "K_ERR_TIMER_INVALID_OPT", + "K_ERR_TIMER_STOPPED", + "K_ERR_TIMER_RUNNING", +} + +func main() { + m := make(map[string]string) + + fmt.Printf("ucos errcode cnt: %v\n", len(ucos)) + fmt.Printf("tos errcode cnt: %v\n", len(tos)) + + for _, e := range ucos { + k := e[3:] + m[k] = e + } + + for _, e := range tos { + k := e[2:] + if _, ok := m[k]; ok { + fmt.Println(e) + } + } +}