This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 04283e6dd2f2fff4463fad24534fcc1a739fdef8
Author: wangjianyu3 <[email protected]>
AuthorDate: Thu Aug 27 18:45:36 2026 +0800

    boards/sim: switch all nsh defconfigs to nxinit entrypoint
    
    Switch every sim/sim/sim defconfig whose init entry point was nsh_main
    (81 configs) to nxinit (init_main). nsh now runs as a "console sh"
    service started by init.rc instead of being the top-level init task.
    
    Each switched defconfig only gains the nxinit-essential keys (minimal
    delta, regenerated so no unrelated options leak in):
    - CONFIG_INIT_ENTRYPOINT="init_main"
    - CONFIG_SYSTEM_NXINIT=y plus its Kconfig deps that were not already set:
      CONFIG_EXPERIMENTAL, CONFIG_LIBC_EXECFUNCS, CONFIG_SCHED_CHILD_STATUS
      (which depends on CONFIG_SCHED_HAVE_PARENT)
    - CONFIG_ETC_ROMFS=y / CONFIG_FS_ROMFS=y to ship init.rc via ROMFS
    No stack-size overrides are added: INIT_STACKSIZE and SYSTEM_NSH_STACKSIZE
    keep their Kconfig defaults (DEFAULT_TASK_STACKSIZE).
    
    Five configs (dynconns, module, module32, sotest, sotest32) had
    CONFIG_BINFMT_DISABLE=y, which blocks CONFIG_LIBC_EXECFUNCS and thus
    CONFIG_SYSTEM_NXINIT. Since nxinit spawns services via exec(), binfmt is
    re-enabled in those five. They also enable CONFIG_LIBC_ENVPATH but did
    not ship a /bin, so nxinit's posix_spawnp("sh") resolved via PATH and
    failed with ENOENT ("Error Starting service 'console': 2"). Add
    CONFIG_FS_BINFS=y and CONFIG_PATH_INITIAL="/bin" to those five so the
    builtin apps are visible under /bin and the console service starts,
    matching the working sim:nsh config.
    
    citest additionally needed CONFIG_ETC_ROMFSDEVNO=1 (matching the 53
    other sim configs that already set it to avoid the same collision):
    sim_registerblockdevice() (arch/sim/src/sim/sim_blockdevice.c, called
    from up_initialize() before any application task starts) unconditionally
    registers a FAT ramdisk at /dev/ram0 whenever CONFIG_FS_FAT is set, and
    citest is one of the few switched configs with CONFIG_FS_FAT=y that had
    never overridden CONFIG_ETC_ROMFSDEVNO away from its Kconfig default of
    0. With nxinit, romdisk_register() for /etc's ROMFS at that same minor
    number then fails with -EEXIST and nxinit aborts with "Error Opening
    /etc/init.d/init.rc" since it treats a missing init.rc as fatal;
    nsh_main() silently tolerated the identical failure before this switch
    (logs "init: open failed: 2" and continues to the nsh prompt), so the
    /etc mount had actually never worked for citest even pre-nxinit.
    
    Add boards/sim/sim/sim/src/etc/init.d/init.rc (registers a "console sh"
    service guarded by CONFIG_SYSTEM_NSH; "on init" starts it), shipped via
    ROMFS in the Make build (RCSRCS) and CMake (nuttx_add_romfs()), both gated
    on CONFIG_ETC_ROMFS && CONFIG_SYSTEM_NXINIT so non-nxinit configs are
    unaffected.
    
    Switching to nxinit means nsh_main()/nsh_initialize() (which used to run
    /etc/init.d/rc.sysinit and rcS to mount /tmp and /data) no longer runs on
    the 46 sim configs that already had CONFIG_ETC_ROMFS=y on master, so
    those mounts would otherwise be lost. /bin (binfs) and /proc (procfs) are
    unaffected: sim_bringup() (called from board_late_initialize(), before
    any entrypoint task starts, independent of nsh_main/init_main) already
    mounts them unconditionally on master, and this PR does not touch that
    file. init.rc's "on init" action reproduces the rest of rc.sysinit's
    mounts (tmpfs, or the FAT-backed /tmp ramdisk via mkrd + mkfatfs + mount
    for boards without CONFIG_FS_TMPFS) plus the hostfs /data mount that
    used to live in rcS, inlining them directly instead of spawning the
    standalone rcsysinit/rcS scripts through a "service ... oneshot"
    indirection. nxinit has no builtin mount/mkrd/mkfatfs yet, so each of
    these commands still resolves through its posix_spawnp() sh fallback;
    that limitation is unchanged by this PR and is left for a follow-up
    (either a native mount() call in sim_bringup() for the fixed-path
    mounts, or a builtin in nxinit). The 6 configs that also enable
    CONFIG_FS_FAT get an explicit CONFIG_ETC_FATDEVNO=2 so this ramdisk does
    not collide with /etc's romdisk.
    
    Now that every sim nsh_main + CONFIG_ETC_ROMFS config has switched to
    nxinit, boards/sim/sim/sim/src/etc/init.d/rcS and rc.sysinit are dead
    code: no remaining sim config calls nsh_initialize() (the only caller of
    those scripts), so remove both files outright and drop them from
    boards/sim/sim/sim/src/CMakeLists.txt and Makefile's ROMFS RCSRCS list
    (init.rc is shipped instead, as above, only when CONFIG_SYSTEM_NXINIT=y).
    The remaining ROMFS-enabled sim configs whose entrypoint isn't nsh_main
    (nxlines/nxwm/toybox) never executed rcS/rc.sysinit either (their
    entrypoint never calls nsh_initialize()), so they lose nothing but a few
    unused bytes from their ROMFS image; sim:nxlines was rebuilt to confirm
    it still links and boots with an empty etc/init.d/.
    
    init.rc also uses <nuttx/macro.h>'s CONCATENATE() instead of a local
    CONCAT_()/CONCAT() pair, matching existing NuttX convention instead of
    duplicating a macro the tree already provides.
    
    sim:windows and sim:windows64 are excluded and stay on nsh_main: they
    build under MSVC in CI, and CONFIG_SYSTEM_NXINIT pulls in
    apps/system/nxinit/action.c, which fails to compile under MSVC because
    list_peek_head_type() (include/nuttx/list.h) uses a GCC
    statement-expression the MSVC C compiler does not support; separately,
    CONFIG_ETC_ROMFS routes them through nuttx_add_romfs()'s POSIX-shell
    genromfs/xxd/sed custom build step, which cmd.exe cannot parse either.
    Both are pre-existing MSVC gaps in nxinit/the ROMFS CMake helper, not
    something this defconfig-only PR should fix, so these two configs are
    left on nsh_main.
    
    Testing (sim, host gcc): sim:nsh boots into nxinit with nsh spawned as
    its service (init task = init_main, sh = its child), and now shows the
    same five mount points as master (/bin /data /etc /proc /tmp), matching
    the pre-switch nsh_main baseline; /data round-trips a write to the host
    filesystem. The five binfmt configs reach an interactive nsh prompt
    (help/uname work) instead of failing to start the console; e.g.
    sim:module:
      BEFORE fix:  Error Starting service 'console': 2
      AFTER  fix:  nsh> help / nsh> uname -a  (console up)
    init.rc's inlined FAT/tmpfs mount was verified by preprocessing it with
    cpp under both CONFIG_FS_FAT and CONFIG_FS_TMPFS: the expansion matches
    rc.sysinit's mount sequence (CONCATENATE() resolves to /dev/ram2, etc.).
    sim:citest specifically verified with gdb: before the ETC_ROMFSDEVNO fix,
    register_blockdriver("/dev/ram0") is called twice (once by
    sim_registerblockdevice() from up_initialize(), once by nx_romfsetc());
    the second call returns -EEXIST and nxinit aborts. After setting
    CONFIG_ETC_ROMFSDEVNO=1, sim:citest boots cleanly into nxinit (ps shows
    init_main waiting on its child sh, matching sim:nsh), and the compiled
    ROMFS image contains only init.rc. sim:nxlines, a non-nxinit
    CONFIG_ETC_ROMFS config, was rebuilt to confirm it still links and boots
    with the now-empty etc/init.d/ (rcS/rc.sysinit removed).
    
    Assisted-by: opencode-agent/claude-sonnet-5
    Signed-off-by: wangjianyu3 <[email protected]>
