...
1# <a name="linuxRuntime" />Linux Runtime
2
3## <a name="runtimeLinuxFileDescriptors" />File descriptors
4
5By default, only the `stdin`, `stdout` and `stderr` file descriptors are kept open for the application by the runtime.
6The runtime MAY pass additional file descriptors to the application to support features such as [socket activation][socket-activated-containers].
7Some of the file descriptors MAY be redirected to `/dev/null` even though they are open.
8
9## <a name="runtimeLinuxDevSymbolicLinks" /> Dev symbolic links
10
11While creating the container (step 2 in the [lifecycle](runtime.md#lifecycle)), runtimes MUST create the following symlinks if the source file exists after processing [`mounts`](config.md#mounts):
12
13| Source | Destination |
14| --------------- | ----------- |
15| /proc/self/fd | /dev/fd |
16| /proc/self/fd/0 | /dev/stdin |
17| /proc/self/fd/1 | /dev/stdout |
18| /proc/self/fd/2 | /dev/stderr |
19
20
21[socket-activated-containers]: http://0pointer.de/blog/projects/socket-activated-containers.html
View as plain text