Por que os sistemas Linux possuem vários consoles virtuais?

3

Podemos mudar para uma consola de texto premindo Ctrl + Alt + F < 1-7 > no teclado.

Quais são os usos desses consoles e por que existem vários consoles?

    
por peonicles 25.07.2012 / 22:51

6 respostas

6

Por que vários consoles? Porque - curiosamente - o Linux começou como um emulador de terminal.

link

Quanto a "por que 7"? Isso não é inerente ao sistema operacional; você pode realmente ter qualquer número de consoles virtuais, dentro da razão. É configurável em /etc/inittab na maioria das distribuições.

    
por 25.07.2012 / 22:56
4

Porque é isso que se fazia se um sistema operacional multiusuário fosse compatível com PC.

No mundo dos minicomputadores, um tinha vários terminais reais, geralmente conectados através de um concentrador de terminais ou algo assim, e vários usuários poderiam ter um terminal. No mundo do IBM PC, no entanto, geralmente não havia terminais reais. Afinal, era um computador pessoal .

Portanto, os sistemas operacionais multiusuários forneciam consoles virtuais que eram exibidos no adaptador de vídeo do PC, e aquele alternava entre as combinações de teclas de atalho. CP concomitante / H-86, já em 1982, tinha quatro virtuais consolas, que uma comutação entre utilizando as combinações do teclado Ctrl + 1 , Ctrl + 2 , Ctrl + 3 e Ctrl + 4 .

O SCO Xenix no início dos anos 80 tinha o que se chamava Multiscreen . Como usuário do Linux, você vai achar isso muito familiar. Havia originalmente 10 terminais virtuais, cujos arquivos de dispositivo de caracteres eram denominados /dev/tty01 to /dev/tty10 . Um deles alternou entre eles usando Alt e uma tecla de função - Alt + F4 para mudar para o console virtual número 4, por exemplo. Pode-se também percorrê-los por ordem pressionando Control + PrtSc . Com o lançamento do Xenix 5, o número de consoles virtuais foi aumentado de 10 para 12, para refletir a existência do teclado Enhanced PC / AT com seus adicionais F11 e F12 teclas de função.

Longe do mundo do MP / M e do Unix, o mundo parecido com o VMS e o DOS dos sistemas operacionais PC Compatible tinham idéias parecidas. Isso era verdade mesmo para sistemas operacionais não multiusuários. A versão 1.0 do OS / 2 em 1987, por exemplo, tinha um Gerenciador de Sessão a partir do qual se podia iniciar até 15 sessões , combinações virtualizadas separadas de saída de exibição e entrada de teclado / mouse. Um ciclo entre sessões em ordem com Alt + Esc e alternado de volta para o Gerenciador de Sessões (do qual se poderia iniciar novas sessões ou mudar para sessões existentes a partir de um menu) com < kbd> Control + Esc .

O MS-DOS 5 tinha dosshell , que mudava a tela entre vários programas (embora sem multitarefa como o OS / 2 tinha) e tinha o familiar Alt + Tab e Alt + Esc . DR-DOS 6 tiveram taskmax , onde se usou Controle + Esc para chegar ao Gerenciador de Tarefas e Ctrl + 1 , Ctrl + 2 , e assim por diante, para mudar diretamente para as telas de tarefas individuais , que podem ser trocadas para e de disco ou memória estendida / expandida (sujeita a algumas restrições).

Na época em que o Linux surgiu na década de 1990, a ideia de que o que se via na tela (modo texto) e digitado no teclado era a entrada / saída virtualizada de apenas uma das várias sessões / tarefas / terminais / consoles, que um poderia alternar entre com teclas de atalho, foi bastante incorporado no pensamento das pessoas. Já existia no mundo do PC Compatible há quase dez anos.

Quanto a que uso eles são, dou-lhe as palavras de Robin Raskin e Kaare Christian:

Xenix's Multiscreen feature is a boon for those who like to do several things at once. A single keystroke switches the console screen and keyboard from one log-in session to another. It's as if you have several terminals on your desk, but with only one physical screen and keyboard. The applications for this feature quickly become evident. For example, when preparing a table of figures, I used the editor on one screen and a desk calculator program on another, and I previewed the printer output on a third. Switching from one to another was trivial: Alt-F1 pulled up the editor screen, Alt-F2 brought forth the calculator, and Alt-F3 showed me the printer preview. Each screen switch takes just a fraction of a second.
- Robin Raskin e Kaare Christian (agosto de 1986). "Xenix System V: Uma Resposta de Múltiplos Usuários para o AT?". PC Magazine 5 (14). ISSN 0888-8507. Ziff Davis, Inc .. pp. 253-266

