This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

User Mode and Supervisor mode

The documentation says that: "By default, threads run in supervisor mode and allow access to privileged CPU instructions, the entire memory address space, and peripherals. User mode threads have a reduced set of privileges."

Also, these two modes are related to macros K_KERNEL_STACK and K_THREAD_STACK. In my CoAP(with Open-Thread) example that is provided from NRf-SDK, K_THREAD_STACK_SIZEOF is used. I think, this example choose user-mode threads. 

What is the reason? Can I choose supervisior mode? Documentation says that it is more efficient with using memory and has privileged access to memory space.    

Parents Reply Children
No Data
Related