---
 boards/sim/sim/sim/configs/adb/defconfig           |  4 ++-
 boards/sim/sim/sim/configs/alsa/defconfig          |  5 ++-
 boards/sim/sim/sim/configs/asan/defconfig          |  8 ++++-
 boards/sim/sim/sim/configs/baromonitor/defconfig   |  5 ++-
 boards/sim/sim/sim/configs/bas/defconfig           |  6 +++-
 boards/sim/sim/sim/configs/bastest/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/bluetooth/defconfig     |  6 +++-
 boards/sim/sim/sim/configs/bthcisock/defconfig     |  6 +++-
 boards/sim/sim/sim/configs/btuart/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/can/defconfig           |  8 ++++-
 boards/sim/sim/sim/configs/citest/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/crypto/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/dropbear/defconfig      |  4 ++-
 boards/sim/sim/sim/configs/duktape/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/dynconns/defconfig      | 10 ++++--
 boards/sim/sim/sim/configs/elf/defconfig           |  9 +++++-
 boards/sim/sim/sim/configs/foc/defconfig           |  5 ++-
 boards/sim/sim/sim/configs/ipforward/defconfig     |  6 +++-
 boards/sim/sim/sim/configs/lely-sock/defconfig     |  8 ++++-
 boards/sim/sim/sim/configs/lely/defconfig          |  8 ++++-
 boards/sim/sim/sim/configs/libcxxtest/defconfig    |  5 ++-
 boards/sim/sim/sim/configs/linuxi2c/defconfig      |  7 ++++-
 boards/sim/sim/sim/configs/login/defconfig         |  5 ++-
 boards/sim/sim/sim/configs/lua/defconfig           |  5 ++-
 boards/sim/sim/sim/configs/matter/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/minibasic/defconfig     |  6 +++-
 boards/sim/sim/sim/configs/minmea/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/mnemofs/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/module/defconfig        | 10 ++++--
 boards/sim/sim/sim/configs/module32/defconfig      | 10 ++++--
 boards/sim/sim/sim/configs/nand/defconfig          |  5 ++-
 boards/sim/sim/sim/configs/nimble/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/note/defconfig          |  8 ++++-
 boards/sim/sim/sim/configs/nsh/defconfig           |  5 ++-
 boards/sim/sim/sim/configs/nsh2/defconfig          |  5 ++-
 boards/sim/sim/sim/configs/nshcromfs/defconfig     |  9 +++++-
 boards/sim/sim/sim/configs/nxcamera/defconfig      |  5 ++-
 boards/sim/sim/sim/configs/nxdoom/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/nxmbrtu/defconfig       |  7 ++++-
 boards/sim/sim/sim/configs/nxscope/defconfig       |  7 ++++-
 boards/sim/sim/sim/configs/pf_ieee802154/defconfig | 11 ++++++-
 boards/sim/sim/sim/configs/pktradio/defconfig      | 11 ++++++-
 boards/sim/sim/sim/configs/posix_spawn/defconfig   |  9 +++++-
 boards/sim/sim/sim/configs/posix_test/defconfig    |  4 ++-
 boards/sim/sim/sim/configs/quickjs/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/rc/defconfig            |  7 ++++-
 boards/sim/sim/sim/configs/romfs/defconfig         |  5 ++-
 boards/sim/sim/sim/configs/rpproxy/defconfig       |  7 ++++-
 boards/sim/sim/sim/configs/rpproxy_uart/defconfig  |  7 ++++-
 .../sim/sim/sim/configs/rpproxy_virtio/defconfig   |  7 ++++-
 boards/sim/sim/sim/configs/rpserver/defconfig      |  7 ++++-
 boards/sim/sim/sim/configs/rpserver_uart/defconfig |  7 ++++-
 .../sim/sim/sim/configs/rpserver_virtio/defconfig  |  7 ++++-
 boards/sim/sim/sim/configs/rtptools/defconfig      |  6 +++-
 boards/sim/sim/sim/configs/rust/defconfig          |  5 ++-
 boards/sim/sim/sim/configs/segger/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/sensor/defconfig        |  7 ++++-
 boards/sim/sim/sim/configs/sixlowpan/defconfig     | 11 ++++++-
 boards/sim/sim/sim/configs/smartfs/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/smp/defconfig           |  8 ++++-
 boards/sim/sim/sim/configs/sotest/defconfig        | 10 ++++--
 boards/sim/sim/sim/configs/sotest32/defconfig      | 10 ++++--
 boards/sim/sim/sim/configs/sqlite/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/tcpblaster/defconfig    |  6 +++-
 boards/sim/sim/sim/configs/tcploop/defconfig       |  6 +++-
 boards/sim/sim/sim/configs/tflm/defconfig          |  5 ++-
 boards/sim/sim/sim/configs/toywasm/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/txmorse/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/udgram/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/unionfs/defconfig       |  6 +++-
 boards/sim/sim/sim/configs/usbdev/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/usbhost/defconfig       |  6 +++-
 boards/sim/sim/sim/configs/userfs/defconfig        |  6 +++-
 boards/sim/sim/sim/configs/usrsocktest/defconfig   |  8 ++++-
 boards/sim/sim/sim/configs/ustream/defconfig       |  5 ++-
 boards/sim/sim/sim/configs/vpnkit/defconfig        |  5 ++-
 boards/sim/sim/sim/configs/wakaama/defconfig       |  6 +++-
 boards/sim/sim/sim/configs/wamr/defconfig          |  5 ++-
 .../sim/sim/configs/watchdog-notifier/defconfig    |  5 ++-
 boards/sim/sim/sim/configs/xipfs/defconfig         |  9 +++++-
 boards/sim/sim/sim/configs/zipfs/defconfig         |  5 ++-
 boards/sim/sim/sim/src/CMakeLists.txt              |  7 +++--
 boards/sim/sim/sim/src/Makefile                    |  4 ++-
 .../sim/sim/src/etc/init.d/{rc.sysinit => init.rc} | 36 +++++++++++-----------
 boards/sim/sim/sim/src/etc/init.d/rcS              | 27 ----------------
 85 files changed, 461 insertions(+), 134 deletions(-)

diff --git a/boards/sim/sim/sim/configs/adb/defconfig 
b/boards/sim/sim/sim/configs/adb/defconfig
index d09f4a1e8b6..0261f8c300a 100644
--- a/boards/sim/sim/sim/configs/adb/defconfig
+++ b/boards/sim/sim/sim/configs/adb/defconfig
@@ -28,13 +28,14 @@ CONFIG_CRYPTO_SW_AES=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
+CONFIG_EXPERIMENTAL=y
 CONFIG_FSUTILS_PASSWD=y
 CONFIG_FSUTILS_PASSWD_READONLY=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBUV=y
@@ -72,6 +73,7 @@ CONFIG_SYSLOG_MAX_CHANNELS=2
 CONFIG_SYSTEM_ADBD=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_SYSTEM_TELNETD_PORT=2323
 CONFIG_TLS_TASK_NELEM=4
diff --git a/boards/sim/sim/sim/configs/alsa/defconfig 
b/boards/sim/sim/sim/configs/alsa/defconfig
index 267f0524b70..86bb07baae8 100644
--- a/boards/sim/sim/sim/configs/alsa/defconfig
+++ b/boards/sim/sim/sim/configs/alsa/defconfig
@@ -29,6 +29,7 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -37,7 +38,7 @@ CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -47,6 +48,7 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
@@ -54,6 +56,7 @@ CONFIG_SIM_M32=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_NXLOOPER=y
 CONFIG_SYSTEM_NXPLAYER=y
 CONFIG_SYSTEM_NXRECORDER=y
diff --git a/boards/sim/sim/sim/configs/asan/defconfig 
b/boards/sim/sim/sim/configs/asan/defconfig
index 87163824e26..b7ff2411702 100644
--- a/boards/sim/sim/sim/configs/asan/defconfig
+++ b/boards/sim/sim/sim/configs/asan/defconfig
@@ -16,14 +16,18 @@ CONFIG_CANCELLATION_POINTS=y
 CONFIG_DEBUG_FEATURES=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FRAME_POINTER=y
 CONFIG_FS_AIO=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_NAMED_SEMAPHORES=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_INIT_ARGS="\"-c\", \"ostest;poweroff\""
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_MM_UMM_CUSTOMIZE_MANAGER=y
 CONFIG_NSH_BUILTIN_APPS=y
@@ -32,6 +36,7 @@ CONFIG_PTHREAD_MUTEX_TYPES=y
 CONFIG_PTHREAD_MUTEX_UNSAFE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RR_INTERVAL=10
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_LPWORK=y
 CONFIG_SCHED_WAITPID=y
@@ -40,6 +45,7 @@ CONFIG_SIG_EVTHREAD=y
 CONFIG_SIM_ASAN=y
 CONFIG_SIM_UBSAN=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
 CONFIG_TESTING_OSTEST_AIO=y
 CONFIG_TLS_NCLEANUP=1
diff --git a/boards/sim/sim/sim/configs/baromonitor/defconfig 
b/boards/sim/sim/sim/configs/baromonitor/defconfig
index b01c7b3263e..022000b02ec 100644
--- a/boards/sim/sim/sim/configs/baromonitor/defconfig
+++ b/boards/sim/sim/sim/configs/baromonitor/defconfig
@@ -32,6 +32,7 @@ CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_BAROMONITOR=y
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -45,7 +46,7 @@ CONFIG_GPIO_LOWER_HALF=y
 CONFIG_GRAPHICS_LVGL=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -77,6 +78,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DRIVER=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -92,6 +94,7 @@ CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_GCOV=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
 CONFIG_UORB=y
 CONFIG_UORB_GENERATOR=y
diff --git a/boards/sim/sim/sim/configs/bas/defconfig 
b/boards/sim/sim/sim/configs/bas/defconfig
index dfd03e179f4..e55fc25a407 100644
--- a/boards/sim/sim/sim/configs/bas/defconfig
+++ b/boards/sim/sim/sim/configs/bas/defconfig
@@ -18,13 +18,15 @@ CONFIG_DEBUG_SYMBOLS=y
 CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_BAS=y
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
@@ -34,8 +36,10 @@ CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/bastest/defconfig 
b/boards/sim/sim/sim/configs/bastest/defconfig
index f75b713d563..6c5bff095d3 100644
--- a/boards/sim/sim/sim/configs/bastest/defconfig
+++ b/boards/sim/sim/sim/configs/bastest/defconfig
@@ -33,6 +33,7 @@ CONFIG_EXAMPLES_BASTEST=y
 CONFIG_EXAMPLES_BASTEST_DEVMINOR=6
 CONFIG_EXAMPLES_BASTEST_DEVPATH="/dev/ram6"
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -42,7 +43,7 @@ CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_BAS=y
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
@@ -58,8 +59,10 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/bluetooth/defconfig 
b/boards/sim/sim/sim/configs/bluetooth/defconfig
index d4c4b267177..4c29c24cd20 100644
--- a/boards/sim/sim/sim/configs/bluetooth/defconfig
+++ b/boards/sim/sim/sim/configs/bluetooth/defconfig
@@ -32,13 +32,15 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="NuttX-SIM"
@@ -56,10 +58,12 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_PREALLOC_MQ_MSGS=64
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_DAY=3
 CONFIG_START_MONTH=4
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_BLUETOOTH=y
diff --git a/boards/sim/sim/sim/configs/bthcisock/defconfig 
b/boards/sim/sim/sim/configs/bthcisock/defconfig
index 2f67b722665..32e666a4b87 100644
--- a/boards/sim/sim/sim/configs/bthcisock/defconfig
+++ b/boards/sim/sim/sim/configs/bthcisock/defconfig
@@ -33,13 +33,15 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="NuttX-SIM"
@@ -57,11 +59,13 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_PREALLOC_MQ_MSGS=64
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HCISOCKET=y
 CONFIG_START_DAY=3
 CONFIG_START_MONTH=4
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_BLUETOOTH=y
diff --git a/boards/sim/sim/sim/configs/btuart/defconfig 
b/boards/sim/sim/sim/configs/btuart/defconfig
index d99ae5f48e9..897a62d4737 100644
--- a/boards/sim/sim/sim/configs/btuart/defconfig
+++ b/boards/sim/sim/sim/configs/btuart/defconfig
@@ -18,13 +18,17 @@ CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DRIVERS_BLUETOOTH=y
 CONFIG_DRIVERS_WIRELESS=y
 CONFIG_ETC_ROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HCISOCKET=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_UART_BTH4=y
diff --git a/boards/sim/sim/sim/configs/can/defconfig 
b/boards/sim/sim/sim/configs/can/defconfig
index ab194989c83..78b8030f8e4 100644
--- a/boards/sim/sim/sim/configs/can/defconfig
+++ b/boards/sim/sim/sim/configs/can/defconfig
@@ -22,12 +22,16 @@ CONFIG_CANUTILS_LIBCANUTILS=y
 CONFIG_CAN_EXTID=y
 CONFIG_CAN_FD=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_CAN=y
 CONFIG_EXAMPLES_CAN_READ=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NET=y
 CONFIG_NETDEV_IFINDEX=y
 CONFIG_NET_CAN=y
