Se esegui fuser /dev/tty7
, vedrai che il server X11 tiene effettivamente quel dispositivo TTY per sé.
Il server X11 non è in esecuzione in parallelo a console virtuale 7, ma effettivamente dentro console virtuale 7. Sta passando quella console virtuale alla modalità grafica e la usa.
Di per sé, una console virtuale è solo uno schermo nero con forse un cursore lampeggiante nell'angolo in alto a sinistra. Se una console virtuale è altrimenti non occupata, puoi usarla ad es. reindirizzare i registri o altri messaggi importanti ad esso.
Esistono più interfacce di programmazione per una console virtuale:quella predefinita è un emulatore TTY, che può essere utilizzato per eseguire un getty
processo per consentire gli accessi dalla riga di comando. Ma sui sistemi moderni, di solito c'è anche l'interfaccia frame-buffer (VESA SVGA o UEFI GOP). Se i moduli del kernel del driver GPU sono caricati, c'è anche l'impostazione della modalità del kernel e l'interfaccia di rendering diretto (DRI). Se possibile, il server X11 utilizzerà DRI e il modesetting del kernel, ma può ricorrere all'interfaccia framebuffer o persino all'accesso diretto all'hardware della vecchia scuola, se necessario.
Non puoi, il tuo server X è in esecuzione lì. Prende il controllo del terminale virtuale.
I tuoi terminali da 1 a 6 stanno eseguendo un getty
variante, ed è ciò che avvia il processo di accesso e quindi la shell in esecuzione nel terminale virtuale. Ma non puoi avere un getty
e un server di visualizzazione nello stesso terminale virtuale.