Por que algumas distribuições Linux ainda têm / dev / ttyS0, ttyS1, etc., mesmo que os computadores mais novos não possuam uma porta serial desse tipo?

33

Muitos computadores novos e laptops não possuem portas seriais de 9 pinos / 25 pinos. Por que muitas distribuições do Linux ainda contêm /dev/ttyS0 , dev/ttyS1 arquivos de dispositivos?

Como udev pode criar os arquivos do dispositivo dinamicamente, por que /dev/ttyS0 , /dev/ttyS1 ainda são criados estaticamente? Toda vez que eu inicializo, /dev/ttyS0 e /dev/ttyS1 estão lá.

A propósito: estou usando o Debian 7.0.

    
por cli__ 07.04.2014 / 13:20

3 respostas

40

Esses nós /dev aparecem porque o driver da porta serial padrão do PC é compilado no kernel que você está usando e está encontrando UARTs . Isso faz com que /sys/devices/platform/serial8250 (ou algo compatível) apareça, então o udev cria os nós /dev correspondentes.

Estas UARTs são provavelmente uma das muitas características do chipset da sua placa-mãe. UARTs seriais no chipset são bastante comuns ainda, embora esteja se tornando cada vez menos comum um conector DB-9 ser conectado a esses pinos IC UART.

Em algumas placas-mãe, há um conector de cabeçalho para cada porta serial, e você tem que comprar um cabo adaptador se você deseja rotear esse conector para a parte de trás do PC:

Outras placas-mãe que usam o mesmo chipset podem nem mesmo expor o conector de cabeçalho, mesmo que o recurso esteja disponível em silício, apenas para economizar um pouco de espaço de PCB e alguns centavos para o conector de cabeçalho.

Alguns UARTs em série adicionam um custo insignificante a um IC de chipset de PC produzido em massa, enquanto acrescenta alguns dólares ao custo final de varejo de uma placa-mãe para executar um conector DB-9 na borda da placa. Há também um custo no espaço do PCB; espaço na borda da placa é especialmente precioso.

Não há uma maneira padrão de investigar a existência de um dispositivo conectado a uma porta serial RS-232.

Contrast USB, onde a mera presença de uma porta na placa-mãe não causa a criação de um /dev , mas a conexão de um dispositivo é feita, porque há uma negociação bastante complexa entre o dispositivo e o sistema operacional host . Na verdade, o dispositivo se anuncia no SO, portanto udev pode reagir criando um nó /dev apropriado para o dispositivo.

    
por 07.04.2014 / 14:07
3

Imagine rodar o Linux sob virtualização, muitos dos emuladores ainda dependem da saída do console para a porta serial. É um padrão conveniente. Além disso, o servidor headless ainda usa porta serial para comunicação.

    
por 08.04.2014 / 02:48
0

Vale a pena mencionar que muitos servidores (a maioria deles) ainda fornecem acesso serial (ttyS0). Eu preciso conectar-me através de uma conexão Serial sobre LAN através do iLO / iDRAC quase diariamente. Como o @Patrick observou, conecto-me a máquinas virtuais pela porta serial, bem como ao reconfigurar a rede, etc.

    
por 09.02.2015 / 15:04