1.1 Arquitectura del sistema Nuttx
La arquitectura del software del sistema operativo Nuttx es la siguiente:
Ø Existe una interfaz estricta y estándar entre el programa de aplicación y el kernel, que es la interfaz POSIX;
Ø La biblioteca lib del usuario está en el directorio libs /, que contiene bibliotecas basadas en lógica compartida para el kernel y las aplicaciones, como libc, libm (matemáticas), libnx (gráficos), etc.;
Ø El kernel está organizado en módulos y los módulos funcionales están organizados en directorios, como nuttx/audio/, binfmt/, crypto/, drivers/, fs/, Graphics/, video/, wireless/, etc.;
Ø Biblioteca del kernel orientada al usuario:
1) programar/proporcionar servicios de SO a los usuarios;
2) syscall/ proporciona una interfaz de llamada al sistema en modos PROTEGIDO y KERNEL;
3) mm/ proporciona funciones de gestión de memoria;
4) fs/vfs/ proporciona una interfaz de archivos basada en POSIX;
5) net/sockets/ proporciona una interfaz de socket basada en BSD;
Ø Biblioteca interna del sistema operativo:
1) arco/proporciona soporte arquitectónico específico;
2) juntas directivas/proporcionar apoyo específico a las juntas directivas;