Per capire quale sia la linea di comando devi capire che nel sistema operativo moderno, in particolare i sistemi operativi kernel monolitici, come Linux, MacOSx e Windows. Questo tipo di sistemi operativi può essere descritto all'astrazione più semplice come separata in un "kernel" di base che esegue programmi critici di sistema che il sistema operativo dipende (gestione della memoria, gestori di interrupt [IE: quando si digita una chiave, questo è un esempio di l'hardware interrompe il sistema operativo deve essere interrotto per indirizzare immediatamente], ect) e una "shell" di userland in cui vengono eseguiti il desktop di Windows e tutti i programmi. (navigazione sul Web, giochi, ecc.)
Il tipico utente PC non si preoccupa mai di cosa succede nel kernel, perché tutto ciò con cui interagiscono viene fatto attraverso il software di interfaccia userland. Il sistema operativo dipende dal fatto che il software di esecuzione del kernel sia stabile per funzionare correttamente, pertanto l'utente è tipicamente completamente impedito o molto limitato dall'interazione diretta con il kernel.
Quindi la riga di comando consente di eseguire piccoli programmi userland chiamati strumenti. Questi strumenti forniscono un'interfaccia per chiamare nel sistema operativo tramite (chi avrebbe indovinato) le chiamate di sistema. Se stai scrivendo un programma e hai bisogno di un blocco di memoria. Si può pensare al malloc di C come chiamare il kernel per chiedere se è possibile controllare qualche memoria inutilizzata per un po '. Quindi, quando chiami Free su quella memoria, stai fondamentalmente lasciando che il sistema operativo sappia che hai finito e può riutilizzare quella memoria per altri thread di sistema che sono in esecuzione contemporaneamente (altri programmi che funzionano in background, ecc.)
Il kernel interagisce con la CPU disponendo istruzioni binarie di codice in memoria in modo che la CPU possa essere alimentata con le istruzioni successive necessarie per eseguire ogni ciclo di clock. (2,5 ghz = ~ 2,5 milioni di cicli di clock al secondo, che in un mondo teorico perfetto ~ = 2,5 milioni di istruzioni la CPU elabora / sec.)
Il modo in cui funziona il binario, è che ogni chip è progettato in un modo molto complesso in cui pattern diversi di 1 e 0 fanno sì che il chip instradi i dati in punti diversi sulla scheda madre.
E questo è in breve un computer. (boom-boom tish)