The CTR-SDK APIs are mostly written in C++. C++ APIs cannot be called directly from C-language files.
The CTR-SDK therefore provides wrappers that allow you to call the C++ APIs from C source files.
In C++, you would use the nn::os::Mutex class to use mutexes. The mutex class maintains mutex objects internally.
The names of the wrappers that allow this class to be used in C begin with nnosMutex, as shown in the examples below. These functions have a 1:1 correspondence with the C++ methods.
nnosMutexInitialize → nn::os::Mutex::InitializennosMutexLock → nn::os::Mutex::LocknnosMutexTryLock → nn::os::Mutex::TryLocknnosMutexUnlock → nn::os::Mutex::UnlocknnosMutexInitialize → nn::os::Mutex::InitializeThe nnosMutex structure, the data type that stores mutex objects in C, is an exception. This structure is actually a class instance under the hood, so it cannot be referenced directly from the C language.
CONFIDENTIAL