@@ -39,6 +43,7 @@ CONFIG_NSH_DISABLE_PS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -49,3 +54,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/citest/defconfig 
b/boards/sim/sim/sim/configs/citest/defconfig
index 96f435aa996..6bbbba4b759 100644
--- a/boards/sim/sim/sim/configs/citest/defconfig
+++ b/boards/sim/sim/sim/configs/citest/defconfig
@@ -40,6 +40,7 @@ CONFIG_DEV_GPIO=y
 CONFIG_DEV_LOOP=y
 CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_HELLOXX=y
@@ -47,6 +48,7 @@ CONFIG_EXAMPLES_PIPE=y
 CONFIG_EXAMPLES_POPEN=y
 CONFIG_EXAMPLES_ROMFS=y
 CONFIG_EXAMPLES_USRSOCKTEST=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FRAME_POINTER=y
@@ -67,7 +69,7 @@ CONFIG_FS_TMPFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_HAVE_CXX=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NBUFFERS=128
 CONFIG_IOB_NCHAINS=4
 CONFIG_IOEXPANDER=y
@@ -135,6 +137,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_POPEN=y
 CONFIG_SYSTEM_SETLOGMASK=y
 CONFIG_TESTING_CMOCKA=y
diff --git a/boards/sim/sim/sim/configs/crypto/defconfig 
b/boards/sim/sim/sim/configs/crypto/defconfig
index 520fffa8e1c..328892acede 100644
--- a/boards/sim/sim/sim/configs/crypto/defconfig
+++ b/boards/sim/sim/sim/configs/crypto/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -43,7 +44,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -63,11 +64,13 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_CMOCKA=y
 CONFIG_TESTING_CRYPTO=y
diff --git a/boards/sim/sim/sim/configs/dropbear/defconfig 
b/boards/sim/sim/sim/configs/dropbear/defconfig
index fed9cf6f076..e3a729482ef 100644
--- a/boards/sim/sim/sim/configs/dropbear/defconfig
+++ b/boards/sim/sim/sim/configs/dropbear/defconfig
@@ -33,6 +33,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -45,7 +46,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -87,6 +88,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TESTING_CMOCKA=y
 CONFIG_TESTING_CRYPTO=y
diff --git a/boards/sim/sim/sim/configs/duktape/defconfig 
b/boards/sim/sim/sim/configs/duktape/defconfig
index 0dbb95f003d..68005ffe87a 100644
--- a/boards/sim/sim/sim/configs/duktape/defconfig
+++ b/boards/sim/sim/sim/configs/duktape/defconfig
@@ -29,6 +29,7 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -38,7 +39,7 @@ CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_DUKTAPE=y
 CONFIG_INTERPRETERS_DUKTAPE_STACKSIZE=32768
 CONFIG_LIBC_ENVPATH=y
@@ -54,8 +55,10 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/dynconns/defconfig 
b/boards/sim/sim/sim/configs/dynconns/defconfig
index df646edceb3..0e75bdcdcd3 100644
--- a/boards/sim/sim/sim/configs/dynconns/defconfig
+++ b/boards/sim/sim/sim/configs/dynconns/defconfig
@@ -12,7 +12,6 @@ CONFIG_ARCH_BOARD="sim"
 CONFIG_ARCH_BOARD_SIM=y
 CONFIG_ARCH_CHIP="sim"
 CONFIG_ARCH_SIM=y
-CONFIG_BINFMT_DISABLE=y
 CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARDCTL_ROMDISK=y
 CONFIG_BOARD_LOOPSPERMSEC=0
@@ -23,11 +22,15 @@ CONFIG_CODECS_BASE64=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_ENVPATH=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
 CONFIG_LINE_MAX=200
@@ -111,11 +114,13 @@ CONFIG_NET_USRSOCK=y
 CONFIG_NET_USRSOCK_ALLOC_CONNS=1
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -125,6 +130,7 @@ CONFIG_START_YEAR=2008
 CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_BLUETOOTH=y
 CONFIG_WIRELESS_IEEE802154=y
diff --git a/boards/sim/sim/sim/configs/elf/defconfig 
b/boards/sim/sim/sim/configs/elf/defconfig
index f35caac29b2..b1e4abac8c9 100644
--- a/boards/sim/sim/sim/configs/elf/defconfig
+++ b/boards/sim/sim/sim/configs/elf/defconfig
@@ -24,19 +24,24 @@ CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_ELF=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_ELF=y
 CONFIG_EXAMPLES_ELF_DEVMINOR=6
 CONFIG_EXAMPLES_ELF_DEVPATH="/dev/ram6"
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXECFUNCS_HAVE_SYMTAB=y
 CONFIG_EXECFUNCS_SYSTEM_SYMTAB=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
@@ -48,8 +53,10 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/foc/defconfig 
b/boards/sim/sim/sim/configs/foc/defconfig
index 1e90d602f63..02421a5aac1 100644
--- a/boards/sim/sim/sim/configs/foc/defconfig
+++ b/boards/sim/sim/sim/configs/foc/defconfig
@@ -57,6 +57,7 @@ CONFIG_EXAMPLES_FOC_VBUS_CONST_VALUE=24000
 CONFIG_EXAMPLES_FOC_VELCTRL_PI_KI=10
 CONFIG_EXAMPLES_FOC_VELCTRL_PI_KP=10
 CONFIG_EXAMPLES_FOC_VERBOSE=2
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -69,7 +70,7 @@ CONFIG_INDUSTRY_FOC_FIXED16=y
 CONFIG_INDUSTRY_FOC_FLOAT=y
 CONFIG_INDUSTRY_FOC_HANDLER_PRINT=y
 CONFIG_INDUSTRY_FOC_MODEL_PMSM=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_FLOATINGPOINT=y
@@ -87,6 +88,7 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_SPORADIC=y
 CONFIG_SCHED_WAITPID=y
@@ -94,3 +96,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/ipforward/defconfig 
b/boards/sim/sim/sim/configs/ipforward/defconfig
index 5507e5ccd07..6989f934977 100644
--- a/boards/sim/sim/sim/configs/ipforward/defconfig
+++ b/boards/sim/sim/sim/configs/ipforward/defconfig
@@ -28,13 +28,15 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_IPFORWARD=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="IP-Forward"
@@ -54,6 +56,7 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_LPWORK=y
 CONFIG_SCHED_LPWORKPRIORITY=140
@@ -61,4 +64,5 @@ CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TUN_NINTERFACES=2
diff --git a/boards/sim/sim/sim/configs/lely-sock/defconfig 
b/boards/sim/sim/sim/configs/lely-sock/defconfig
index 54d187993e6..6d505ba6b32 100644
--- a/boards/sim/sim/sim/configs/lely-sock/defconfig
+++ b/boards/sim/sim/sim/configs/lely-sock/defconfig
@@ -34,12 +34,16 @@ CONFIG_CANUTILS_LELYCANOPEN_SYNC=y
 CONFIG_CANUTILS_LELYCANOPEN_TIME=y
 CONFIG_CANUTILS_LELYCANOPEN_TPDO=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_LELYMASTER=y
 CONFIG_EXAMPLES_LELYSLAVE=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NET=y
 CONFIG_NETDEV_IFINDEX=y
 CONFIG_NET_CAN=y
@@ -49,6 +53,7 @@ CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -58,3 +63,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/lely/defconfig 
b/boards/sim/sim/sim/configs/lely/defconfig
index 02642d8ca9b..87b147bdd58 100644
--- a/boards/sim/sim/sim/configs/lely/defconfig
+++ b/boards/sim/sim/sim/configs/lely/defconfig
@@ -38,16 +38,21 @@ CONFIG_CANUTILS_LELYCANOPEN_TPDO=y
 CONFIG_CANUTILS_LELYCANOPEN_WTM=y
 CONFIG_CAN_EXTID=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_LELYMASTER=y
 CONFIG_EXAMPLES_LELYSLAVE=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -57,3 +62,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/libcxxtest/defconfig 
b/boards/sim/sim/sim/configs/libcxxtest/defconfig
index 3ee8bca5a58..bc44dbfeca8 100644
--- a/boards/sim/sim/sim/configs/libcxxtest/defconfig
+++ b/boards/sim/sim/sim/configs/libcxxtest/defconfig
@@ -37,13 +37,14 @@ CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_HELLOXX=y
 CONFIG_EXAMPLES_NETTEST=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXX=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBCXX=y
 CONFIG_LIBCXXABI=y
@@ -82,6 +83,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
@@ -92,6 +94,7 @@ CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_DHCPC_RENEW=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TESTING_CXXTEST=y
 CONFIG_TLS_NELEM=4
diff --git a/boards/sim/sim/sim/configs/linuxi2c/defconfig 
b/boards/sim/sim/sim/configs/linuxi2c/defconfig
index 6f37387569f..56a6e76ec45 100644
--- a/boards/sim/sim/sim/configs/linuxi2c/defconfig
+++ b/boards/sim/sim/sim/configs/linuxi2c/defconfig
@@ -18,15 +18,19 @@ CONFIG_BOARD_LOOPSPERMSEC=0
 CONFIG_BOOT_RUNFROMEXTSRAM=y
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_I2CBUS=y
@@ -34,3 +38,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_I2CTOOL=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/login/defconfig 
b/boards/sim/sim/sim/configs/login/defconfig
index 94da7ca3d9e..6ce0b673ddc 100644
--- a/boards/sim/sim/sim/configs/login/defconfig
+++ b/boards/sim/sim/sim/configs/login/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -43,7 +44,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -64,6 +65,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_WALLTIME_SIGNAL=y
@@ -71,3 +73,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/lua/defconfig 
b/boards/sim/sim/sim/configs/lua/defconfig
index 3a74b98aec6..fc43c2ba44e 100644
--- a/boards/sim/sim/sim/configs/lua/defconfig
+++ b/boards/sim/sim/sim/configs/lua/defconfig
@@ -27,6 +27,7 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_LUA_MODULE=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -36,7 +37,7 @@ CONFIG_FS_PROCFS=y
 CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_LUA=y
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
@@ -65,11 +66,13 @@ CONFIG_PIPES=y
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_CMD_HISTORY=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SERIAL_TERMIOS=y
 CONFIG_SIG_DEFAULT=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TLS_TASK_NELEM=4
 CONFIG_TTY_SIGINT=y
diff --git a/boards/sim/sim/sim/configs/matter/defconfig 
b/boards/sim/sim/sim/configs/matter/defconfig
index ceaadb24873..de54789ecfb 100644
--- a/boards/sim/sim/sim/configs/matter/defconfig
+++ b/boards/sim/sim/sim/configs/matter/defconfig
@@ -34,6 +34,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -46,7 +47,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXX=y
 CONFIG_ICMPv6_AUTOCONF_RDNSS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NBUFFERS=1024
 CONFIG_IOB_THROTTLE=256
 CONFIG_LIBCXX=y
