Apache NuttX is a mature, real-time embedded operating system (RTOS) https://nuttx.apache.org/
Find a file
ligd 6e68dde445 sem: fix assert failed when open CONFIG_PRIORITY_INHERITANCE
set CONFIG_PRIORITY_INHERITANCE=y
set CONFIG_SEM_PREALLOCHOLDERS=0 or CONFIG_SEM_PREALLOCHOLDERS=8

    #24 0x4dcab71 in __assert assert/lib_assert.c:37
    #25 0x4d6b0e9 in nxsem_destroyholder semaphore/sem_holder.c:602
    #26 0x4d80cf7 in nxsem_destroy semaphore/sem_destroy.c:80
    #27 0x4d80db9 in sem_destroy semaphore/sem_destroy.c:120
    #28 0x4dcb077 in nxmutex_destroy misc/lib_mutex.c:122
    #29 0x4dc6611 in pipecommon_freedev pipes/pipe_common.c:117
    #30 0x4dc7fdc in pipecommon_close pipes/pipe_common.c:397
    #31 0x4ed4f6d in file_close vfs/fs_close.c:78
    #32 0x6a91133 in local_free local/local_conn.c:184
    #33 0x6a92a9c in local_release local/local_release.c:129
    #34 0x6a91d1a in local_subref local/local_conn.c:271
    #35 0x6a75767 in local_close local/local_sockif.c:797
    #36 0x4e978f6 in psock_close socket/net_close.c:102
    #37 0x4eed1b9 in sock_file_close socket/socket.c:115
    #38 0x4ed4f6d in file_close vfs/fs_close.c:78
    #39 0x4ed1459 in nx_close_from_tcb inode/fs_files.c:754
    #40 0x4ed1501 in nx_close inode/fs_files.c:781
    #41 0x4ed154a in close inode/fs_files.c:819
    #42 0x6bcb9ce in property_get kvdb/client.c:307
    #43 0x6bcd465 in property_get_int32 kvdb/common.c:270
    #44 0x5106c9a in tz_offset_restore app/miwear_bluetooth.c:745
    #45 0x510893f in miwear_bluetooth_main app/miwear_bluetooth.c:1033
    #46 0x4dcf5c8 in nxtask_startup sched/task_startup.c:70
    #47 0x4d70873 in nxtask_start task/task_start.c:134
    #48 0x4e04a07 in pre_start sim/sim_initialstate.c:52

Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-11 21:34:37 +08:00
.github Update github pull request template. 2024-10-11 15:45:36 +08:00
arch arm_gicv2_dump: optimize gic dump 2024-10-11 19:56:41 +08:00
audio audio: add AUDIO_MSG_IOERR msg to meida service 2024-09-30 08:43:22 +08:00
binfmt binfmt/libelf: Fix return code 2024-10-11 13:52:46 +08:00
boards Revert "sim/note: add note related configuration" 2024-10-11 21:30:19 +08:00
cmake Simplify BOARD_MEMORY_RANGE initialization logic 2024-10-09 15:41:48 +08:00
crypto nuttx/crypto: export asynchronous calling process 2024-09-28 13:05:28 +08:00
Documentation docs: add gprof usage documentation 2024-10-10 18:46:51 +08:00
drivers include/nuttx.h: replace all the align macros to nuttx version 2024-10-11 16:55:43 +08:00
dummy build: add initial cmake build system 2023-07-08 13:50:48 +08:00
fs littlefs:remove the '/' in the end of relpath in mkdir 2024-10-11 15:46:02 +08:00
graphics Revert "build depend:Revert Make.dep intermediate ddc file" 2024-09-15 19:29:47 +08:00
include rpmsg_port_spi_slave: fix compile error when enable RPMSG_PORT_SPI_SLAVE only 2024-10-11 21:20:45 +08:00
libs libm/newlib: remove -Wno-maybe-uninitialized 2024-10-11 19:52:52 +08:00
mm mm/kconfig: Remove unnecessary dependencies 2024-10-11 20:01:46 +08:00
net net/local: fix the return address is incorrect when accept 2024-10-11 01:31:20 +08:00
openamp openamp/libmetal.defs: fix OpenAMP upgrade err 2024-10-09 23:32:58 +08:00
pass1 Revert "build depend:Revert Make.dep intermediate ddc file" 2024-09-15 19:29:47 +08:00
sched sem: fix assert failed when open CONFIG_PRIORITY_INHERITANCE 2024-10-11 21:34:37 +08:00
syscall sched: export sched_getcpu API in AMP mode 2024-10-09 15:21:25 +08:00
tools Revert "sim/note: add note related configuration" 2024-10-11 21:30:19 +08:00
video Revert "build depend:Revert Make.dep intermediate ddc file" 2024-09-15 19:29:47 +08:00
wireless Revert "build depend:Revert Make.dep intermediate ddc file" 2024-09-15 19:29:47 +08:00
.asf.yaml feat: add a GitHub action to lint the YAML files 2020-12-15 09:52:04 -06:00
.gitignore add .gdb_history to .gitignore 2024-09-14 12:14:12 +08:00
.pre-commit-config.yaml Created pre-commit config file 2024-08-19 21:40:56 +02:00
.yamllint feat: add a GitHub action to lint the YAML files 2020-12-15 09:52:04 -06:00
AUTHORS AUTHORS: add Tomek CEDRO to the list 2023-03-07 14:15:55 +01:00
CMakeLists.txt cmake:enhance compile options for custom toolchain,implement the REVERSE 2024-10-09 13:48:11 +08:00
CONTRIBUTING.md Update github pull request template. 2024-10-11 15:45:36 +08:00
INVIOLABLES.md
Kconfig note:unified note filtering at runtime. 2024-10-11 11:55:17 +08:00
LICENSE drivers/i3c: support i3c driver model 2024-09-24 23:36:50 +08:00
Makefile tools: migrate to SPDX identifier 2024-09-10 23:11:11 +08:00
NOTICE Remove the double blank line from source files 2022-02-20 20:10:14 +01:00
README.md Gathering community recommendations 2023-10-28 13:55:56 +08:00
ReleaseNotes Documentation: move ReleaseNotes 2023-09-26 20:41:00 +08:00

POSIX Badge License Issues Tracking Badge Contributors GitHub Build Badge Documentation Badge

Apache NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOSs (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).

For brevity, many parts of the documentation will refer to Apache NuttX as simply NuttX.

Getting Started

First time on NuttX? Read the Getting Started guide! If you don't have a board available, NuttX has its own simulator that you can run on terminal.

Documentation

You can find the current NuttX documentation on the Documentation Page.

Alternatively, you can build the documentation yourself by following the Documentation Build Instructions.

The old NuttX documentation is still available in the Apache wiki.

Supported Boards

NuttX supports a wide variety of platforms. See the full list on the Supported Platforms page.

Contributing

If you wish to contribute to the NuttX project, read the Contributing guidelines for information on Git usage, coding standard, workflow and the NuttX principles.

License

The code in this repository is under either the Apache 2 license, or a license compatible with the Apache 2 license. See the License Page for more information.