#format wiki
#LANGUAGE it
#LANGUAGE it
<
>
<>
<>
= Introduzione =
Questa guida spiega cosa sono le console virtuali in Ubuntu e illustra alcuni possibili utilizzi e configurazioni.
Le console virtuali - in poche parole - non sono altro che dei dispositivi astratti attraverso i quali uno o più utenti possono interagire con la macchina: fornire input e ricevere output (usando [[AmministrazioneSistema/Terminale|righe di comando]] o anche sessioni grafiche).<
>
Il sottosistema '''TTY''' è centrale per GNU/Linux, come anche per i sistemi UNIX in generale.
= Concetti fondamentali =
== Cenni storici ==
Per comprendere alcuni concetti e la terminologia, sono necessari alcuni approfondimenti di tipo storico.<
>
Il termine '''TTY''' fa riferimento alle [[https://it.wikipedia.org/wiki/Telescrivente|telescriventi]] (in inglese ''teleprinter'', ''teletypewriter'' o ''teletype'' abbreviato quindi in ''TTY'').<
>
I primi sistemi informatici (approssimativamente negli anni '50 - '70) consistevano di grandi [[https://it.wikipedia.org/wiki/Mainframe|mainframe]] o computer centrali; non erano dotati di interfacce hardware/software di I/O paragonabili a quelle attuali (mouse, tastiere e schermi) e gli utenti di solito non vi lavoravano direttamente. I dati venivano compilati da remoto su supporti fisici (spesso schede perforate); poi una volta raccolti, caricati e processati, venivano infine restituiti agli utenti sotto forma di stampe cartacee.<
>
Per semplificare il flusso di lavoro, fu pensato di collegare i computer a delle telescriventi connesse tramite cablaggio. In questo modo si potevano impartire istruzioni direttamente al calcolatore tramite una tastiera. Furono poi introdotti degli schermi video che non rendevano più necessaria la stampa.<
>
Nascono così alcuni termini ed espressioni utilizzate ancora oggi, tra cui:
* '''prompt''': era un simbolo stampato che fungeva come segnale con cui la telescrivente notificava di essere pronta all'utilizzo.
* '''console''': nel senso di quadro di comando dotato di pulsanti e tasti.
* '''stampare a schermo''': far comparire un output su un monitor anziché stamparlo su carta (si pensi al comando `print` in alcuni linguaggi di programmazione).
* '''terminale''': rappresenta il termine (l'estremità finale) della connessione fisica fra la macchina e l'operatore.<
>
Si arrivò quindi ad un punto in cui fu possibile collegare più terminali ad un calcolatore centrale con sistema multi-utente. Anche nei primi personal computer (come l'Apple I) era presente una TTY all'interno dei circuiti.<
>
Successivamente, con il progresso tecnologico, le telescriventi furono virtualizzate grazie all'elettronica. In questo modo non era più necessario un dispositivo TTY meccanico collegato fisicamente. Le TTY delle moderne distribuzioni GNU/Linux sono infatti '''virtuali'''; pur collegandosi a tastiere e schermi, nel loro ''core'' simulano una classica macchina telescrivente.
== Descrizione ==
L'implementazione delle TTY in GNU/Linux serve principalmente per permettere agli utenti di avere sempre almeno un'interfaccia con cui operare.<
>
È infatti disponibile un terminale TTY quando si utilizza un sistema senza GUI (come su sistema Arch, Debian o Ubuntu minimali) oppure quando il sistema non riesce a caricare la sessione grafica in seguito a problemi.
Per Unix fu implementato '''getty''' ('''get tty'''), un programma che gestisce terminali fisici o virtuali per permettere l'accesso multi-utente su sistemi host (per GNU/Linux sono stati implementati l'equivalente '''agetty''' ed altri).<
>
Inoltre nei sistemi basati su Unix, TTY è un dispositivo astratto. Può riferirsi ad un dispositivo di input fisico come una porta seriale, oppure a una TTY virtuale che consente agli utenti di interagire con il sistema. Consiste anche di un sottosistema che consente la gestione dei processi, la gestione delle sessioni a livello di kernel tramite driver TTY.<
>
Ogni volta che si avvia un emulatore di terminale o si utilizza qualsiasi tipo di shell nel sistema, questo interagisce con TTY virtuali, detti anche pseudo-TTY o PTY.<
>
Tuttavia per questi aspetti si rimanda agli [[#Ulteriori_risorse|approfondimenti]].
Solitamente i moderni sistemi GNU/Linux offrono fino a sette console virtuali TTY, di cui una riservata all'utilizzo grafico (tradizionalmente '''tty7''' in molte distribuzioni).
<
>
||