The shell runs a program by asking init to load it (init alone may create processes), then gives the program the terminal as its output and the storage server, writes its arguments onto a page it moves into the program, starts it and waits for it to die. Built-ins: help, echo, clear. Anything else is a program on disk: `name args...` runs name.elf.