The shell runs /bin/ by asking init to load it (init alone may create processes), then gives the program the terminal as its output and a read-only storage grant to the current directory, writes its arguments onto a page it moves into the program, starts it and waits for it to die. Then it takes the grant back. Ctrl+C kills it. A program that needs more says so in /bin/.manifest, e.g. `needs = display` for snake, which then gets the screen and keyboard until it quits. A need the shell does not know, it refuses to run. Built-ins: help, echo, clear, cd, pwd.