@@ -105,6 +106,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HCISOCKET=y
@@ -116,6 +118,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING6=y
 CONFIG_SYSTEM_PING6_STACKSIZE=4096
 CONFIG_SYSTEM_PING=y
diff --git a/boards/sim/sim/sim/configs/minibasic/defconfig 
b/boards/sim/sim/sim/configs/minibasic/defconfig
index 52bd767ad8b..b0c15556e51 100644
--- a/boards/sim/sim/sim/configs/minibasic/defconfig
+++ b/boards/sim/sim/sim/configs/minibasic/defconfig
@@ -25,13 +25,15 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_MINIBASIC=y
 CONFIG_INTERPRETERS_MINIBASIC_TESTSCRIPT=y
 CONFIG_LIBC_ENVPATH=y
@@ -44,8 +46,10 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/minmea/defconfig 
b/boards/sim/sim/sim/configs/minmea/defconfig
index 6f005a92dee..3dbd6e223f3 100644
--- a/boards/sim/sim/sim/configs/minmea/defconfig
+++ b/boards/sim/sim/sim/configs/minmea/defconfig
@@ -32,6 +32,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -45,7 +46,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_GNSSUTILS_MINMEA_LIB=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -66,9 +67,11 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/mnemofs/defconfig 
b/boards/sim/sim/sim/configs/mnemofs/defconfig
index 8b8b085be3c..5973cb91a00 100644
--- a/boards/sim/sim/sim/configs/mnemofs/defconfig
+++ b/boards/sim/sim/sim/configs/mnemofs/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FRAME_POINTER=y
@@ -45,7 +46,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -74,6 +75,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_ASAN=y
@@ -82,4 +84,5 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_NAND_SIM=y
diff --git a/boards/sim/sim/sim/configs/module/defconfig 
b/boards/sim/sim/sim/configs/module/defconfig
index e78a5ae4488..000194758fd 100644
--- a/boards/sim/sim/sim/configs/module/defconfig
+++ b/boards/sim/sim/sim/configs/module/defconfig
@@ -12,7 +12,6 @@ CONFIG_ARCH_BOARD="sim"
 CONFIG_ARCH_BOARD_SIM=y
 CONFIG_ARCH_CHIP="sim"
 CONFIG_ARCH_SIM=y
-CONFIG_BINFMT_DISABLE=y
 CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARDCTL_ROMDISK=y
 CONFIG_BOARD_LOOPSPERMSEC=0
@@ -22,15 +21,19 @@ CONFIG_CODECS_BASE64=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_LIBTEST=y
 CONFIG_EXAMPLES_MODULE=y
 CONFIG_EXAMPLES_MODULE_DEVMINOR=4
 CONFIG_EXAMPLES_MODULE_DEVPATH="/dev/ram4"
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_ENVPATH=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
 CONFIG_LINE_MAX=200
@@ -60,11 +63,13 @@ CONFIG_NET_UDP=y
 CONFIG_NET_UDP_NOTIFIER=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -74,3 +79,4 @@ CONFIG_START_YEAR=2008
 CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/module32/defconfig 
b/boards/sim/sim/sim/configs/module32/defconfig
index 1929fcc7f8f..72294cb747d 100644
--- a/boards/sim/sim/sim/configs/module32/defconfig
+++ b/boards/sim/sim/sim/configs/module32/defconfig
@@ -12,7 +12,6 @@ CONFIG_ARCH_BOARD="sim"
 CONFIG_ARCH_BOARD_SIM=y
 CONFIG_ARCH_CHIP="sim"
 CONFIG_ARCH_SIM=y
-CONFIG_BINFMT_DISABLE=y
 CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARDCTL_ROMDISK=y
 CONFIG_BOARD_LOOPSPERMSEC=0
@@ -22,14 +21,18 @@ CONFIG_CODECS_BASE64=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_MODULE=y
 CONFIG_EXAMPLES_MODULE_DEVMINOR=4
 CONFIG_EXAMPLES_MODULE_DEVPATH="/dev/ram4"
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_ENVPATH=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
 CONFIG_LINE_MAX=200
@@ -58,11 +61,13 @@ CONFIG_NET_UDP=y
 CONFIG_NET_UDP_NOTIFIER=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -73,3 +78,4 @@ CONFIG_START_YEAR=2008
 CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/nand/defconfig 
b/boards/sim/sim/sim/configs/nand/defconfig
index 470e5308430..c27239b2294 100644
--- a/boards/sim/sim/sim/configs/nand/defconfig
+++ b/boards/sim/sim/sim/configs/nand/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FRAME_POINTER=y
@@ -44,7 +45,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -73,6 +74,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_ASAN=y
@@ -81,4 +83,5 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_NAND_SIM=y
diff --git a/boards/sim/sim/sim/configs/nimble/defconfig 
b/boards/sim/sim/sim/configs/nimble/defconfig
index 24f26690605..095bf583adb 100644
--- a/boards/sim/sim/sim/configs/nimble/defconfig
+++ b/boards/sim/sim/sim/configs/nimble/defconfig
@@ -36,13 +36,15 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_NIMBLE=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="NuttX-SIM"
@@ -64,6 +66,7 @@ CONFIG_PREALLOC_MQ_MSGS=64
 CONFIG_PTHREAD_MUTEX_TYPES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RR_INTERVAL=200
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -73,5 +76,6 @@ CONFIG_SIM_M32=y
 CONFIG_START_DAY=3
 CONFIG_START_MONTH=4
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_BLUETOOTH=y
diff --git a/boards/sim/sim/sim/configs/note/defconfig 
b/boards/sim/sim/sim/configs/note/defconfig
index 59a4d0e7094..c724f83dbf7 100644
--- a/boards/sim/sim/sim/configs/note/defconfig
+++ b/boards/sim/sim/sim/configs/note/defconfig
@@ -21,14 +21,19 @@ CONFIG_DRIVERS_NOTELOG=y
 CONFIG_DRIVERS_NOTERAM_BUFSIZE=204800
 CONFIG_DRIVERS_NOTESNAP=y
 CONFIG_DRIVERS_NOTE_MAX=3
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_PROCFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_FS_ROMFS=y
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_INSTRUMENTATION=y
 CONFIG_SCHED_INSTRUMENTATION_CSECTION=y
@@ -44,4 +49,5 @@ CONFIG_SCHED_WAITPID=y
 CONFIG_SYSTEM_NOTE=y
 CONFIG_SYSTEM_NOTE_DELAY=10
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_TRACE=y
diff --git a/boards/sim/sim/sim/configs/nsh/defconfig 
b/boards/sim/sim/sim/configs/nsh/defconfig
index a54528e94a9..75881fc9067 100644
--- a/boards/sim/sim/sim/configs/nsh/defconfig
+++ b/boards/sim/sim/sim/configs/nsh/defconfig
@@ -29,6 +29,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -41,7 +42,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -66,6 +67,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DRIVER=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -76,4 +78,5 @@ CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_GCOV=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
diff --git a/boards/sim/sim/sim/configs/nsh2/defconfig 
b/boards/sim/sim/sim/configs/nsh2/defconfig
index f9a8789e783..e5aa85bd8d8 100644
--- a/boards/sim/sim/sim/configs/nsh2/defconfig
+++ b/boards/sim/sim/sim/configs/nsh2/defconfig
@@ -29,6 +29,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -41,7 +42,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -61,6 +62,7 @@ CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_PSEUDOFS_FILE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -71,4 +73,5 @@ CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_GCOV=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
diff --git a/boards/sim/sim/sim/configs/nshcromfs/defconfig 
b/boards/sim/sim/sim/configs/nshcromfs/defconfig
index ac346da0f3c..51ae4c8f7c0 100644
--- a/boards/sim/sim/sim/configs/nshcromfs/defconfig
+++ b/boards/sim/sim/sim/configs/nshcromfs/defconfig
@@ -23,15 +23,20 @@ CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_CROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_CROMFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -41,9 +46,11 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_LZF=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_SYSTEM=y
diff --git a/boards/sim/sim/sim/configs/nxcamera/defconfig 
b/boards/sim/sim/sim/configs/nxcamera/defconfig
index 4b0de453abd..3cfb81a5159 100644
--- a/boards/sim/sim/sim/configs/nxcamera/defconfig
+++ b/boards/sim/sim/sim/configs/nxcamera/defconfig
@@ -26,6 +26,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -36,7 +37,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -54,6 +55,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SIM_FBHEIGHT=480
 CONFIG_SIM_FBWIDTH=640
@@ -63,6 +65,7 @@ CONFIG_START_YEAR=2022
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
 CONFIG_SYSTEM_NXCAMERA=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_SYSTEM=y
 CONFIG_VIDEO=y
 CONFIG_VIDEO_FB=y
diff --git a/boards/sim/sim/sim/configs/nxdoom/defconfig 
b/boards/sim/sim/sim/configs/nxdoom/defconfig
index 8c642b66a48..bf70a701768 100644
--- a/boards/sim/sim/sim/configs/nxdoom/defconfig
+++ b/boards/sim/sim/sim/configs/nxdoom/defconfig
@@ -30,6 +30,7 @@ CONFIG_DRIVERS_VIDEO=y
 CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -45,7 +46,7 @@ CONFIG_GAMES_NXDOOM_KBDPATH="/dev/kbd"
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
@@ -66,6 +67,7 @@ CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_PSEUDOFS_FILE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -82,4 +84,5 @@ CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_GCOV=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_VIDEO_FB=y
diff --git a/boards/sim/sim/sim/configs/nxmbrtu/defconfig 
b/boards/sim/sim/sim/configs/nxmbrtu/defconfig
index d879e9d6265..0201df5c9b3 100644
--- a/boards/sim/sim/sim/configs/nxmbrtu/defconfig
+++ b/boards/sim/sim/sim/configs/nxmbrtu/defconfig
@@ -20,14 +20,17 @@ CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_FEATURES=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_NXMBSERVER=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
 CONFIG_INDUSTRY_NXMODBUS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -44,6 +47,7 @@ CONFIG_PSEUDOFS_FILE=y
 CONFIG_READLINE_CMD_HISTORY=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SERIAL_TERMIOS=y
