Hardware é tudo que diz respeito a parte física do computador. Nesta seção serão abordados assuntos relacionados com a configuração de hardwares, escolha de bons hardwares, dispositivos for Windows, etc.
É um circuito eletrônico encaixado na placa mãe que tem por objetivo adicionar novas funcionalidades ao computador. Esta placa pode ser uma:
O encaixe da placa mãe que recebe as placas de expansão são chamados de Slots.
Seria terrível se ao configurar CADA programa que utilize o mouse ou o modem precisássemos nos se referir a ele pela IRQ, I/O, etc... para evitar isso são usados os nomes de dispositivos.
Os nomes de dispositivos no sistema GNU/Linux
são
acessados através do diretório /dev
. Após configurar corretamente
o modem, com sua porta I/O 0x2F8 e IRQ 3, ele é identificado automaticamente
por /dev/ttyS1
(equivalente a COM2
no
DOS
). Daqui para frente basta se referir a
/dev/ttyS1
para fazer alguma coisa com o modem.
Você também pode fazer um link de /dev/ttyS1
para um arquivo
chamado /dev/modem
usando: ln -s /dev/ttyS1
/dev/modem, faça a configuração dos seus programas usando
/dev/modem
ao invés de /dev/ttyS1
e se precisar
reconfigurar o seu modem e a porta serial mudar para /dev/ttyS3
,
será necessário somente apagar o link /dev/modem
antigo e criar um
novo apontando para a porta serial /dev/ttyS0
.
Não será necessário reconfigurar os programas que usam o modem pois eles estão
usando /dev/modem
que está apontando para a localização correta.
Isto é muito útil para um bom gerenciamento do sistema.
Abaixo uma tabela com o nome do dispositivo no GNU/Linux
, portas
I/O, IRQ, DMA e nome do dispositivo no DOS
(os nomes de
dispositivos estão localizados no diretório /dev
):
Dispos. Dispos. Linux DOS IRQ DMA I/O ttyS0 COM1 4 - 0x3F8 ttyS1 COM2 3 - 0x2F8 ttyS2 COM3 4 - 0x3E8 ttyS3 COM4 3 - 0x2E8 lp0 LPT1 7 3(ECP) 0x378 lp1 LPT2 5 3(ECP) 0x278 /dev/hda1 C: 14 - 0x1F0,0x3F6 /dev/hda2 D: * 14 - 0x1F0,0x3F6 /dev/hdb1 D: * 15 - 0x170,0x376
* A designação de letras de unidade do DOS
não é padrão como no
GNU/Linux
e depende da existência de outras unidades
físicas/lógicas no computador.
A configuração consiste em ajustar as opções de funcionamento dos dispositivos (periféricos) para comunicação com a placa mãe. Um sistema bem configurado consiste em cada dispositivo funcionando com suas portas I/O, IRQ, DMA bem definidas, não existindo conflitos com outros dispositivos. Isto também permitirá a adição de novos dispositivos ao sistema sem problemas.
É importante conhecer bem a configuração dos dispositivos do sistema para saber identificar e corrigir possíveis problemas de conflitos e o que deve ser modificado, caso seja necessário.
Os parâmetros usados para configurar dispositivos de hardware são a IRQ, DMA e I/O. Nem todo dispositivo usam estes três parâmetros, alguns apenas a I/O e IRQ, outros apenas a I/O, etc.
Existem dois tipos básicos de interrupções: as usadas por dispositivos (para a comunicação com a placa mãe) e programas (para obter a atenção do processador). As interrupções de software são mais usadas por programas, incluindo o sistema operacional e interrupções de hardware mais usado por periféricos. Daqui para frente será explicado somente detalhes sobre interrupções de hardware.
Os antigos computadores 8086/8088 (XT) usavam somente 8 interrupções de hardware operando a 8 bits. Com o surgimento do AT foram incluídas 8 novas interrupções, operando a 16 bits. Os computadores 286 e superiores tem 16 interrupções de hardware numeradas de 0 a 15. Estas interrupções oferecem ao dispositivo associado a capacidade de interromper o que o processador estiver fazendo, pedindo atenção imediata.
As interrupções do sistema podem ser visualizadas no kernel com o comando cat /proc/interrupts. Abaixo um resumo do uso mais comum das 16 interrupções de hardware:
0 Timer do Sistema - Fixa 01 Teclado - Fixa 02 Controlador de Interrupção Programável - Fixa. Esta interrupção é usada como ponte para a IRQ 9 e vem dos antigos processadores 8086/8088 que somente tinham 8 IRQs. Assim, pera tornar processadores 8088 e 80286 comunicáveis, a IRQ 2 é usada como um redirecionador quando se utiliza uma interrupção acima da 8. 03 Normalmente usado por /dev/ttyS1 mas seu uso depende dos dispositivos instalados em seu sistema (como fax-modem, placas de rede 8 bits, etc). 04 Normalmente usado por /dev/ttyS0 e quase sempre usada pelo mouse serial a não ser que um mouse PS2 esteja instalado no sistema. 05 Normalmente a segunda porta paralela. Muitos micros não tem a segunda porta paralela, assim é comum encontrar placas de som e outros dispositivos usando esta IRQ. 06 Controlador de Disquete - Esta interrupção pode ser compartilhada com placas aceleradoras de disquete usadas em tapes (unidades de fita). 07 Primeira porta de impressora. Pessoas tiveram sucesso compartilhando esta porta de impressora com a segunda porta de impressora. Muitas impressoras não usam IRQs. 08 Relógio em tempo real do CMOS - Não pode ser usado por nenhum outro dispositivo. 09 Esta é uma ponte para IRQ2 e deve ser a última IRQ a ser utilizada. No entanto pode ser usada por dispositivos. 10 Interrupção livre para dispositivos 11 Interrupção livre para dispositivos 12 Interrupção normalmente livre para dispositivos. O mouse PS/2, quando presente, utiliza esta interrupção. 13 Processador de dados numéricos - Não pode ser usada ou compartilhada 14 Esta interrupção é usada pela primeira controladora de discos rígidos e não pode ser compartilhada. 15 Esta é a interrupção usada pela segunda controladora de discos e não pode ser compartilhada. Pode ser usada caso a segunda controladora esteja desativada.
Dispositivos ISA, VESA, EISA, SCSI não permitem o compartilhamento de uma mesma IRQ, talvez isto ainda seja possível caso não haja outras opções disponíveis e/ou os dois dispositivos não acessem a IRQ ao mesmo tempo, mas isto é uma solução precária.
Conflitos de IRQ ocorrem quando dois dispositivos disputam uma mesma IRQ, e normalmente ocasionam a parada ou mal funcionamento de um dispositivo e/ou de todo o sistema. Para resolver um conflito de IRQs, deve-se conhecer quais IRQs estão sendo usadas por quais dispositivos (usando cat /proc/interrupts) e configurar as interrupções de forma que uma não entre em conflito com outra. Isto normalmente é feito através dos jumpers de placas ou através de software (no caso de dispositivos jumperless ou plug-and-play).
Dispositivos PCI são projetados para permitir o compartilhamento de uma mesma IRQ pois as manipulam de forma diferente. Se for necessário usar uma interrupção normal, o chipset (ou BIOS) mapeará a interrupção para uma interrupção normal do sistema (normalmente usando alguma interrupção entre a IRQ 9 e IRQ 12).
Cada IRQ no sistema tem um número que identifica a prioridade que será atendida pelo processador. Nos antigos sistemas XT as prioridades eram identificadas em seqüência de acordo com as interrupções existentes:
IRQ 0 1 2 3 4 5 6 7 8 PRI 1 2 3 4 5 6 7 8 9
Com o surgimento do barramento AT (16 bits), as interrupções passaram a ser identificadas da seguinte forma:
IRQ 0 1 2 (9 10 11 12 13 14 15) 3 4 5 6 7 8 PRI 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Note que a prioridade segue em seqüência através da ponte da IRQ 2 para IRQ 9. Os dispositivos com prioridade mais baixa são atendidos primeiro, mas é uma diferença de desempenho praticamente imperceptível de ser notada nos sistemas atuais.
A DMA é usada para permitir a transferência de dados entre dispositivos I/O e a memória sem precisar do processador faze-lo. Ele livra esta carga do processador e resulta em uma rápida transferência de dados.
O PC padrão tem dois controladores de DMA. O primeiro controla os canais 0, 1, 2, 3 e o segundo os canais 4, 5, 6, 7, assim temos 8 canais. No entanto, o canal 4 é perdido porque é usado pelo controlador de acesso direto a memória. Os canais 0-3 são chamados de canais baixos porque podem somente mover um byte (8 bits) por transferência enquanto canais altos movem 2 bytes (16 bits) por transferência.
Os dados movidos usando a DMA não são movidos através do controlador de DMA. Isto oferece uma limitação porque a DMA somente podem mover dados entre os dispositivos (portas I/O) e a memória. Não é possível mover dados entre as portas ou entre a memória.
Existem dois controladores de DMA nos computadores AT e superiores. Ao contrário do que acontece com os dois controladores de IRQ, o primeiro controlador é ligado ao segundo e não o segundo ao primeiro. Os canais de DMA altos (5 ao 7) somente podem ser acessados por dispositivos de 16 bits (aqueles que utilizam a segunda parte do slot AT). Como resultado temos 8 canais de DMA, de 0 a 7, sendo que a DMA 4 é usada como ligação entre eles.
Os canais de DMA em uso no sistema podem ser visualizados com cat /proc/dma. Abaixo uma listagem de uso mais comum dos canais de DMA.
DMA Barram. Uso 0 - Usada pelo circuito de refresh da memória DRAM 1 8/16 bits Normalmente usado por placas de som (canal 8 bits), porta paralela ECP, adaptadoras SCSI, placas de rede ou controladora de scanner. 2 8/16 bits Normalmente usado pela controladora de disquetes ou controladoras de tapes. 3 8/6 bits Usado pela porta paralela ECP, placa de som, controladoras de tapes, controladoras SCSI ou controladora de scanner antiga. 4 - Usada como ponte para a outra controladora de DMA (0-3) 5 16 bits Normalmente usada pela placa de som (canal 16 bits), placas controladoras SCSI, placas de rede ou controladora de scanner. 6 16 bits Placa de som (canal 16 bits), controladora de scanner ou placa de rede. 7 16 bits Placa de som (canal 16 bits), controladora de scanner ou placa de rede.
Somente dispositivos ISA e derivados dele, como o EISA e VESA, usam os canais de DMA padrão. Os atuais dispositivos de alta taxa de transferência (normalmente PCI) possuem seu próprio controlador de DMA embutido, muito mais rápido do que a DMA padrão. Este controlador de DMA é chamado de Bus Mastering e muito usado nos discos rígidos atuais e pode atingir taxas de 33,3MB/s (no modo 2) e 66MB/s (no modo 4 - requer um cabo IDE com aterramento para evitar interferências de ruídos externos).
Um canal de DMA não pode ser compartilhado entre dispositivos. Ainda é possível configurar dois dispositivos para usarem um mesmo canal de DMA, desde que ele não seja usado ao mesmo tempo. Isto acontece com Scanners paralelos que compartilham a mesma porta paralela com a impressora. Se você for uma pessoa que explora os recursos de multitarefa de seu Linux e seu desempenho, evite estes tipos de dispositivos, prefira aqueles que utilizam seus próprios recursos.
Quando ocorre um conflito de DMA, os dados podem ser misturados e ocorrerem coisas estranhas até o travamento total do sistema. Este tipo de conflito é difícil de se diagnosticar, a não ser que o técnico seja experiente o bastante e tenha desconfiado do que o problema se trata...
Cada dispositivo possui um endereço de porta. O endereço é uma localização da memória usada pelo computador para enviar dados ao dispositivo e onde o dispositivo envia dados ao computador. Ao contrários da IRQ e DMA, o dispositivo pode usar mais de uma porta de Entrada/Saída ou uma faixa de endereços. Por exemplo, uma placa de som padrão usa as portas 0x220, 0x330 e 0x388, respectivamente audio digital, midi e opl3.
As placas de rede normalmente transferem grandes quantidades de dados, assim ocupam uma faixa de endereços. Minha NE2000, por exemplo, ocupa a faixa de endereços 0x260 a 0x27F (0x260-0x27F). O tamanho da faixa de endereços varia de acordo com o tipo de dispositivo.
Os endereços de I/O em uso no sistema podem ser visualizados com o comando cat /proc/ioports.
Endereços das portas de entrada/saída não podem ser compartilhados
Hardwares configuráveis por jumpers (pinos metálicos protegidos por uma capa plástica) tem sua configuração alterada através da colocação, retirada ou mudança de posição. Hardwares configuráveis por jumpers são os preferidos por técnicos de informática muito experientes.
Estes hardwares possuem a característica de somente terem seus parâmetros modificados através da mudança da posição dos jumpers da placa, desta forma se obtém uma configuração fixa (não podendo ser modificada por qualquer tipo de programa) e o dispositivo estará sempre pronto para ser ativado após a inicialização de qualquer sistema operacional.
O único inconveniente é a necessidade de se retirar a placa do computador para se ter acesso aos jumpers de configuração, a não ser que estejam manualmente acessíveis. Alguns hardwares configuráveis através de jumpers podem também funcionar como Plug-and-Play, através de um ajuste da posição dos jumpers para Plug-and-Play.
Normalmente as placas controladoras SIDE, rede, bons modelos de fax-modens, placas de som, SCSI, etc., são configuradas por jumpers e possuem um mapa de configuração gravado em seu circuito impresso que explica as posições de como os jumpers devem ser posicionados para operar na configuração desejada. Normalmente é possível escolher uma entre vários tipos de configuração, mas é recomendado optar por valores padrões (para detalhes veja IRQ - Requisição de Interrupção, Section 3.3.1, DMA - Acesso Direto a Memória, Section 3.3.2 e I/O - Porta de Entrada/Saída, Section 3.3.3).
As disposição dos jumpers são normalmente definidas em fechado/aberto e multi-posição. Na disposição fechado/aberto, o jumper pode ou não ser colocado, definindo a configuração do dispositivo:
::|::
Esta disposição é facilmente encontrada na seleção de IRQ e I/O em placas de fax-modem.
Na disposição multi-posição, os pinos de encaixe são numerados de 1 a 3 (ou 1 a 4, 1 a 5, etc) e os pinos podem ou não ser colocados na placa e a posição que são colocados também influencia os valores escolhidos para o funcionamento do dispositivo (a posição 1-2 especificam um valor enquanto 2-3 especificam outro). A associação entre a posição dos jumpers e a configuração desejada é feita consultando o mapa desenhado no circuito impresso da placa ou o manual de instruções da placa.
A configuração de jumper através de multi-posição é normalmente usada em placas mãe para definir a freqüência de operação do barramento, a freqüência de multiplicação ou o tipo do processador.
Se não possuir o mapa de configuração de sua placa e/ou o manual de instruções, será necessário fazer um mapeamento manual da placa, mas para isto você precisará conhecer detalhadamente a configuração de portas I/O, DMA, IRQ usadas na máquina que será usada e anotar as diferenças obtidas através da modificação da pinagem do dispositivo. Isto não é fácil, mas técnicos de informática experientes conhecerão as armadilhas encontradas pelo mapeamento manual de placas e farão o esquema de configuração completo do dispositivo, obtendo um excelente manual de instruções. Nesta hora a experiência conta mais que o uso de programas de diagnóstico.
Outra característica de hardwares configurados através de jumpers é que raramente apresentam problemas de funcionamento, a não ser que seus parâmetros como IRQ, DMA, ou I/O estejam em conflitos com outro dispositivo, mas isso não é culpa do fabricante e nem mesmo do dispositivo...
É a mesma coisa que os hardwares configuráveis por jumpers exceto que são usados dip-switches no lugar de jumpers. O dip-switches é um conjunto de chaves numeradas que podem ser colocadas para cima ou para baixo (como um disjuntor ou vários interruptores LIGA/DESLIGA colocados um ao lado do outro) para se modificar a configuração do dispositivo.
Normalmente as chaves estão acessíveis na parte metálica da placa (onde os hardwares são conectados) para permitir a fácil mudança de configuração sem retirar a placa. É ainda comum encontrar isto em algumas placas de fax-modem.
Os hardwares jumperless não possuem jumpers e são configurados através de um programa que acompanha a própria placa. Neste programa é escolhida a IRQ, DMA, I/O e a configuração é salva na própria placa ou restaurada após cada inicialização por um programa carregado na memória. Devido a configuração via software, se obtém uma configuração fixa com muito mais facilidade do que via jumpers (por não haver a necessidade de se retirar a placa).
A maioria das placas jumperless podem funcionar também como Plug-and-Play. Existem muitas placas de rede, fax-modem, scanner jumperless no mercado.
O Plug-and-Play é um protocolo que lê os valores de operação disponíveis para a placa e permitem que o usuário possa especificar facilmente qual será sua IRQ, DMA, I/O.
A diferença em relação ao modo jumperless é que o mesmo programa de
configuração Plug-and-Play permite configurar todas as placas Plug-and-Play e a
placa somente recebe os valores de IRQ, DMA e I/O após ser ativada por este
programa, normalmente o isapnp
no Linux. Isto significa que a
placa não tem nenhum parâmetro de IRQ, DMA e I/O na partida do sistema.
Desta forma, somente sistemas operacionais que possuem suporte ao Plug-and-Play
(como o GNU/Linux
, Windows
) ou programas acionadores
PnP (como o ICU
para o DOS
) podem ativar e usar estes
tipos de placas.
Placas Plug-and-Play permitem muita flexibilidade de configuração de
dispositivos. O programa usado para a configuração de placas Plug-and-Play no
GNU/Linux
é o isapnp
e a configuração de todas as
placas Plug-and-Play são definidas no arquivo /etc/isapnp.conf
.
Veja a próxima seção para entender como funciona o arquivo de configuração
isapnp.conf
e assim poder ativar seu dispositivo Plug-and-Play.
isapnp.conf
Segue abaixo um exemplo de arquivo /etc/isapnp.conf
gerado através
do pnpdump
para a configuração de uma placa de Som Sound
Blaster com porta IDE embutida no GNU/Linux
.
O objetivo é configurar a placa Sound Blaster para operar na configuração:
GNU/Linux
permite isso, e ele será
configurado como /dev/hdg1
xmms
Observe que as linhas iniciando com # são apenas comentários e não
serão interpretadas pelo isapnp
:
# $Id: pnpdump.c,v 1.21 1999/12/09 22:28:33 fox Exp $ # Release isapnptools-1.21 (library isapnptools-1.21) # # Para detalhes do formato do arquivo de saída, veja a página de # manual do isapnp.conf # # A seção abaixo faz o isolamento da placa através da BIOS (normalmente não # precisa ser alterado). Com a configuração abaixo, os dados sobre # dispositivos serão obtidos diretamente da BIOS. # Em placas mãe que não suportam Plug-and-Play, é necessário apenas o # parâmetro (ISOLATE) para que o isapnp possa assumir totalmente o controle # para identificação dos dispositivos Plug-and-Play (READPORT 0x0273) (ISOLATE PRESERVE) (IDENTIFY *) (VERBOSITY 2) (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # ou WARNING # Card 1: (serial identifier fc 10 01 fb 5d 28 00 8c 0e) # Vendor Id CTL0028, Serial Number 268565341, checksum 0xFC. # Version 1.0, Vendor version 1.0 # ANSI string -->Creative SB16 PnP<-- # # Descomente os valores desejados abaixo, selecionando a configuração requerida. # Note que o valor padrão equivale ao primeiro parâmetro disponível (Minimum) # "(CONFIGURE" inicia um bloco de configuração e finaliza com "(ACT Y)" # Para ativar as configurações selecionadas, basta descomentar a linha # "#(ACT Y)" no final do bloco de configuração. (CONFIGURE CTL0028/268565341 (LD 0 # ANSI string -->Audio<-- # Pela string acima, esta é a configuração de Audio da Sound Blaster # Hora de múltiplas escolhas, escolha apenas uma! # Inicia funções dependentes, classificada por prioridade aceitável # # IRQ 5, 7 ou 10. (INT 0 (IRQ 5 (MODE +E))) # Foi especificada a IRQ 5 na configuração acima # Primeiro canal DMA 0, 1 ou 3. # Somente DMA de 8 bits # Dispositivo lógico não é um bus master # DMA may execute in count by byte mode # DMA may not execute in count by word mode # DMA channel speed in compatible mode (DMA 0 (CHANNEL 1)) # O valor da DMA 8 bits padrão é 0 (o mais baixo), mas este não é o valor # que desejamos. Ajustamos o valor para 1. # Next DMA channel 5, 6 or 7. # 16 bit DMA only # Logical device is a bus master # DMA may not execute in count by byte mode # DMA may execute in count by word mode # DMA channel speed in compatible mode (DMA 1 (CHANNEL 5)) # O canal DMA 16 bits desejado para a Sound Blaster é o 5. Apenas # descomentamos a linha acima. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0220 # Maximum IO base address 0x0280 # IO base alignment 32 bytes # Number of IO addresses required: 16 (IO 0 (SIZE 16) (BASE 0x0220)) # Apenas descomentamos a linha. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0300 # Maximum IO base address 0x0330 # IO base alignment 48 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x0330)) # O valor padrão é 0x0300 para a porta MIDI, mas nós desejamos usar o # valor 0x0330. Descomentamos a linha e alteramos o valor da I/O. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0388 # Maximum IO base address 0x0388 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 2 (SIZE 4) (BASE 0x0388)) # Apenas descomentamos a linha. 0x0388 é um valor padrão para OPL # Fim de funções dependentes (NAME "CTL0028/268565341[0]{Audio }") (ACT Y) #Descomentamos para ativar este bloco de configuração acima )) ######################################## # Logical device id CTL2011 # # Descomente os valores desejados abaixo, selecionando a configuração requerida. # Note que o valor padrão equivale ao primeiro parâmetro disponível (Minimum) # "(CONFIGURE" inicia um bloco de configuração e finaliza com "(ACT Y)" # Para ativar as configurações selecionadas, basta descomentar a linha # "#(ACT Y)" no final do bloco de configuração. (CONFIGURE CTL0028/268565341 (LD 1 # Compatible device id PNP0600 # ANSI string -->IDE<-- # Pela string acima sabemos que esta é a configuração da IDE embutida na SB # Hora de múltiplas escolhas, escolha apenas uma! # Inicia funções dependentes: Prioridade Preferida # IRQ 10. (INT 0 (IRQ 10 (MODE +E))) # Descomentamos e aceitamos o valor acima, pois não entra em conflito com # nenhum outro dispositivo do sistema. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0168 # Maximum IO base address 0x0168 (IO 0 (SIZE 8) (BASE 0x0168)) # Descomentamos e aceitamos o valor acima, pois não entra em conflito com # nenhum outro dispositivo do sistema. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x036e # Maximum IO base address 0x036e # IO base alignment 1 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x036e)) # Descomentamos e aceitamos o valor acima, pois não entra em conflito com # nenhum outro dispositivo do sistema. # End dependent functions (NAME "CTL0028/268565341[1]{IDE }") (ACT Y) # Descomentando esta linha, a placa IDE da Sound Blaster passará a # funcionar como IDE quartenária (de acordo com os recursos passados) )) ####################################### # Logical device id CTL7001 # # Descomente os valores desejados abaixo, selecionando a configuração requerida. # Note que o valor padrão equivale ao primeiro parâmetro disponível (Minimum) # "(CONFIGURE" inicia um bloco de configuração e finaliza com "(ACT Y)" # Para ativar as configurações selecionadas, basta descomentar a linha # "#(ACT Y)" no final do bloco de configuração. (CONFIGURE CTL0028/268565341 (LD 3 # Compatible device id PNPb02f # ANSI string -->Game<-- # Pela string acima sabemos que é a Entrada para Joystick # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0200 # Maximum IO base address 0x0200 # IO base alignment 1 bytes # Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x0200)) (NAME "CTL0028/268565341[3]{Jogo }") (ACT Y) # Sem muitos comentários... descomentamos a linha IO acima e # ativamos a configuração (descomentando (ACT Y)). A diferença # é que especificamos o nome GAME para o recurso através da # linha (NAME "CTL0028/268565341[3]{Jogo }") # Este nome será mostrado quando o Joystick for ativado )) # Returns all cards to the 'Wait for Key' state (WAITFORKEY)
Note ainda que o isapnp.conf
gerado através do
pnpdump
contém vários tipos de prioridades de configuração para o
mesmo bloco de configuração e a prioridade que usamos acima foi priority
acceptable para o bloco de audio da Sound Blaster e priority
preferred para a porta IDE e Joystick. Os tipos de prioridades
disponíveis são:
Após a gravação do arquivo /etc/isapnp.conf
, basta você digitar
isapnp /etc/isapnp.conf para ativar a configuração dos
dispositivos listados com as configurações que você escolheu. Se o
isapnp
lhe mostrar mensagens de conflito ou qualquer outro
problema, verifique as configurações do hardware e modifique, se necessário.
Depois execute novamente o /etc/isapnp.conf
. Para detalhes sobre
outros parâmetros não explicados aqui, veja a página de manual do
isapnp.conf
.
A maioria das distribuições GNU/Linux
configura os dispositivos
Plug-and-Play existentes neste arquivo automaticamente na inicialização (como é
o caso da Debian
e a Red Hat
). Se este não for o seu
caso, coloque a linha isapnp /etc/isapnp.conf em um dos scripts de
inicialização de sua distribuição.
Ocorre quando um ou mais dispositivos usam a mesma IRQ, I/O ou DMA. Um sistema com configurações de hardware em conflito tem seu funcionamento instável, travamentos constantes, mal funcionamento de um ou mais dispositivos e até mesmo, em casos mais graves, a perda de dados.
Sempre que possível conheça e utilize os valores padrões para a configuração de periféricos, isto pode te livrar de conflitos com outros dispositivos e mal funcionamento do sistema. Alguns programas de diagnóstico ou de auto-detecção podem não localizar seu dispositivo caso ele esteja usando um valor muito diferente do padrão.
Para resolver conflitos de hardware será necessário conhecer a configuração de cada dispositivo em seu sistema. Os comandos cat /proc/interrupts, cat /proc/dma e cat /proc/ioports podem ser úteis para se verificar as configurações usadas.
Lembre-se que o barramento PCI permite o compartilhamento de IRQs entre placas PCI.
O tipo de slot varia de acordo com o barramento usado no sistema, que pode ser um(s) do(s) seguinte(s):
Este barramento estava presente no PS/1 e PS/2, hoje não é mais usado.
Os cartões PCMCIA são divididos em 3 tipos:
Sua vantagem é o preço: um modem ou placa de som AMR custa em torno de R$ 25,00.
Placas on-board são embutidas na placa mãe (motherboard). Placas off-board são placas externas encaixadas nos slots de expansão da placa mãe.
No inicio da era do PC/XT todos as placas eram embutidas na placa mãe (na época eram somente a placa de vídeo e controladora). Com o surgimento do padrão AT, diversas empresas de informática desenvolveram dispositivos concorrentes e assim o usuário tinha a liberdade de escolha de qual dispositivo colocar em sua placa mãe (ou o mais barato ou o de melhor qualidade e desempenho), isto permitiu a adição de periféricos de qualidade sem romper com seu orçamento pessoal (comprando uma placa de som, depois uma de fax-modem, placa de vídeo melhor, etc).
Atualmente parece que voltamos ao ponto de partida e tudo vem embutido na placa mãe (on-board) e o usuário não tem como escolher qual dispositivo usar em seu computador. É muito difícil (praticamente impossível) encontrar uma placa mãe que satisfaça completamente as necessidades do usuário ou recomendações de um bom técnico de informática (a não ser que seja um técnico experiente e encontre alguma alternativa).
Certamente o único dispositivo que funciona melhor se embutido na placa mãe é a placa controladora de periféricos. Esta placa é usada para se conectar unidades de disquete, discos rígidos, CD-ROM, portas seriais, paralelas, joystick ao computador. Os HDs conectados em uma controladora embutida conseguem ter um desempenho muito maior do que em placas conectadas externamente, sem causar nenhum tipo de problema. Felizmente os últimos modelos de placas mãe 486 e os Pentium já trazem a placa controladora de periféricos embutida.
Hardwares embutidos na placa mãe (como fax-modem, vídeo, som) são em média 30% mais baratos que os vendidos separadamente mas quase sempre são usados dispositivos de baixo desempenho e qualidade para reduzir o preço da placa mãe e quase sempre usados hardwares For Windows.
Hoje em dia por causa do preço da placa mãe, é comum encontrar pessoas que verificam somente o preço e sequer procuram saber ou conhecem a qualidade das placas embutidas na placa mãe. Pior ainda é encontrar vendedores despreparados que sequer sabem explicar o porque que uma placa de som Sound Blaster 64 é mais cara que uma de modelo genérico...
Certa vez fiz um teste de desempenho em um jogo chamado Network Rally do DOS com minha máquina Pentium 120 MHZ (só com a placa controladora embutida), 16 MB RAM, placa de som Sound Blaster 16, placa de vídeo Trident 9680 com 1MB versus um computador Pentium 200 MMX, 32 MB RAM, placa de vídeo embutida (usando 2 MB de memória compartilhada), fax modem Rockwell embutido, e som CMI 8330 também embutido.
O resultado foi que o jogo rodava perfeito em meu pentium 120MHZ e no outro computador com o som pipocando e imagem apresentando paradas. O problema é que em dispositivos de baixa qualidade e baratos, sua carga de processamento é jogada para o processador, resultando em menos potência para executar os programas (veja Hardwares específicos ou "For Windows", Section 3.8 para maiores detalhes sobre o problema). A memória de vídeo compartilhada quer dizer que parte da memória RAM é usada para memória de vídeo ao invés de uma memória DRAM específica e desenvolvida exclusivamente para aceleração de vídeo. Isto traz mais lentidão pois a memória de vídeo (RAM) também será acessada pelo barramento do computador, envolvendo mais carga para o processador, etc. A técnica de memória compartilhada é exclusiva de placas de vídeo embutidas.
Outro periférico que traz problemas e muita carga para o processador é o fax-modem for Windows, HSP, AMR, micromodem, etc. A maioria destes periféricos se recusam a funcionar em computadores inferiores ao Pentium 150, não trazem seu chip de processamento e o pior: o chip UART. Isto faz com que o periférico, mesmo marcando conexão a 57.600 ou mais tenha um desempenho de até duas vezes menor que um fax-modem inteligente com chip de processamento próprio e UART (sem contar com os controles internos do modem, como os protocolos de correção de erros, e sua extensa interface de programação via comandos). A economia, neste caso, será paga em sua conta telefônica.
Outra vantagem de fax-modens inteligentes é que os modelos atuais vem com FlashBios o que significa que podem ser reprogramados facilmente para passar de 33.600 para 57.600 sem trocar a placa, ou aceitarem novas tendências de tecnologia. Para detalhes veja Hardwares específicos ou "For Windows", Section 3.8.
Se você estiver em uma situação destas, certamente os computadores de menor potência e com hardwares inteligentes (que possuem seus próprios chips de controle e processamento) terão um desempenho muito melhor. Mas também existem placas embutidas que tem a mesma qualidade de placas separadas (como alguns modelos de placas mãe que trazem a Sound Blaster embutida). O preço pode ser maior mas você estará pagando por um dispositivo de melhor qualidade e que certamente trará benefícios a você e ao seu sistema.
Consulte um técnico em informática experiente para te indicar uma placa mãe de bom preço e de qualidade. É muito comum encontrar falta de profissionalismo em pessoas que não sabem distinguir as características, funções e vantagens entre uma placa de boa qualidade e um hardware for Windows a não ser o preço mais barato.
Esta seção foi retirada do manual de instalação da Debian GNU/Linux. Uma tendência que perturba é a proliferação de Modens e impressoras específicos para Windows. Em muitos casos estes são especialmente fabricados para operar com o Sistema Operacional Microsoft Windows e costumam ter a legenda WinModem, for Windows, ou Feito especialmente para computadores baseados no Windows.
Geralmente estes dispositivos são feitos retirando os processadores embutidos daquele hardware e o trabalho deles são feitos por drivers do Windows que são executados pelo processador principal do computador. Esta estratégia faz o hardware menos expansível, mas o que é poupado não é passado para o usuário e este hardware pode até mesmo ser mais caro quanto dispositivos equivalentes que possuem inteligência embutida.
Você deve evitar o hardware baseado no Windows por duas razões:
Assim o usuário típico do Windows não obtém um multi-processamento tão intensivo como um usuário do Linux, o fabricante espera que aquele usuário do Windows simplesmente não note a carga de trabalho que este hardware põe naquela CPU. No entanto, qualquer sistema operacional de multi-processamento, até mesmo Windows 95 / 98 ou NT, são prejudicados quando fabricantes de periféricos retiram o processador embutido de suas placas e colocam o processamento do hardware na CPU.
Você pode ajudar a reverter esta situação encorajando estes fabricantes a lançarem a documentação e outros recursos necessários para nós desenvolvermos drivers para estes hardwares, mas a melhor estratégia é simplesmente evitar estes tipos de hardwares até que ele esteja listado no HOWTO de hardwares compatíveis com Linux.
Note que hoje já existem muitos drivers para WinModems e outros hardwares for Windows para o Linux. Veja a lista de hardwares compatíveis no HARDWARE-HOWTO ou procure o driver no site do fabricante de seu dispositivo. Mesmo assim a dica é evitar hardwares for Windows e comprar hardwares inteligentes onde cada um faz sua função sem carregar a CPU.
Esta seção foi retirada do manual de instalação da Debian GNU/Linux. Existem
diversos vendedores, agora, que vendem sistemas com a Debian
ou
outra distribuição do GNU/Linux pré-instaladas. Você pode pagar mais para ter
este privilégio, mas compra um nível de paz de mente, desde então você pode ter
certeza que seu hardware é bem compatível com GNU/Linux. Praticamente todas as
placas que possuem processadores próprios funcionam sem nenhum problema no
Linux (algumas placas da Turtle Beach e mwave tem
suporte de som limitado).
Se você tiver que comprar uma máquina com Windows instalado, leia
cuidadosamente a licença que acompanha o Windows; você pode rejeitar a licença
e obter um desconto de seu vendedor. Veja http://www.linuxmall.com/refund/
para detalhes.
Se não estiver comprando um computador com GNU/Linux
instalado, ou
até mesmo um computador usado, é importante verificar se os hardwares
existentes são suportados pelo kernel do GNU/Linux
. Verifique se
seu hardware é listado no Hardware Compatibility HOWTO, na
documentação do código fonte do kernel no diretório
Documentation/sound
ou consulte um técnico de
GNU/Linux
experiente.
Deixe seu vendedor (se conhecer) saber que o que está comprando é para um
sistema GNU/Linux
. Desta forma isto servirá de experiência para
que ele poderá recomendar o mesmo dispositivo a outras pessoas que procuram
bons dispositivos para sistemas GNU/Linux
. Apóie vendedores de
hardwares amigos do GNU/Linux
.
Guia Foca GNU/Linux
Versão 5.20 - Sunday, 03 de November de 2002gleydson@cipsga.org.br