9
0
Fork 0
nuttx-bb/nuttx/lib
patacongo 1d0aef85bd Revise recent changes to serial driver error handling: Errors other than EINTR may be returned when the driver is used very early in initialization. STM32 SPI driver will now survive repeated initializations
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@5026 7fd9a85b-ad96-42d3-883c-3090e2eb8679
2012-08-14 14:42:50 +00:00
..
dirent Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
libgen Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
math Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
misc Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
mqueue Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
net Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
pthread Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
queue Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
sched Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
semaphore Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
signal Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
stdio Revise recent changes to serial driver error handling: Errors other than EINTR may be returned when the driver is used very early in initialization. STM32 SPI driver will now survive repeated initializations 2012-08-14 14:42:50 +00:00
stdlib Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
string Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
termios Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
time Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
unistd Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
Kconfig Misc STM32 OTF FS driver fixes + More Kconfig files 2012-04-11 17:13:04 +00:00
Makefile Make the lib/ subdirectory build more like other directories 2012-08-13 22:27:06 +00:00
README.txt Kernel build mostly successful 2011-04-02 15:25:22 +00:00
lib_internal.h Disable line buffering if the file is opened in binary mode; Also fix a couple of fopen/fdopen bugs 2012-04-18 15:57:45 +00:00

README.txt

lib
===

This directory contains numerous, small functions typically associated with
what you would expect to find in a standard C library.  The sub-directories
in this directory contain standard interface that can be executed by user-
mode programs.

Normally, NuttX is built with no protection and all threads running in kerne-
mode.  In that model, there is no real architectural distinction between
what is a kernel-mode program and what is a user-mode program; the system is
more like on multi-threaded program that all runs in kernel-mode.

But if the CONFIG_NUTTX_KERNEL option is selected, NuttX will be built into
distinct user-mode and kernel-mode sections.  In that case, most of the
code in the nuttx/ directory will run in kernel-mode with with exceptions
of (1) the user-mode "proxies" found in syscall/proxies, and (2) the
standard C library functions found in this directory.  In this build model,
it is critical to separate the user-mode OS interfaces in this way.

Sub-Directories
===============

The files in the lib/ directory are organized (mostly) according which file
in the include/ directory provides the prototype for library functions.  So
we have:

  libgen    - libgen.h
  math      - math.h and fixedmath.h
  mqueue    - pthread.h
  net       - Various network-related header files: netinet/ether.h, arpa/inet.h
  pthread   - pthread.h
  queue     - queue.h
  sched     - sched.h
  semaphore - semaphore.h
  stdio     - stdio.h
  stdlib    - stdlib.h
  string    - string.h
  time      - time.h
  unistd    - unistd.h

There is also a misc/ subdirectory that contains various internal functions
and interfaces from header files that are too few to warrant their own sub-
directory:

 misc       - Nonstandard "glue" logic, debug.h, crc32.h, dirent.h