@@ -55,4 +59,5 @@ CONFIG_SIM_WALLTIME_SIGNAL=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_NXMBCLIENT=y
diff --git a/boards/sim/sim/sim/configs/nxscope/defconfig 
b/boards/sim/sim/sim/configs/nxscope/defconfig
index 5068a109bdf..6ade35eb8d3 100644
--- a/boards/sim/sim/sim/configs/nxscope/defconfig
+++ b/boards/sim/sim/sim/configs/nxscope/defconfig
@@ -21,14 +21,17 @@ CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_FEATURES=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_NXSCOPE=y
 CONFIG_EXAMPLES_NXSCOPE_RXBUF_LEN=64
 CONFIG_EXAMPLES_NXSCOPE_SERIAL_PATH="/dev/ttySIM0"
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_RAMMAP=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -45,6 +48,7 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_UART_BUFFER_SIZE=1024
@@ -53,3 +57,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/pf_ieee802154/defconfig 
b/boards/sim/sim/sim/configs/pf_ieee802154/defconfig
index d2b145b088b..328cd23bf51 100644
--- a/boards/sim/sim/sim/configs/pf_ieee802154/defconfig
+++ b/boards/sim/sim/sim/configs/pf_ieee802154/defconfig
@@ -24,17 +24,23 @@ CONFIG_BOARD_LOOPSPERMSEC=51262
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DRIVERS_WIRELESS=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_PFIEEE802154=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_I2C_DRIVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
 CONFIG_IEEE802154_LOOPBACK=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_BUFSIZE=128
 CONFIG_IOB_NBUFFERS=48
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="SAMV71-XULT"
 CONFIG_LINE_MAX=64
 CONFIG_MMCSD=y
@@ -58,11 +64,14 @@ CONFIG_PTHREAD_STACK_DEFAULT=4096
 CONFIG_RAM_SIZE=393216
 CONFIG_RAM_START=0x20400000
 CONFIG_RR_INTERVAL=200
+CONFIG_SCHED_CHILD_STATUS=y
+CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_STANDARD_SERIAL=y
 CONFIG_START_DAY=10
 CONFIG_START_MONTH=3
 CONFIG_START_YEAR=2014
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_IEEE802154=y
diff --git a/boards/sim/sim/sim/configs/pktradio/defconfig 
b/boards/sim/sim/sim/configs/pktradio/defconfig
index 62ddfca1b0c..c99d7edea6a 100644
--- a/boards/sim/sim/sim/configs/pktradio/defconfig
+++ b/boards/sim/sim/sim/configs/pktradio/defconfig
@@ -25,6 +25,9 @@ CONFIG_BOARD_LOOPSPERMSEC=51262
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DRIVERS_WIRELESS=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_NETTEST=y
 CONFIG_EXAMPLES_NETTEST_LOOPBACK=y
 CONFIG_EXAMPLES_NETTEST_SERVERIPv6ADDR_1=0xfe80
@@ -41,15 +44,18 @@ CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_1=0xfe80
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_6=0x00ff
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_7=0xfe00
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_8=0x00a9
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_I2C_DRIVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_BUFSIZE=128
 CONFIG_IOB_NBUFFERS=48
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="SAMV71-XULT"
 CONFIG_LINE_MAX=64
 CONFIG_MMCSD=y
@@ -80,11 +86,14 @@ CONFIG_PTHREAD_STACK_DEFAULT=4096
 CONFIG_RAM_SIZE=393216
 CONFIG_RAM_START=0x20400000
 CONFIG_RR_INTERVAL=200
+CONFIG_SCHED_CHILD_STATUS=y
+CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_STANDARD_SERIAL=y
 CONFIG_START_DAY=10
 CONFIG_START_MONTH=3
 CONFIG_START_YEAR=2014
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_PKTRADIO=y
diff --git a/boards/sim/sim/sim/configs/posix_spawn/defconfig 
b/boards/sim/sim/sim/configs/posix_spawn/defconfig
index 846965aef1b..eee9ab5cc50 100644
--- a/boards/sim/sim/sim/configs/posix_spawn/defconfig
+++ b/boards/sim/sim/sim/configs/posix_spawn/defconfig
@@ -24,19 +24,24 @@ CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_ELF=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_POSIXSPAWN=y
 CONFIG_EXAMPLES_POSIXSPAWN_DEVMINOR=8
 CONFIG_EXAMPLES_POSIXSPAWN_DEVPATH="/dev/ram8"
 CONFIG_EXECFUNCS_HAVE_SYMTAB=y
 CONFIG_EXECFUNCS_SYSTEM_SYMTAB=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -49,9 +54,11 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/mnt/romfs"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_M32=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/posix_test/defconfig 
b/boards/sim/sim/sim/configs/posix_test/defconfig
index 29267fceb3b..51a078e0173 100644
--- a/boards/sim/sim/sim/configs/posix_test/defconfig
+++ b/boards/sim/sim/sim/configs/posix_test/defconfig
@@ -33,6 +33,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_AIO=y
@@ -48,7 +49,7 @@ CONFIG_FS_SHMFS=y
 CONFIG_FS_TMPFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -94,6 +95,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_SYSTEM=y
 CONFIG_TESTING_LTP=y
 CONFIG_TLS_NCLEANUP=4
diff --git a/boards/sim/sim/sim/configs/quickjs/defconfig 
b/boards/sim/sim/sim/configs/quickjs/defconfig
index a8e07f4a592..c5389042791 100644
--- a/boards/sim/sim/sim/configs/quickjs/defconfig
+++ b/boards/sim/sim/sim/configs/quickjs/defconfig
@@ -24,6 +24,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -34,7 +35,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_QUICKJS=y
 CONFIG_INTERPRETERS_QUICKJS_BIGNUM=y
 CONFIG_INTERPRETERS_QUICKJS_FULL=y
@@ -57,6 +58,7 @@ CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_PSEUDOFS_FILE=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SIM_WALLTIME_SIGNAL=y
@@ -64,5 +66,6 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_POPEN=y
 CONFIG_TESTING_OSTEST=y
diff --git a/boards/sim/sim/sim/configs/rc/defconfig 
b/boards/sim/sim/sim/configs/rc/defconfig
index 4c1dd5ecf03..f6b97a6b76a 100644
--- a/boards/sim/sim/sim/configs/rc/defconfig
+++ b/boards/sim/sim/sim/configs/rc/defconfig
@@ -23,10 +23,13 @@ CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_DRIVERS_RC=y
+CONFIG_ETC_ROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_FLOATINGPOINT=y
@@ -38,9 +41,11 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_RC_DUMMY=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_IRTEST=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/romfs/defconfig 
b/boards/sim/sim/sim/configs/romfs/defconfig
index c247fbba260..11c64791b4e 100644
--- a/boards/sim/sim/sim/configs/romfs/defconfig
+++ b/boards/sim/sim/sim/configs/romfs/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_ROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -40,7 +41,7 @@ CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -54,8 +55,10 @@ CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of 
The Day (MOTD). Have
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/rpproxy/defconfig 
b/boards/sim/sim/sim/configs/rpproxy/defconfig
index 18a95878d7f..3c99cf0680e 100644
--- a/boards/sim/sim/sim/configs/rpproxy/defconfig
+++ b/boards/sim/sim/sim/configs/rpproxy/defconfig
@@ -23,13 +23,17 @@ CONFIG_DEV_RPMSG=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
 CONFIG_DRIVERS_VHOST_RNG=y
 CONFIG_DRIVERS_VHOST_RPMSG=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="proxy"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -76,6 +80,7 @@ CONFIG_SYSLOG_RPMSG_SERVER_NAME="server"
 CONFIG_SYSLOG_TIMESTAMP=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_UINPUT_BUTTONS=y
 CONFIG_UINPUT_KEYBOARD=y
diff --git a/boards/sim/sim/sim/configs/rpproxy_uart/defconfig 
b/boards/sim/sim/sim/configs/rpproxy_uart/defconfig
index 1837d1357a0..e13a5d1c197 100644
--- a/boards/sim/sim/sim/configs/rpproxy_uart/defconfig
+++ b/boards/sim/sim/sim/configs/rpproxy_uart/defconfig
@@ -21,13 +21,17 @@ CONFIG_DEBUG_FS_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_RPMSG=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="proxy"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -78,6 +82,7 @@ CONFIG_SYSLOG_RPMSG_SERVER_NAME="server"
 CONFIG_SYSLOG_TIMESTAMP=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_UINPUT_BUTTONS=y
 CONFIG_UINPUT_KEYBOARD=y
diff --git a/boards/sim/sim/sim/configs/rpproxy_virtio/defconfig 
b/boards/sim/sim/sim/configs/rpproxy_virtio/defconfig
index 76b2f8d8f7c..fe6d66aa809 100644
--- a/boards/sim/sim/sim/configs/rpproxy_virtio/defconfig
+++ b/boards/sim/sim/sim/configs/rpproxy_virtio/defconfig
@@ -21,13 +21,17 @@ CONFIG_DEBUG_FS_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_RPMSG=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="proxy"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -73,6 +77,7 @@ CONFIG_SYSLOG_RPMSG_SERVER_NAME="server"
 CONFIG_SYSLOG_TIMESTAMP=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_UINPUT_BUTTONS=y
 CONFIG_UINPUT_KEYBOARD=y
diff --git a/boards/sim/sim/sim/configs/rpserver/defconfig 
b/boards/sim/sim/sim/configs/rpserver/defconfig
index c794040084f..abfdcf2c3c0 100644
--- a/boards/sim/sim/sim/configs/rpserver/defconfig
+++ b/boards/sim/sim/sim/configs/rpserver/defconfig
@@ -24,18 +24,22 @@ CONFIG_DEV_RPMSG_SERVER=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
 CONFIG_DRIVERS_VIRTIO_RNG=y
 CONFIG_DRIVERS_VIRTIO_RPMSG=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS_SERVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOB_BUFSIZE=256
 CONFIG_IOB_NBUFFERS=512
 CONFIG_IOB_THROTTLE=32
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_RPMSG=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="server"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -100,6 +104,7 @@ CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_CUTERM=y
 CONFIG_SYSTEM_CUTERM_DEFAULT_DEVICE="/dev/ttyproxy"
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TTY_SIGINT=y
 CONFIG_UINPUT_BUTTONS=y
diff --git a/boards/sim/sim/sim/configs/rpserver_uart/defconfig 
b/boards/sim/sim/sim/configs/rpserver_uart/defconfig
index 2be6b52044b..23052b2c7de 100644
--- a/boards/sim/sim/sim/configs/rpserver_uart/defconfig
+++ b/boards/sim/sim/sim/configs/rpserver_uart/defconfig
@@ -22,18 +22,22 @@ CONFIG_DEBUG_FS_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_RPMSG_SERVER=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS_SERVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOB_BUFSIZE=256
 CONFIG_IOB_NBUFFERS=512
 CONFIG_IOB_THROTTLE=32
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_RPMSG=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="server"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -101,6 +105,7 @@ CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_CUTERM=y
 CONFIG_SYSTEM_CUTERM_DEFAULT_DEVICE="/dev/ttyproxy"
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TTY_SIGINT=y
 CONFIG_UINPUT_BUTTONS=y
