Un programma denominato shell interpreta i comandi della tastiera e li passa al sistema operativo. Quando un utente accede al sistema, il programma di accesso verifica nome utente e password e, se le credenziali sono corrette, avvia la shell. Da questo punto in poi, un utente autorizzato può iniziare a interagire con il SO tramite comandi basati su testo. In Linux, emulatori di terminali noti sono Terminator, eterm, xterm, konsole, gnome-terminal.