# Multiterminal

Um multiterminal ou multi-estação é um (único) computador que pode ser utilizado por múltiplos usuários ao mesmo tempo localmente. A configuração envolve um conjunto de dispositivos entrada (ex.: teclado, mouse e pendrives) e saída (ex.: monitor, fones de ouvido)

## Motivação

Com o aumento da capacidade de processadores e memória, um grande número de tarefas pode ser feito sem deixar o computador mais lento. Entretanto, usando a configuração padrão só é possível haver um usuário utilizando o computador ao mesmo tempo, e isso limita a utilização do sistema, que fica ocioso a maior parte do tempo. Com um multiterminal, vários usuários podem dividir o mesmo computador, então uma maior parte de sua capacidade será explorada. Por exemplo: se alguém estiver somente utilizando um navegador de internet, ou escrevendo um texto, ninguém mais poderá utilizar o computador, e 90% do sistema estará ocioso. Com multiterminais, outras pessoas poderão utilizar os 90% remanescentes, então o sistema será mais bem-utilizado. Entretanto, se alguém utilizar todos os recursos da máquina (jogando um jogo 3-D, por exemplo), os outros usuários terão um sistema bem lento.
Uma outra grande vantagem dos multiterminais é o preço: não há necessidade de comprar placas-mãe, microprocessadores, memória RAM, disco rígido e outras coisas para cada usuário. Só é necessário comprar um bom hardware. Por exemplo, comprar um processador bom geralmente custa menos do que comprar mais de um processador mediano.

## História dos Multiterminais

Os computadores pessoais ("personal computer" - PC), que eram máquinas para também uso pessoal e não apenas processar ou computar, surgiram em meados de 1968 com valores na ordem de US$ 20.000,00. Os PCs foram oferecidos ao mercado por empresas como IBM, Intel, Apple, HP, Xerox, dentre outras, porém hoje é possível qualquer pessoa comprar peças separadamente, cada uma da marca e valor que achar conveniente, desde que compatíveis entre si, e montar seu próprio PC a custos inferiores a US$ 500,00.
Para uso geral e a custo baixo, surgem os primeiros PCs em 1974 com monitores monocromático (o desenvolvimento de monitores coloridos se dá em 1975). Chega então ao mercado o Apple II com monitor colorido em 1977, com 16 cores. Seguindo a evolução, surgem as placas de vídeo VGA de 256 cores e a Apple lança em 1987 o Macintosh II com possibilidade de se colocar até 3 placas de vídeo e então até 3 monitores. Em 1991, com mais cores e a necessidade de uma tela maior, surgem experimentos para fazer com que os vários monitores se comportem como um só.
Mas somente em meados de 1999 surge a ideia de se ligar mais teclados e mouses, implementada primeiramente pelo brasileiro Miguel Freitas, utilizando sistema operacional Linux e sistema gráfico X (na época mantido pela XFree86), possibilitando um PC ser usado por várias pessoas de forma independente. Seu processo era fazer uma alteração no X e executar várias instâncias do X ao mesmo tempo, sendo que cada X capturava eventos de teclado e rato específicos e apresentava a tela gráfica em placa de vídeo específica, dando a real impressão de que eram vários PCs. Este método recebeu o nome de multiterminal ou multiseat.
Após Freitas, vieram várias outras tentativas em 2002 a 2003, como a solução proprietária "Desktop Multiplier" da Userful (hoje chamada de "Userful Multiplier") com um X modificado, e soluções como as de Svetoslav Slavtchev alterando o núcleo em vez do X, com trabalhos sobre evdev e faketty, por Aivils Stoss, possibilitando dessa forma mais de dois usuários distintos ao mesmo tempo por máquina. Mais adiante, em 2005, a equipe C3SL da Universidade Federal do Paraná (UFPR) cria a forma de se executar um X virtual, inicialmente o Xnest e posteriormente o Xephyr, em cada tela do X real (host), sendo modificados o Xnest e o Xephyr para cada X virtual obter exclusividade sobre um rato e um teclado. Tal solução é a mais utilizada devido sua estabilidade. Em 2008, o C3SL cria a ferramenta Multiseat Display Manager (MDM) para automatizar a instalação e configuração de um multiterminal. Esta equipe, também em 2008, concebeu um live-cd para propósitos de testes.

## Como fazer (Linux)
### Requerimentos em Hardware

Cada monitor deverá ser conectado a uma saída gráfica. Por exemplo, para fazer um four-head (um multiterminal para quatro usuários), serão necessários 4 monitores, 4 teclados, 4 mouses e 4 placas de vídeo (ou duas placas 'dual head', ou uma placa vídeo 'quad head')

### Requerimentos em Software

Há várias maneiras diferentes de se fazer multiterminais, e novas maneiras estão constantemente sendo desenvolvidas. Atualmente a mais utilizada é a solução com Xephyr e com evdev.
Estes são links para versões existentes em Wikibooks. Para versões não listadas, veja a seção "Ligações externas".
* Multiterminal com evdev (múltiplas instâncias do X)
* Multiterminal com Xephyr (X base com vários Xephyrs)

## Controvérsia entre Multiseat e Multiterminal

Há uma controvérsia entre Multiseat e Multiterminal. Na prática são as mesmas coisas, a única diferença é que Multiterminal usa computadores semi-completos (Com praticamente tudo, mas sem HD nem leitor de DVD).
Já Multiseat, usa somente "clientes burros" baseados em pequenos HUBs USB.
A tamanha confusão entre Multiseat USB como Multiterminal dificulta a pesquisa por meio de um usuário leigo, e difunde erroneamente o termo.