diff --git a/boards/sim/sim/sim/configs/rpserver_virtio/defconfig 
b/boards/sim/sim/sim/configs/rpserver_virtio/defconfig
index c27eeec0157..81eaf95e44a 100644
--- a/boards/sim/sim/sim/configs/rpserver_virtio/defconfig
+++ b/boards/sim/sim/sim/configs/rpserver_virtio/defconfig
@@ -22,18 +22,22 @@ CONFIG_DEBUG_FS_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_RPMSG_SERVER=y
 CONFIG_DEV_SIMPLE_ADDRENV=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_RPMSGSOCKET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_RPMSGFS_SERVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOB_BUFSIZE=256
 CONFIG_IOB_NBUFFERS=512
 CONFIG_IOB_THROTTLE=32
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_RPMSG=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="server"
 CONFIG_MTD=y
 CONFIG_MTD_BYTE_WRITE=y
@@ -97,6 +101,7 @@ CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_CUTERM=y
 CONFIG_SYSTEM_CUTERM_DEFAULT_DEVICE="/dev/ttyproxy"
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TTY_SIGINT=y
 CONFIG_UINPUT_BUTTONS=y
diff --git a/boards/sim/sim/sim/configs/rtptools/defconfig 
b/boards/sim/sim/sim/configs/rtptools/defconfig
index be7bd406614..e263ef504e4 100644
--- a/boards/sim/sim/sim/configs/rtptools/defconfig
+++ b/boards/sim/sim/sim/configs/rtptools/defconfig
@@ -19,17 +19,20 @@ CONFIG_DEBUG_NET_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_DRIVERS_VIDEO=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_FTPC=y
 CONFIG_EXAMPLES_TCPBLASTER=y
 CONFIG_EXAMPLES_TCPECHO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_LITTLEFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
 CONFIG_IDLETHREAD_STACKSIZE=2048
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOB_NBUFFERS=1024
 CONFIG_IOB_NCHAINS=128
@@ -99,6 +102,7 @@ CONFIG_SYSLOG_TIMESTAMP=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
 CONFIG_SYSTEM_NTPC=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING6=y
 CONFIG_SYSTEM_PING=y
 CONFIG_SYSTEM_SYSTEM=y
diff --git a/boards/sim/sim/sim/configs/rust/defconfig 
b/boards/sim/sim/sim/configs/rust/defconfig
index cb35a9b3506..765b5d44c18 100644
--- a/boards/sim/sim/sim/configs/rust/defconfig
+++ b/boards/sim/sim/sim/configs/rust/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO_RUST=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FSUTILS_PASSWD=y
@@ -43,7 +44,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -62,8 +63,10 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/segger/defconfig 
b/boards/sim/sim/sim/configs/segger/defconfig
index aec82117a8a..1ab40854b3e 100644
--- a/boards/sim/sim/sim/configs/segger/defconfig
+++ b/boards/sim/sim/sim/configs/segger/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -41,7 +42,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -60,6 +61,7 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_CRITMONITOR=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_INSTRUMENTATION=y
@@ -73,3 +75,4 @@ CONFIG_START_YEAR=2008
 CONFIG_STREAM_RTT=y
 CONFIG_SYSLOG_RTT=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/sensor/defconfig 
b/boards/sim/sim/sim/configs/sensor/defconfig
index 80682f03d39..5a09830a23b 100644
--- a/boards/sim/sim/sim/configs/sensor/defconfig
+++ b/boards/sim/sim/sim/configs/sensor/defconfig
@@ -22,11 +22,14 @@ CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_FLOATINGPOINT=y
@@ -37,6 +40,7 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SENSORS=y
@@ -48,4 +52,5 @@ CONFIG_SIM_WTGAHRS2_UARTN=0
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_SENSORTEST=y
diff --git a/boards/sim/sim/sim/configs/sixlowpan/defconfig 
b/boards/sim/sim/sim/configs/sixlowpan/defconfig
index a4261390ea6..b9d2ec25ab8 100644
--- a/boards/sim/sim/sim/configs/sixlowpan/defconfig
+++ b/boards/sim/sim/sim/configs/sixlowpan/defconfig
@@ -25,6 +25,9 @@ CONFIG_BOARD_LOOPSPERMSEC=51262
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DRIVERS_WIRELESS=y
+CONFIG_ETC_FATDEVNO=2
+CONFIG_ETC_ROMFS=y
+CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_NETTEST=y
 CONFIG_EXAMPLES_NETTEST_LOOPBACK=y
 CONFIG_EXAMPLES_NETTEST_SERVERIPv6ADDR_1=0xfe80
@@ -41,16 +44,19 @@ CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_1=0xfe80
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_6=0x00ff
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_7=0xfe00
 CONFIG_EXAMPLES_UDPBLASTER_TARGETIPv6_8=0xa9cd
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_I2C_DRIVER=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
 CONFIG_IEEE802154_LOOPBACK=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_BUFSIZE=128
 CONFIG_IOB_NBUFFERS=48
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="SAMV71-XULT"
 CONFIG_LINE_MAX=64
 CONFIG_MMCSD=y
@@ -80,11 +86,14 @@ CONFIG_PTHREAD_STACK_DEFAULT=4096
 CONFIG_RAM_SIZE=393216
 CONFIG_RAM_START=0x20400000
 CONFIG_RR_INTERVAL=200
+CONFIG_SCHED_CHILD_STATUS=y
+CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_STANDARD_SERIAL=y
 CONFIG_START_DAY=10
 CONFIG_START_MONTH=3
 CONFIG_START_YEAR=2014
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_WIRELESS=y
 CONFIG_WIRELESS_IEEE802154=y
diff --git a/boards/sim/sim/sim/configs/smartfs/defconfig 
b/boards/sim/sim/sim/configs/smartfs/defconfig
index d580009a75b..5f27969143b 100644
--- a/boards/sim/sim/sim/configs/smartfs/defconfig
+++ b/boards/sim/sim/sim/configs/smartfs/defconfig
@@ -32,6 +32,7 @@ CONFIG_DEV_LOOP=y
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FSUTILS_PASSWD=y
 CONFIG_FSUTILS_PASSWD_READONLY=y
 CONFIG_FS_BINFS=y
@@ -41,7 +42,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_FS_SMARTFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_MTD=y
@@ -60,6 +61,7 @@ CONFIG_NSH_READLINE=y
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_QSPI_FLASH=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SPI_FLASH=y
@@ -68,3 +70,4 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_FLASH_ERASEALL=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/smp/defconfig 
b/boards/sim/sim/sim/configs/smp/defconfig
index 08ded82c857..00e1cf45986 100644
--- a/boards/sim/sim/sim/configs/smp/defconfig
+++ b/boards/sim/sim/sim/configs/smp/defconfig
@@ -16,17 +16,23 @@ CONFIG_BUILTIN=y
 CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_FEATURES=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_FS_ROMFS=y
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_CMD_HISTORY=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SIM_WALLTIME_SIGNAL=y
 CONFIG_SMP=y
 CONFIG_STACK_COLORATION=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_SYSTEM=y
 CONFIG_SYSTEM_TASKSET=y
 CONFIG_TESTING_GETPRIME=y
diff --git a/boards/sim/sim/sim/configs/sotest/defconfig 
b/boards/sim/sim/sim/configs/sotest/defconfig
index 413eef726b0..f69a93fe8a0 100644
--- a/boards/sim/sim/sim/configs/sotest/defconfig
+++ b/boards/sim/sim/sim/configs/sotest/defconfig
@@ -12,7 +12,6 @@ CONFIG_ARCH_BOARD="sim"
 CONFIG_ARCH_BOARD_SIM=y
 CONFIG_ARCH_CHIP="sim"
 CONFIG_ARCH_SIM=y
-CONFIG_BINFMT_DISABLE=y
 CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARDCTL_ROMDISK=y
 CONFIG_BOARD_LOOPSPERMSEC=0
@@ -22,12 +21,16 @@ CONFIG_CODECS_BASE64=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_SOTEST=y
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_ENVPATH=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
 CONFIG_LINE_MAX=200
@@ -56,11 +59,13 @@ CONFIG_NET_UDP=y
 CONFIG_NET_UDP_NOTIFIER=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -70,3 +75,4 @@ CONFIG_START_YEAR=2008
 CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/sotest32/defconfig 
b/boards/sim/sim/sim/configs/sotest32/defconfig
index d61c141082b..c28c6da6210 100644
--- a/boards/sim/sim/sim/configs/sotest32/defconfig
+++ b/boards/sim/sim/sim/configs/sotest32/defconfig
@@ -12,7 +12,6 @@ CONFIG_ARCH_BOARD="sim"
 CONFIG_ARCH_BOARD_SIM=y
 CONFIG_ARCH_CHIP="sim"
 CONFIG_ARCH_SIM=y
-CONFIG_BINFMT_DISABLE=y
 CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARDCTL_ROMDISK=y
 CONFIG_BOARD_LOOPSPERMSEC=0
@@ -22,12 +21,16 @@ CONFIG_CODECS_BASE64=y
 CONFIG_CRYPTO=y
 CONFIG_CRYPTO_CRYPTODEV=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_SOTEST=y
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_ROMFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_ENVPATH=y
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
 CONFIG_LIBC_STRERROR=y
 CONFIG_LINE_MAX=200
@@ -56,11 +59,13 @@ CONFIG_NET_UDP=y
 CONFIG_NET_UDP_NOTIFIER=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
+CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIG_DEFAULT=y
@@ -71,3 +76,4 @@ CONFIG_START_YEAR=2008
 CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/sqlite/defconfig 
b/boards/sim/sim/sim/configs/sqlite/defconfig
index 1752c430f14..b220ac914c3 100644
--- a/boards/sim/sim/sim/configs/sqlite/defconfig
+++ b/boards/sim/sim/sim/configs/sqlite/defconfig
@@ -25,8 +25,10 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_LARGEFILE=y
@@ -35,7 +37,7 @@ CONFIG_FS_LOCK_BUCKET_SIZE=4
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_MINIBASIC=y
 CONFIG_INTERPRETERS_MINIBASIC_TESTSCRIPT=y
 CONFIG_LIBC_DLFCN=y
@@ -51,11 +53,13 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PIPES=y
 CONFIG_PTHREAD_MUTEX_TYPES=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SIM_HOSTFS=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_POPEN=y
 CONFIG_SYSTEM_SYSTEM=y
 CONFIG_UTILS_SQLITE=y
