For systems with userspace, the sys_sem exist in user memory working as counter semaphore for user mode thread. The implemention of sys_sem is based on k_futex. And the majority of the synchronization operations are performed in user mode to reduce the calling of system call. And for systems without userspace enabled, sys_sem behaves like k_sem. Fixes: #15139. Signed-off-by: Wentong Wu <wentong.wu@intel.com>
28 lines
457 B
CMake
28 lines
457 B
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
zephyr_sources_if_kconfig(base64.c)
|
|
|
|
zephyr_sources(
|
|
crc32_sw.c
|
|
crc16_sw.c
|
|
crc8_sw.c
|
|
crc7_sw.c
|
|
fdtable.c
|
|
hex.c
|
|
mempool.c
|
|
rb.c
|
|
sem.c
|
|
thread_entry.c
|
|
timeutil.c
|
|
work_q.c
|
|
)
|
|
|
|
zephyr_sources_ifdef(CONFIG_JSON_LIBRARY json.c)
|
|
|
|
zephyr_sources_if_kconfig(printk.c)
|
|
|
|
zephyr_sources_if_kconfig(ring_buffer.c)
|
|
|
|
zephyr_sources_ifdef(CONFIG_ASSERT assert.c)
|
|
|
|
zephyr_sources_ifdef(CONFIG_USERSPACE mutex.c)
|