Hoje em dia, é claro, é possível criar uma GUI com vários emuladores de terminal e alternar entre eles sem alternar todo o buffer de exibição, e o adaptador de monitor quase não detecta a operação em seu modo de texto. (Mesmo assim, é possível fazer isso em estações de trabalho Unix, que tinham buffers de quadros gráficos e o X Window System.) Portanto, ter vários consoles virtuais parece menos um recurso. Mas para aqueles que vieram do mundo da computação multiusuário em minicomputadores com apenas terminais reais, onde agrupar um grupo de terminais na mesa de trabalho era uma coisa de usuário de poder a fazer, especialmente se não houvesse não foi puxado screen de comp.sources.unix (a coisa de outro usuário avançado a fazer), definitivamente era na época.

Leitura adicional

por 09.03.2014 / 03:09
2

se você executar um servidor (sem GUI) em vez de um desktop linux os (com GUI), desta forma você pode ter múltiplos terminais abertos ao mesmo tempo sem usar um software como a tela para gerenciar múltiplos terminais.

Em um sistema GUI, isso não é muito útil, mas aqui estão algumas situações em que eu o uso:

Você pode usar um dos console para efetuar login no sistema sem carregar a GUI, por exemplo, para atualizar ou modificar a GUI.

Se você precisar fazer algo rapidamente (sem esperar o carregamento completo da GUI), como iniciar atualizações em algumas máquinas, por exemplo. É mais rápido abrir um dos consoles e usá-lo do que carregar o gui e abrir um terminal e fazer o logoff depois de concluído.

Eu usei-o às vezes para fazer login em uma máquina (localmente sem usar ssh) enquanto outro usuário estava logado usando a GUI também (sem precisar trocar de usuário ou abrir um terminal na tela)

    
por 09.03.2014 / 03:35
1

Ele permite que o usuário execute várias tarefas diretamente diretamente de um teclado / monitor conectado ao sistema. Nove de dez vezes eu estou remotamente em um sistema via ssh e posso abrir tantos "consoles" quanto eu quiser, mas se você não estiver trabalhando em um ambiente de rede, isso ajuda. Um bom exemplo: o instalador Debian usa vários consoles virtuais - um tem o instalador ncurses -based, outros dois têm um shell apenas no caso de algo dar errado ou você deseja executar comandos shell para examinar o hardware, etc. quarto é usado para exibir a saída de status e erro dos processos do instalador.

Os sistemas GUI permitem alternar entre programas em execução e interagir com eles. Assim, o usuário pode fazer coisas como iniciar um trabalho, colocar sua janela em segundo plano e executar tarefas adicionais, mantendo convenientemente as guias sobre o que também está sendo executado.

Você pode entrar em um console, executar um comando de longa duração e, em seguida, alternar / login para outro console e fazer outras coisas. Você pode voltar ao primeiro console para monitorar o progresso. Alternativamente, você pode fazer login como usuários diferentes, se quiser, para testar como as coisas funcionam em contas diferentes ou simplesmente para não usar uma conta root o tempo todo.

Também é possível usar um dos consoles como apenas um dispositivo de saída, para que você possa visualizar logs ou relatórios e não confundir seu console atual. /etc/inittab controla quais tty ou consoles têm getty em execução, que é o que fornece o prompt de login.

    
por 26.07.2012 / 17:32
0

Se você tiver um trabalho de execução demorada, talvez queira examinar o arquivo de log, o arquivo de erro, o carregamento do sistema, o espaço de trabalho livre, o espaço livre em disco, quantos usuários estão no sistema, etc. / p>

A questão se torna: não, por que 7 - mas por que não mais ...

    
por 25.07.2012 / 22:57
0

Os sistemas tradicionais Unix permitiam apenas um usuário conectado por um terminal (remoto). Mas os usuários logo buscaram maneiras de "fazer várias coisas ao mesmo tempo", ou seja, poder executar várias sessões. OK, você poderia assumir o terminal neigboring também ... mas isso não é muito bom. Então, programas como screen vieram a ser.

Logo após o Linux começar, a possibilidade de ter várias sessões disponíveis foi adicionada. Não há screen ainda, e um PC ainda tem normalmente apenas um conjunto de teclado / tela / mouse ...

No final, se isso puder ser feito com (relativamente) pouco esforço, por que não? É muito conveniente (OK, hoje eu estou feliz de ter uma dúzia de terminais abertos em X, mas antigamente não havia X).

    
por 09.03.2014 / 03:39