diff --git a/boards/sim/sim/sim/configs/tcpblaster/defconfig 
b/boards/sim/sim/sim/configs/tcpblaster/defconfig
index 57b1f38d2a9..efd2186c40c 100644
--- a/boards/sim/sim/sim/configs/tcpblaster/defconfig
+++ b/boards/sim/sim/sim/configs/tcpblaster/defconfig
@@ -19,17 +19,20 @@ CONFIG_DEBUG_NET_ERROR=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_DRIVERS_VIDEO=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_FTPC=y
 CONFIG_EXAMPLES_TCPBLASTER=y
 CONFIG_EXAMPLES_TCPECHO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_LITTLEFS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
 CONFIG_IDLETHREAD_STACKSIZE=2048
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INPUT=y
 CONFIG_IOB_NBUFFERS=1024
 CONFIG_IOB_NCHAINS=128
@@ -98,6 +101,7 @@ CONFIG_SYSLOG_TIMESTAMP=y
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
 CONFIG_SYSTEM_NTPC=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING6=y
 CONFIG_SYSTEM_PING=y
 CONFIG_SYSTEM_SYSTEM=y
diff --git a/boards/sim/sim/sim/configs/tcploop/defconfig 
b/boards/sim/sim/sim/configs/tcploop/defconfig
index 3b0872a13b5..006fca17afd 100644
--- a/boards/sim/sim/sim/configs/tcploop/defconfig
+++ b/boards/sim/sim/sim/configs/tcploop/defconfig
@@ -29,13 +29,15 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_TCPBLASTER=y
 CONFIG_EXAMPLES_TCPBLASTER_LOOPBACK=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=8192
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_HOSTNAME="IP-Forward"
@@ -56,6 +58,7 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_LPWORK=y
 CONFIG_SCHED_LPWORKPRIORITY=140
@@ -63,4 +66,5 @@ CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TUN_NINTERFACES=2
diff --git a/boards/sim/sim/sim/configs/tflm/defconfig 
b/boards/sim/sim/sim/configs/tflm/defconfig
index 8aadd6b7c02..051150e189e 100644
--- a/boards/sim/sim/sim/configs/tflm/defconfig
+++ b/boards/sim/sim/sim/configs/tflm/defconfig
@@ -22,6 +22,7 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_HOSTFS=y
@@ -30,7 +31,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_HAVE_CXX=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBCXX=y
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
@@ -49,12 +50,14 @@ CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_CMD_HISTORY=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
 CONFIG_SIM_WALLTIME_SIGNAL=y
 CONFIG_SYSTEM_FLATBUFFERS=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TFLITEMICRO=y
 CONFIG_TFLITEMICRO_DEBUG=y
 CONFIG_TFLITEMICRO_HELLOWORLD=y
diff --git a/boards/sim/sim/sim/configs/toywasm/defconfig 
b/boards/sim/sim/sim/configs/toywasm/defconfig
index d470061d738..6fb4b3c0e75 100644
--- a/boards/sim/sim/sim/configs/toywasm/defconfig
+++ b/boards/sim/sim/sim/configs/toywasm/defconfig
@@ -26,12 +26,13 @@ CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_TOYWASM=y
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_ENVPATH=y
@@ -68,6 +69,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
@@ -79,4 +81,5 @@ CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_DHCPC_RENEW=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
diff --git a/boards/sim/sim/sim/configs/txmorse/defconfig 
b/boards/sim/sim/sim/configs/txmorse/defconfig
index 2a99389945a..1d5bbb46b07 100644
--- a/boards/sim/sim/sim/configs/txmorse/defconfig
+++ b/boards/sim/sim/sim/configs/txmorse/defconfig
@@ -31,6 +31,7 @@ CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_TXMORSE=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -43,7 +44,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_HAVE_CXXINITIALIZE=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -66,6 +67,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DRIVER=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -76,4 +78,5 @@ CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_GCOV=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
diff --git a/boards/sim/sim/sim/configs/udgram/defconfig 
b/boards/sim/sim/sim/configs/udgram/defconfig
index 79d80f21a75..838b568a97e 100644
--- a/boards/sim/sim/sim/configs/udgram/defconfig
+++ b/boards/sim/sim/sim/configs/udgram/defconfig
@@ -25,13 +25,15 @@ CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_UDGRAM=y
 CONFIG_EXAMPLES_UDGRAM_CLIENT_STACKSIZE=8192
 CONFIG_EXAMPLES_UDGRAM_SERVER_STACKSIZE=8192
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=8192
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -41,8 +43,10 @@ CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/unionfs/defconfig 
b/boards/sim/sim/sim/configs/unionfs/defconfig
index 8ba9e7b8db4..dfec8c6c1c6 100644
--- a/boards/sim/sim/sim/configs/unionfs/defconfig
+++ b/boards/sim/sim/sim/configs/unionfs/defconfig
@@ -22,14 +22,16 @@ CONFIG_ETC_ROMFSDEVNO=2
 CONFIG_EXAMPLES_UNIONFS=y
 CONFIG_EXAMPLES_UNIONFS_RAMDEVNO_A=4
 CONFIG_EXAMPLES_UNIONFS_RAMDEVNO_B=5
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_FS_UNIONFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -38,8 +40,10 @@ CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/usbdev/defconfig 
b/boards/sim/sim/sim/configs/usbdev/defconfig
index 1ea813309e1..7f936584a66 100644
--- a/boards/sim/sim/sim/configs/usbdev/defconfig
+++ b/boards/sim/sim/sim/configs/usbdev/defconfig
@@ -31,12 +31,15 @@ CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEBUG_USB=y
 CONFIG_DEBUG_USB_ERROR=y
 CONFIG_DEBUG_USB_WARN=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_DHCPD=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
 CONFIG_ICMPv6_AUTOCONF_RDNSS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NBUFFERS=512
 CONFIG_IOB_NCHAINS=36
 CONFIG_LIBC_DLFCN=y
@@ -106,6 +109,7 @@ CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_COMPOSITE=y
 CONFIG_SYSTEM_IPTABLES=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_TESTING_OSTEST=y
 CONFIG_TLS_TASK_NELEM=4
diff --git a/boards/sim/sim/sim/configs/usbhost/defconfig 
b/boards/sim/sim/sim/configs/usbhost/defconfig
index 991413a5672..599db67c58e 100644
--- a/boards/sim/sim/sim/configs/usbhost/defconfig
+++ b/boards/sim/sim/sim/configs/usbhost/defconfig
@@ -22,10 +22,13 @@ CONFIG_DEBUG_USB=y
 CONFIG_DEBUG_USB_ERROR=y
 CONFIG_DEBUG_USB_INFO=y
 CONFIG_DEBUG_USB_WARN=y
+CONFIG_ETC_ROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_LINKS=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_TMPFS=y
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_DLFCN=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NSH_BUILTIN_APPS=y
@@ -47,6 +50,7 @@ CONFIG_SYSLOG_CHARDEV=y
 CONFIG_SYSLOG_MAX_CHANNELS=2
 CONFIG_SYSTEM_CLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_OSTEST=y
 CONFIG_TLS_TASK_NELEM=4
 CONFIG_USBHOST_CDCACM=y
diff --git a/boards/sim/sim/sim/configs/userfs/defconfig 
b/boards/sim/sim/sim/configs/userfs/defconfig
index e9d02dd7739..297c4e29889 100644
--- a/boards/sim/sim/sim/configs/userfs/defconfig
+++ b/boards/sim/sim/sim/configs/userfs/defconfig
@@ -27,14 +27,16 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_USERFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
+CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_FS_USERFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -48,9 +50,11 @@ CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_LPWORK=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/usrsocktest/defconfig 
b/boards/sim/sim/sim/configs/usrsocktest/defconfig
index 5b09567f528..8e60af1d59d 100644
--- a/boards/sim/sim/sim/configs/usrsocktest/defconfig
+++ b/boards/sim/sim/sim/configs/usrsocktest/defconfig
@@ -17,15 +17,21 @@ CONFIG_DEBUG_ASSERTIONS=y
 CONFIG_DEBUG_FEATURES=y
 CONFIG_DEBUG_SYMBOLS=y
 CONFIG_DEV_LOOP=y
+CONFIG_ETC_ROMFS=y
 CONFIG_EXAMPLES_USRSOCKTEST=y
+CONFIG_EXPERIMENTAL=y
+CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_MM_IOB=y
 CONFIG_NET=y
 CONFIG_NET_USRSOCK=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/ustream/defconfig 
b/boards/sim/sim/sim/configs/ustream/defconfig
index 3abbacc00c7..d997e1e5739 100644
--- a/boards/sim/sim/sim/configs/ustream/defconfig
+++ b/boards/sim/sim/sim/configs/ustream/defconfig
@@ -24,6 +24,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_USTREAM=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -31,7 +32,7 @@ CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_MAX_EXITFUNS=1
@@ -41,8 +42,10 @@ CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_FILE_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_PATH_INITIAL="/bin"
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
diff --git a/boards/sim/sim/sim/configs/vpnkit/defconfig 
b/boards/sim/sim/sim/configs/vpnkit/defconfig
index 88e935ad875..0d8d6e03ddd 100644
--- a/boards/sim/sim/sim/configs/vpnkit/defconfig
+++ b/boards/sim/sim/sim/configs/vpnkit/defconfig
@@ -28,12 +28,13 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_HELLO=y
 CONFIG_EXAMPLES_NETTEST=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_HOSTFS=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOB_NOTIFIER=y
 CONFIG_LIBC_ENVPATH=y
 CONFIG_LIBC_EXECFUNCS=y
@@ -69,6 +70,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DATETIME=y
 CONFIG_RTC_DRIVER=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
@@ -80,4 +82,5 @@ CONFIG_STDIO_DISABLE_BUFFERING=y
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_DHCPC_RENEW=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
diff --git a/boards/sim/sim/sim/configs/wakaama/defconfig 
b/boards/sim/sim/sim/configs/wakaama/defconfig
index 34945b111da..342bcc38062 100644
--- a/boards/sim/sim/sim/configs/wakaama/defconfig
+++ b/boards/sim/sim/sim/configs/wakaama/defconfig
@@ -32,6 +32,7 @@ CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_WGET=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -39,7 +40,8 @@ CONFIG_FS_FAT=y
 CONFIG_FS_PROCFS=y
 CONFIG_FS_ROMFS=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_NET=y
 CONFIG_NETDB_DNSCLIENT=y
 CONFIG_NETDB_DNSSERVER_IPv4ADDR=0x08080808
@@ -55,6 +57,7 @@ CONFIG_NSH_MOTD=y
 CONFIG_NSH_MOTD_STRING="This is an example NuttX Message Of The Day (MOTD). 
Have fun!"
 CONFIG_NSH_READLINE=y
 CONFIG_READLINE_TABCOMPLETION=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_SPORADIC=y
 CONFIG_SCHED_WAITPID=y
