]>
Commit | Line | Data |
---|---|---|
84c0778b | 1 | # WASI libc "bottom half". |
320054e8 | 2 | |
84c0778b DG |
3 | The WASI libc "bottom half" is conceptually the lower half of a traditional libc |
4 | implementation, consisting of C interfaces to the low-level WASI syscalls. | |
320054e8 | 5 | |
84c0778b DG |
6 | This implementation is partially derived from the "bottom half" of [cloudlibc], |
7 | revision 8835639f27fc42d32096d59d294a0bbb857dc368. | |
320054e8 | 8 | |
320054e8 | 9 | [cloudlibc]: https://github.com/NuxiNL/cloudlibc |
320054e8 | 10 | |
84c0778b DG |
11 | This implementation includes preopen functionality, which emulates POSIX APIs |
12 | accepting absolute paths by translating them into pre-opened directory handles | |
13 | and relative paths that can be opened with `openat`. This technique is inspired | |
14 | by [libpreopen], however the implementation here is designed to be built into | |
15 | libc rather than to be a layer on top of libc. | |
320054e8 | 16 | |
84c0778b | 17 | [libpreopen]: https://github.com/musec/libpreopen |
320054e8 | 18 | |
753cc434 | 19 | The WASI libc lower half currently depends on the dlmalloc component. |