A Importância do super I/O
Oi pessoal! Hoje vou falar da importância do I/O. No computador, seja na parte física (Hardware) ou na parte lógica (Software), indiscutivelmente um técnico na área de informática tem que conhecer o I/O e a sua incrível função na máquina.
Muitos que estão lendo isso devem estar pensando… “ mas eu já conheço o Super I/O e sei muito bem para ele serve ”, entretanto outros não conhecem este dispositivo… O assunto aqui não é este chip, mas a função é basicamente muito semelhante.
Em inglês, Input quer dizer entrada, lida com toda a parte lógica da entrada de dados, seja física ou lógica. Já o Output é responsável pela parte da saída de dados, com a mesma função, só que nesta vez partes que fazem as respostas… então teremos o Input e o Output, ou simplificando I/O.
A entrada de dados será computada (processada) pelo seu dispositivo, que corresponde para trazer a resposta… esta resposta pode ser vista ou percebida. Quando mandamos um sinal de desligamento, a máquina recebe pelo Input e faz toda a parte lógica para a saída de nosso Sistema Operacional, que inclui o salvamento de dados e atualização de dados, para então recebermos a resposta do pedido que foi feito, mandando um sinal com o Input. Ao ligarmos o computador temos o mesmo… com as duas respostas, o output nos responde ao ligar o computador, realizando o Post e ligando a luz do Num Lock (se a máquina estiver funcionando corretamente e o Num Lock estiver configurado no chip controlador da placa-mãe), assim como o nosso exemplo… o Num Lock recebe o sinal que o botão foi acionado e liga o Led, correspondente ao seu sinal em nosso teclado.
O teclado em si não sabe qual tecla apertamos ou qual letra deve aparecer na tela, isto é gerado por um I/O interpretado. O teclado manda sinais, os KeyCodes, organizados por linhas (por isso é normal que muitas vezes, quando uma tecla do nosso teclado para de funcionar, outras fazem a mesma coisa… esta linha pode estar quebrada, impedindo que o decifrador do KeyCode não receba tal informação, barrando também o Output que receberíamos da informação que pedimos). Este KeyCode é interpretado pelo Sistema Operacional e é nesta parte que o KeyCode deve ser “bem recebido”… deve ter os seus sinais interpretados corretamente para nos mostrar a tecla que deveria ter o seu desenho na parte superior do nosso teclado. A saída padronizada para nós atualmente é a ABNT II e se o seu software não estiver corretamente configurado para este padrão, sua saída de dados para ser impressa no monitor será diferente da esperada, gerando códigos ou sinais inesperados.
Muitos dos Chipsets Ponte Sul contém atualmente a parte que controla esta entrada e saída dos dados e sinais, mas como já disse, não vai ser o chip que vai interpretar eles, ele apenas vai mandar o pedido que você quer que o computador faça, o que você pediu… a parte da interpretação para poder ser feita a saída já é correspondente ao sistema operacional, que junto a outros dispositivos I/O como o CPU, Memória RAM e HD fazem o resto. Mas esses dispositivos são I/O?
Se eles podem receber e enviar dados, então também são I/O, como a maioria dos programas dentro de um sistema também fazem a parte de enviar e receber dados. Os programas ficam esperando que você mande um sinal (Input), para que possam fazer uma saída deste dado (Output), nem que para isto necessitem de outros vários programas, assim como o próprio MS-DOS, que recebe os nossos códigos já decodificados (hoje em dia a Microsoft Windows é quem faz parte da decodificação deste código, antigamente era o inverso, já que nem sempre o Windows foi um sistema operacional), e depois o que você mandou fazer tem uma resposta, nem que seja por parte unicamente dele ou ele “peça ajuda” aos seus complementos (programas que rodam dentro do MS-DOS, como tracert, arp, conhost, nmap, compiladores, entre outros). Se o comando estiver certo, este Output é enviado ao monitor e dependo do nosso pedido, pode ser enviado também para a Memória RAM ou para o HD em forma de código.
E ai chegamos na parte mais complexa da prática para ser percebida e quando temos uma placa de vídeo com processamento, ela também tem um I/O, o seu processamento é exclusivo para não gerar uma sobrecarga na parte OnBoard do computador. Para quem gosta de jogar, devem teve ter ficado abismados com os incríveis gráficos gerados pelos potentes OpenGL, WebGL e DirectX. Para quem não sabe, eles lidam com uma parte matemática incrivelmente pesada, sendo que cada ponto que recebem são chamados de vetores e tem três coordenadas para serem pintadas corretamente no nosso monitor, gerando o famoso 3D de software… depois são alocados os efeitos de luz, chuva e colisões, tudo calculado a partir de códigos e senos, cossenos, tangentes, entre outras fórmulas matemáticas. Não se surpreenda ao saber que às vezes até as famosas introduções dos jogos são feitas assim.
Mas não são apenas jogos que lidam com estas famosas engines (ferramentas)… softwares como o VirtualBox, utilizam de ferramentas como SDL e o OpenGL ( que eu acabei de citar), eles pegam e desenham na tela um sistema operacional virtualizado (não físico) a partir disto. Agora imagine uma única pessoa tendo que fazer estes cálculos difíceis e tendo ainda que lidar com a entrada de mais códigos e a saída para o monitor?
Existem dispositivos unicamente de entrada, que apenas mandam dados para o computador… estes periféricos seriam o mouse, teclado, touch, entre vários. Os do tipo saída seriam como o Monitor, as caixas de som, impressoras…
Também temos dispositivos que fazem os dois, como HD, Pendrive, CDs e Dvds.
Resumindo: o I/O corresponde a pergunta e resposta, enviar e responder, ler e entender, sendo especificado unicamente para isto e e divido com outras funções, ou até lógico, sua função de Entrada e Saída de dados… qualquer falha neste meio, ou um grande pedido , assim como outras grandes funções podem atrapalhar.
Quanto maior a frequência do dispositivo controlador (calculada em Hertz) pode auxiliar, então na hora de escolher o seu computador pessoal, seja ele para trabalho ou para lazer, procure antes fazer este cálculo… pense em tudo o que possa ter Entrada e Saída de dados para um melhor desempenho.