@@ -63,6 +66,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSLOG_CONSOLE=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_PING=y
 CONFIG_WAKAAMA_BOOTSTRAP=y
 CONFIG_WAKAAMA_CLIENT_MODE=y
diff --git a/boards/sim/sim/sim/configs/wamr/defconfig 
b/boards/sim/sim/sim/configs/wamr/defconfig
index 008d38a533f..271d6b571ba 100644
--- a/boards/sim/sim/sim/configs/wamr/defconfig
+++ b/boards/sim/sim/sim/configs/wamr/defconfig
@@ -30,6 +30,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_BINFS=y
 CONFIG_FS_FAT=y
 CONFIG_FS_HOSTFS=y
@@ -38,7 +39,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_INTERPRETERS_WAMR=y
 CONFIG_INTERPRETERS_WAMR_AOT=y
 CONFIG_INTERPRETERS_WAMR_BULK_MEMORY=y
@@ -74,6 +75,7 @@ CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_CMD_HISTORY=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_HOSTFS=y
@@ -82,5 +84,6 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TLS_NELEM=8
 CONFIG_TLS_TASK_NELEM=10
diff --git a/boards/sim/sim/sim/configs/watchdog-notifier/defconfig 
b/boards/sim/sim/sim/configs/watchdog-notifier/defconfig
index 2ba1f883faf..40b39b07bfb 100644
--- a/boards/sim/sim/sim/configs/watchdog-notifier/defconfig
+++ b/boards/sim/sim/sim/configs/watchdog-notifier/defconfig
@@ -26,6 +26,7 @@ CONFIG_DEV_LOOP=y
 CONFIG_ETC_FATDEVNO=2
 CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -37,7 +38,7 @@ CONFIG_FS_RAMMAP=y
 CONFIG_FS_ROMFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -60,6 +61,7 @@ CONFIG_RTC=y
 CONFIG_RTC_ARCH=y
 CONFIG_RTC_DRIVER=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_EVENTS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
@@ -69,6 +71,7 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_TESTING_CMOCKA=y
 CONFIG_TESTING_DRIVER_TEST=y
 CONFIG_WATCHDOG=y
diff --git a/boards/sim/sim/sim/configs/xipfs/defconfig 
b/boards/sim/sim/sim/configs/xipfs/defconfig
index 53c3eb01192..aea567a9b4e 100644
--- a/boards/sim/sim/sim/configs/xipfs/defconfig
+++ b/boards/sim/sim/sim/configs/xipfs/defconfig
@@ -14,20 +14,27 @@ CONFIG_BOARDCTL_POWEROFF=y
 CONFIG_BOARD_LOOPSPERMSEC=0
 CONFIG_BUILTIN=y
 CONFIG_DEBUG_SYMBOLS=y
+CONFIG_ETC_ROMFS=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FS_PROCFS=y
+CONFIG_FS_ROMFS=y
 CONFIG_FS_XIPFS=y
 CONFIG_FS_XIPFS_FAULT_INJECT=y
 CONFIG_IDLETHREAD_STACKSIZE=8192
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
+CONFIG_LIBC_EXECFUNCS=y
 CONFIG_LIBC_STRERROR=y
 CONFIG_MTD=y
 CONFIG_NSH_BUILTIN_APPS=y
 CONFIG_NSH_READLINE=y
 CONFIG_RAMMTD=y
 CONFIG_RAMMTD_FLASHSIM=y
+CONFIG_SCHED_CHILD_STATUS=y
+CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_SYSTEM_XIPFS=y
 CONFIG_TESTING_FS_XIPFS=y
diff --git a/boards/sim/sim/sim/configs/zipfs/defconfig 
b/boards/sim/sim/sim/configs/zipfs/defconfig
index 16a5988213c..c3ce75a366b 100644
--- a/boards/sim/sim/sim/configs/zipfs/defconfig
+++ b/boards/sim/sim/sim/configs/zipfs/defconfig
@@ -28,6 +28,7 @@ CONFIG_ETC_ROMFS=y
 CONFIG_ETC_ROMFSDEVNO=1
 CONFIG_EXAMPLES_GPIO=y
 CONFIG_EXAMPLES_HELLO=y
+CONFIG_EXPERIMENTAL=y
 CONFIG_FAT_LCNAMES=y
 CONFIG_FAT_LFN=y
 CONFIG_FS_BINFS=y
@@ -40,7 +41,7 @@ CONFIG_FS_ROMFS=y
 CONFIG_FS_ZIPFS=y
 CONFIG_GPIO_LOWER_HALF=y
 CONFIG_IDLETHREAD_STACKSIZE=4096
-CONFIG_INIT_ENTRYPOINT="nsh_main"
+CONFIG_INIT_ENTRYPOINT="init_main"
 CONFIG_IOEXPANDER=y
 CONFIG_IOEXPANDER_DUMMY=y
 CONFIG_LIBC_ENVPATH=y
@@ -61,6 +62,7 @@ CONFIG_PATH_INITIAL="/bin"
 CONFIG_PSEUDOFS_ATTRIBUTES=y
 CONFIG_READLINE_TABCOMPLETION=y
 CONFIG_SCHED_BACKTRACE=y
+CONFIG_SCHED_CHILD_STATUS=y
 CONFIG_SCHED_HAVE_PARENT=y
 CONFIG_SCHED_WAITPID=y
 CONFIG_SIM_WALLTIME_SIGNAL=y
@@ -68,5 +70,6 @@ CONFIG_START_MONTH=6
 CONFIG_START_YEAR=2008
 CONFIG_SYSTEM_DUMPSTACK=y
 CONFIG_SYSTEM_NSH=y
+CONFIG_SYSTEM_NXINIT=y
 CONFIG_UTILS_UNZIP=y
 CONFIG_UTILS_ZIP=y
diff --git a/boards/sim/sim/sim/src/CMakeLists.txt 
b/boards/sim/sim/sim/src/CMakeLists.txt
index 590f08d4628..ebf6149a1f2 100644
--- a/boards/sim/sim/sim/src/CMakeLists.txt
+++ b/boards/sim/sim/sim/src/CMakeLists.txt
@@ -63,14 +63,17 @@ target_sources(board PRIVATE ${SRCS})
 set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/gnu-elf.ld")
 
 if(CONFIG_ETC_ROMFS)
+  if(CONFIG_SYSTEM_NXINIT)
+    set(ETC_RCSRCS etc/init.d/init.rc)
+  endif()
+
   nuttx_add_romfs(
     NAME
     etc
     MOUNTPOINT
     etc
     RCSRCS
-    etc/init.d/rcS
-    etc/init.d/rc.sysinit
+    ${ETC_RCSRCS}
     RCRAWS
     etc/group
     PATH
diff --git a/boards/sim/sim/sim/src/Makefile b/boards/sim/sim/sim/src/Makefile
index 168d9022e0c..4bc4490dd47 100644
--- a/boards/sim/sim/sim/src/Makefile
+++ b/boards/sim/sim/sim/src/Makefile
@@ -51,7 +51,9 @@ endif
 endif
 
 ifeq ($(CONFIG_ETC_ROMFS),y)
-  RCSRCS = etc/init.d/rc.sysinit etc/init.d/rcS
+ifeq ($(CONFIG_SYSTEM_NXINIT),y)
+  RCSRCS = etc/init.d/init.rc
+endif
   RCRAWS = etc/group
 endif
 
diff --git a/boards/sim/sim/sim/src/etc/init.d/rc.sysinit 
b/boards/sim/sim/sim/src/etc/init.d/init.rc
similarity index 67%
rename from boards/sim/sim/sim/src/etc/init.d/rc.sysinit
rename to boards/sim/sim/sim/src/etc/init.d/init.rc
index 659eb12f307..096b0d83062 100644
--- a/boards/sim/sim/sim/src/etc/init.d/rc.sysinit
+++ b/boards/sim/sim/sim/src/etc/init.d/init.rc
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/sim/sim/sim/src/etc/init.d/rc.sysinit
+ * boards/sim/sim/sim/src/etc/init.d/init.rc
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -21,24 +21,24 @@
  ****************************************************************************/
 
 #include <nuttx/config.h>
+#include <nuttx/macro.h>
 
-#define CONCAT_(x, y) x##y
-#define CONCAT(x, y)  CONCAT_(x, y)
+#ifdef CONFIG_SYSTEM_NSH
+service console sh
+   restart_period 1000
+#endif
 
-#ifdef CONFIG_ETC_ROMFS
+on init
+#ifdef CONFIG_SYSTEM_NSH
 #ifdef CONFIG_FS_TMPFS
-
-/* Mount /tmp on TMPFS */
-
-mount -t tmpfs /tmp
-
+   mount -t tmpfs /tmp
 #elif defined(CONFIG_FS_FAT)
-
-/* Create a FAT RAMDISK and mount it at /tmp */
-
-mkrd -m CONFIG_ETC_FATDEVNO -s CONFIG_ETC_FATSECTSIZE CONFIG_ETC_FATNSECTORS
-mkfatfs CONCAT(/dev/ram, CONFIG_ETC_FATDEVNO)
-mount -t vfat CONCAT(/dev/ram, CONFIG_ETC_FATDEVNO) CONFIG_ETC_FATMOUNTPT
-
-#endif /* CONFIG_FS_TMPFS || CONFIG_FS_FAT */
-#endif /* CONFIG_ETC_ROMFS */
+   mkrd -m CONFIG_ETC_FATDEVNO -s CONFIG_ETC_FATSECTSIZE CONFIG_ETC_FATNSECTORS
+   mkfatfs CONCATENATE(/dev/ram, CONFIG_ETC_FATDEVNO)
+   mount -t vfat CONCATENATE(/dev/ram, CONFIG_ETC_FATDEVNO) 
CONFIG_ETC_FATMOUNTPT
+#endif
+#ifdef CONFIG_FS_HOSTFS
+   mount -t hostfs -o fs=. /data
+#endif
+   start console
+#endif
diff --git a/boards/sim/sim/sim/src/etc/init.d/rcS 
b/boards/sim/sim/sim/src/etc/init.d/rcS
deleted file mode 100644
index fee8526b63a..00000000000
--- a/boards/sim/sim/sim/src/etc/init.d/rcS
+++ /dev/null
@@ -1,27 +0,0 @@
-/****************************************************************************
- * boards/sim/sim/sim/src/etc/init.d/rcS
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.  The
- * ASF licenses this file to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the
- * License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
- * License for the specific language governing permissions and limitations
- * under the License.
- *
- ****************************************************************************/
-
-#include <nuttx/config.h>
-
-#ifdef CONFIG_FS_HOSTFS
-mount -t hostfs -o fs=. /data
-#endif

Reply via email to