1# Fuchsia's libc 2 3TODO(ZX-1598) Type more here. 4 5## Standards 6 7### C11 8 9Fuchsia's libc supports most of the [C11][c11std] standard. This 10in particular includes the atomic and threading portions of the 11standard library. 12 13### POSIX 14 15Fuchsia implements a subset of POSIX. 16 17Things at least partially supported include the basics of POSIX I/O 18(open/close/read/write/stat/...), and pthreads (threads and mutexes). 19 20On Fuchsia, the portion of file paths beginning with a sequence of 21`..` is resolved locally. See [this writeup][dotdot] for more 22information. 23 24Similarly, symlinks are not supported on Fuchsia. 25 26Conspicuously not supported are UNIX signals, fork, and exec. 27 28## FDIO 29 30Fuchsia's libc does not directly support I/O operations. Instead it 31provides weak symbols that another library can override. This is 32typically done by [fdio.so][fdio]. 33 34## Linking 35 36Statically linking libc is not supported. Everything dynamically links libc.so. 37 38## Dynamic linking and loading 39 40libc.so is also the dynamic linker. 41 42[c11std]: https://en.wikipedia.org/wiki/C11_(C_standard_revision) 43[dotdot]: https://fuchsia.googlesource.com/docs/+/master/dotdot.md 44[fdio]: ../system/ulib/fdio 45