Dicionário técnico - C

Índice do dicionário técnico

C

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

O C foi desenvolvido durante a década de 70, mas ainda é largamente utilizado. A grande vantagem do C é permitir escrever tanto programas extremamente otimizados para a máquina, como seria possível apenas em Assembly, e ao mesmo tempo vir com várias funções prontas, como uma linguagem de alto nível, que podem ser utilizadas quando não for necessário gerar um código tão otimizado. Esta flexibilidade, permitiu que o C fosse usado para desenvolver a maioria dos sistemas operacionais, como o Unix, Linux e o próprio Windows. Usando o compilador adequado, o C pode ser usado para desenvolver programas para várias plataformas diferentes.

A maior parte dos aplicativos para Linux são escritos em C e compilados usando o compilador GCC, desenvolvido pela Free software Fundation. Programas gráficos utilizam bibliotecas como o GTK, que permite criar janelas, botões, etc. Como a grande maioria dos programas têm seu código aberto (uma inesgotável fonte de estudos) e praticamente todas as distribuições Linux incluem o GCC, editores como o Emacs e o Vi, além de outras ferramentas necessárias, acaba sendo bem mais fácil aprender C no Linux do que em outras plataformas. Existem ainda ferramentas de programação visual baseadas no C, como o Kdevelop, também disponível na maioria das distribuições Linux.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

C++

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

O C++ mantém os recursos do C original, mas traz muitos recursos novos, como recursos orientados a objetos, sendo também bem mais fácil de utilizar. O C++ é bastante usado atualmente para desenvolver muitos programas para várias plataformas (Pronuncia-se "ci plus plus").

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

C2C

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Consumer to Consumer. Este é mais um dos termos da moda nos negócios on-line e aplica-se a sites que promovem negócios entre os próprios usuários, como sites de classificados e os tradicionais sites de leilões, como o Arremate, Mercado Livre, etc. que são o exemplo mais rico. Outras siglas semelhantes são B2B (negócios entre empresas) e B2C (vendas diretas ao consumidor).

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cabeça de leitura

Criado 3/set/2007 às 18h03 por Carlos E. Morimoto

0

Depois dos discos magnéticos, as caberças de leitura são os componentes mais importantes do HD, já que elas são usadas para ler e gravar os dados nos discos.

As cabeças de leitura (heads) são presas a um braço móvel (arm), o que permite seu acesso a todo o disco. O braço de leitura é uma peça triangular, também feita de ligas de alumínio, para que seja ao mesmo tempo leve e resistente. O mecanismo que movimenta o braço de leitura é chamado de actuator.

Nos primeiros discos rígidos, eram usados motores de passo para movimentar os braços e cabeças de leitura. Eles são o mesmo tipo de motor usado nos drives de disquete, onde ao receber um impulso elétrico o motor move o braço por uma curta distância, correspondente ao comprimento de uma trilha. O problema é que eles eram muito suscetíveis a problemas de desalinhamento e não permitiam densidades de gravação muito altas.

Os discos contemporâneos (qualquer coisa acima de 80 MB) utilizam um mecanismo bem mais sofisticado para essa tarefa, composto por um dispositivo que atua através de atração e repulsão eletromagnética, sistema chamado de voice coil. Basicamente temos um eletroímã na base do braço móvel, que permite que a placa controladora o movimente variando rapidamente a potência e a polaridade do ímã. Apesar de parecer suspeito à primeira vista, esse sistema é muito mais rápido, preciso e confiável que os motores de passo. Para você ter uma idéia, os HDs do início da década de 80, com motores de passo, utilizavam apenas 300 ou 400 trilhas por polegada, enquanto um Seagate ST3750640AS (de 750 GB) atual utiliza nada menos do que 145.000.

Para que o HD possa posicionar a cabeça de leitura sobre a área exata referente à trilha que vai ser lida, existem sinais de feedback gravados na superfícies do disco, que orientam o posicionamento da cabeça de leitura. Eles são sinais magnéticos especiais, gravados durante a fabricação dos discos (a famosa formatação física), que são protegidos através de instruções de bloqueio incluídas no firmware do HD contra alteração posterior. Esses sinais eliminam os problemas de desalinhamento que existiam nos primeiros HDs.

Ao ler um arquivo, a controladora posiciona a cabeça de leitura sobre a trilha onde está o primeiro setor referente a ele e espera que o disco gire até o setor correto. Este tempo inicial, necessário para iniciar a leitura, é chamado de tempo de acesso, e mesmo os HDs atuais de 7.200 RPM fica em torno de 12 milésimos de segundo, o que é uma eternidade em se tratando de tempo computacional. O HD é relativamente rápido ao ler setores seqüenciais, mas ao ler vários pequenos arquivos espalhados pelo HD, o desempenho pode cair assustadoramente. É por isso que existem programas desfragmentadores, que procuram reorganizar a ordem dos arquivos, de forma que eles sejam gravados em setores contínuos.

Outro dado interessante é a maneira como as cabeças de leitura lêem os dados, sem tocar na camada magnética. Se você tiver a oportunidade de ver um disco rígido aberto, verá que, com os discos parados, as cabeças de leitura são pressionadas levemente em direção ao disco, tocando-o com uma certa pressão.

Apesar disso, quando os discos giram à alta rotação, forma-se uma espécie de colchão de ar, que repele a cabeça de leitura, fazendo com que ela fique sempre a alguns nanômetros de distância dos discos. É o mesmo princípio utilizado na asa de um avião; a principal diferença neste caso é que a cabeça de leitura é fixa, enquanto os discos é que se movem, mas, de qualquer forma, o efeito é o mesmo. Os HDs não são fechados hermeticamente, muito menos a vácuo, pois é necessário ar para criar o efeito.

Nos HDs atuais, as cabeças de leitura são compostas por dois dispositivos separados, um para gravação e outro para leitura. O dispositivo de gravação é similar a um eletroímã, onde é usada eletricidade para criar o campo magnético usado para realizar a gravação. Nos primeiros HDs, tínhamos um filamento de cobre enrolado sobre um corpo de ferro. Nos HDs atuais, os materiais usados são diferentes, mas o princípio de funcionamento continua o mesmo.

O dispositivo de leitura, por sua vez, faz o processo oposto. Quando ele passa sobre os bits gravados, capta o campo magnético emitido por eles, através de um processo de indução (nos HDs antigos) ou resistência (nos atuais), resultando em uma fraca corrente, que é posteriormente amplificada.

O dispositivo de leitura é protegido por um escudo eletromagnético, que faz com que ele capte apenas o campo magnético do bit que está sendo lido, e não dos seguintes. Você pode notar que não existe isolamento entre os dispositivos de leitura e gravação. Isso acontece porque apenas um deles é usado de cada vez.

Note que essa divisão existe apenas nos HDs modernos, que utilizam cabeças de leitura/gravação MR ou GMR. Nos antigos, que ainda utilizavam cabeças de leitura de ferrite, o mesmo dispositivo fazia a leitura e a gravação.

Sem comentáriosPor Carlos E. Morimoto. Revisado 3/set/2007 às 18h03

Cabo de Rede

Criado 31/jul/2007 às 11h32 por Carlos E. Morimoto

4

Temos três padrões de redes Ethernet: de 10 megabits, 100 megabits e 1 gigabit. As placas são intercompatíveis, mas, ao usar placas de velocidades diferentes, as duas vão conversar na velocidade da placa mais lenta. As redes de 10 megabits são obsoletas, mas ainda é possível encontrar muitas instalações antigas por aí. Caso a rede já use cabos de categoria 5 (o número vem decalcado no cabo), é possível fazer um upgrade direto para 100 megabits, trocando apenas o hub e as placas.

Lembre-se de que a velocidade das placas é calculada em bits e não em bytes. Uma rede de 100 megabits permite uma taxa de transmissão (teórica) de 12.5 MB/s. Como além dos dados são transmitidas outras informações (a estrutura dos pacotes, retransmissões, códigos de correção de erros, etc.), a velocidade na prática fica sempre um pouco abaixo disso. Normalmente é possível transferir arquivos a no máximo 10.5 MB/s, com a taxa máxima variando sutilmente de acordo com a placa e o sistema operacional usado.

A opção para quem precisa de mais velocidade são as redes Gigabit Ethernet, que transmitem a até 1000 megabits (125 megabytes) por segundo. As placas Gigabit atuais são compatíveis com os mesmos cabos de par trançado categoria 5, usados pelas placas de 100 megabits, por isso a diferença de custo fica por conta apenas das placas e do switch. Elas ainda são muito mais caras, mas pouco a pouco o preço vai caindo.

Os cabos de rede também são um artigo relativamente barato. Os cabos de categoria 5, que usamos em redes de 100 ou 1000 megabits geralmente custam em torno de 80 centavos o metro, com mais alguns centavos por conector. Os cabos de categoria 5e são construídos dentro de normas um pouco mais estritas e normalmente custam o mesmo preço, por isso são sempre preferíveis.

Você pode comprar quantos metros de cabo quiser, junto com o número necessário de conectores, e crimpar os cabos você mesmo, ou pode comprá-los já prontos. É no caso dos cabos já crimpados que o preço começa a variar de forma mais expressiva. Algumas lojas chegam a crimpar os cabos na hora, cobrando apenas o valor do material, enquanto outras vendem os cabos por preços exorbitantes.

Para crimpar os cabos de rede, o primeiro passo é descascar os cabos, tomando cuidado para não ferir os fios internos, que são frágeis. Normalmente, o alicate inclui uma saliência no canto da guilhotina, que serve bem para isso. Existem também descascadores de cabos específicos para cabos de rede.

É possível comprar alicates de crimpagem razoáveis por pouco mais de 50 reais, mas existem alicates de crimpagem para uso profissional que custam bem mais. Existem ainda "alicates" mais baratos, com o corpo feito de plástico, que são mais baratos, mas não valem o papelão da embalagem. Alicates de crimpagem precisam ser fortes e precisos, por isso evite produtos muito baratos.

Os quatro pares do cabo são diferenciados por cores. Um par é laranja, outro é azul, outro é verde e o último é marrom. Um dos cabos de cada par tem uma cor sólida e o outro é mais claro ou malhado, misturando a cor e pontos de branco. É pelas cores que diferenciamos os 8 fios.

O segundo passo é destrançar os cabos, deixando-os soltos. Eu prefiro descascar um pedaço grande do cabo, uns 6 centímetros, para poder organizar os cabos com mais facilidade e depois cortar o excesso, deixando apenas a meia polegada de cabo que entrará dentro do conector. O próprio alicate de crimpagem inclui uma guilhotina para cortar os cabos, mas você pode usar uma tesoura se preferir.

Existem dois padrões para a ordem dos fios dentro do conector, o EIA 568B (o mais comum) e o EIA 568A. A diferença entre os dois é que a posição dos pares de cabos laranja e verde são invertidos dentro do conector. Existe muita discussão em relação com qual dos dois é "melhor", mas na prática não existe diferença de conectividade entre os dois padrões. A única observação é que você deve cabear toda a rede utilizando o mesmo padrão. Como o EIA 568B é de longe o mais comum, recomendo-o que você utilize-o ao crimpar seus próprios cabos. Muitos cabos são certificados para apenas um dos dois padrões; caso encontre instruções referentes a isso nas especificações, ou decalcadas no próprio cabo, crimpe os cabos usando o padrão indicado.

No padrão EIA 568B, a ordem dos fios dentro do conector (em ambos os lados do cabo) é a seguinte:

1- Branco com Laranja 2- Laranja 3- Branco com Verde 4- Azul 5- Branco com Azul 6- Verde 7- Branco com Marrom 8- Marrom

Os cabos são encaixados nesta ordem, com a trava do conector virada para baixo. Ou seja, se você olhar o conector "de cima", vendo a trava, o par de fios laranja estará à direita e, se olhar o conector "de baixo", vendo os contatos, eles estarão à esquerda. No caso de um cabo "reto" (straight), que vai ser usado para ligar o micro ao hub, você usa esta mesma disposição nas duas pontas do cabo. Existe ainda um outro tipo de cabo, chamado de "cross-over", que permite ligar diretamente dois micros, sem precisar do hub. Ele é uma opção mais barata quando você tem apenas dois micros. Neste tipo de cabo a posição dos fios é diferente nos dois conectores, de um dos lados a pinagem é a mesma de um cabo de rede normal, enquanto no outro a posição dos pares verde e laranja são trocados. Daí vem o nome cross-over, que significa, literalmente, "cruzado na ponta".

Para fazer um cabo cross-over, você crimpa uma das pontas seguindo o padrão EIA 568B que vimos acima e a outra utilizando o padrão EIA 568A, onde são trocadas as posições dos pares verde e laranja:

1- Branco com Verde 2- Verde 3- Branco com Laranja 4- Azul 5- Branco com Azul 6- Laranja 7- Branco com Marrom 8- Marrom

Esta mudança faz com que os fios usados para transmitir dados em um dos micros sejam conectados aos pinos conectores do outro, permitindo que eles conversem diretamente. A maioria dos hub/switchs atuais é capaz de "descruzar" os cabos automaticamente quando necessário, permitindo que você misture cabos normais e cabos cross-over dentro do cabeamento da rede. Graças a isso, a rede vai funcionar mesmo que você um cabo cross-over para conectar um dos micros ao hub por engano.

Na hora de crimpar é preciso fazer um pouco de força para que o conector fique firme. A qualidade do alicate é importante: evite comprar alicates muito baratos, pois eles precisam ser resistentes para aplicar a pressão necessária.

A função do alicate é fornecer pressão suficiente para que os pinos do conector RJ-45, que internamente possuem a forma de lâminas, esmaguem os fios do cabo, alcançando o fio de cobre e criando o contato. Você deve retirar apenas a capa externa do cabo e não descascar individualmente os fios, pois isso, ao invés de ajudar, serviria apenas para causar mau contato, deixando frouxo o encaixe com os pinos do conector.

É preciso um pouco de atenção ao cortar e encaixar os fios dentro do conector, pois eles precisam ficar perfeitamente retos. Isso demanda um pouco de prática. No começo, você vai sempre errar algumas vezes antes de conseguir.

Veja que o que protege os cabos contra as interferências externas são justamente as tranças. A parte destrançada que entra no conector é o ponto fraco do cabo, onde ele é mais vulnerável a todo tipo de interferência. Por isso, é recomendável deixar um espaço menor possível sem as tranças. Para crimpar cabos dentro do padrão, você precisa deixar menos de meia polegada de cabo (1.27 cm) destrançado. Você só vai conseguir isso cortando o excesso de cabo solto antes de encaixar o conector, como na foto:

O primeiro teste para ver se os cabos foram crimpados corretamente é conectar um dos micros (ligado) ao hub e ver se os LEDs da placas de rede e do hub acendem. Isso mostra que os sinais elétricos enviados estão chegando até o hub e que ele foi capaz de abrir um canal de comunicação com a placa. Se os LEDs nem acenderem, então não existe o que fazer. Corte os conectores e tente de novo. Infelizmente, os conectores são descartáveis: depois de crimpar errado uma vez, você precisa usar outro novo, aproveitando apenas o cabo. Mais um motivo para prestar atenção. ;)

Os cabos de rede devem ter um mínimo de 30 centímetros e um máximo de 100 metros, distância máxima que o sinal elétrico percorre antes que comece a haver uma degradação que comprometa a comunicação.

4 comentáriosPor Carlos E. Morimoto. Revisado 31/jul/2007 às 11h32

Cache

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

A memoria cache é um tipo de memória ultra rápida que armazena os dados e instruções mais utilizadas pelo processador, permitindo que estas sejam acessadas rapidamente. O cache passou a ser utilizado a partir dos micros 386, quando os processadores começaram a tornar-se mais rápidos que a memória RAM. Quanto maior a quantidade, ou quanto maior a velocidade, maior será a eficiência do cache. Geralmente o cache é divido em dois níveis, chamados de cache L1 (level 1) e cache L2. Um Pentium III Coppermine, por exemplo, tem 32 KB de cache L1 e 256 KB de cache L2, ambos operando na freqüência do processador. Alguns processadores, como o K6-3 e o Pentium 4 Xeon utilizam também cache L3.

Os chips de memória cache utilizam memória SRAM, um tipo mais caro de memória que não precisa de refresh. O refresh é uma característica inerente a todas as tecnologias de memória RAM, incluindo as DDR e DDR2 atuais. Cada célula do pente de memória é composta por um transístor e um capacitor. O transístor controla a passagem do impulso elétrico, enquanto o capacitor o armazena. O problema é que o capacitor é capaz de manter a carga por um curto período, de forma que os dados precisam ser reescritos várias vezes por segundo.

A memória cache armazena os dados mais usados pelo processador, reduzindo o número de operações em que é preciso buscar dados diretamente na lenta memória RAM. Mesmo uma pequena quantidade de memória cache é capaz de melhorar bastante o desempenho do processador.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache de disco

Criado 30/jul/2007 às 17h59 por Carlos E. Morimoto

0

Quando o sistema operacional precisa de mais memória do que a instalada no micro, o sistema operacional precisa usar a memória virtual, movendo parte dos dados para o arquivo de troca (swap file) no HD.

Por outro lado, quando você tem instalado mais memória do que o sistema realmente precisa, é feito o inverso. Ao invés de copiar arquivos da memória para o HD, arquivos do HD, contendo os programas, arquivos e bibliotecas que já foram anteriormente abertos é que são copiados para a memória, fazendo com que o acesso a eles passe a ser instantâneo. Os programas e arquivos passam a ser abertos de forma gritantemente mais rápida, como se você tivesse um HD muito mais rápido do que realmente é.

Esse recurso é chamado de cache de disco e (sobretudo no Linux) é gerenciado de forma automática pelo sistema, usando a memória disponível. Naturalmente, o cache de disco é descartado imediatamente quando a memória precisa ser usada para outras coisas. Ele é apenas uma forma de aproveitar o excedente de memória, sem causar nenhum efeito desagradável.

Ironicamente, a forma mais eficiente de melhorar o desempenho do HD, na maioria das aplicações, é instalar mais memória, fazendo com que uma quantidade maior de arquivos possa ser armazenada no cache de disco. É por isso que servidores de arquivos, servidores proxy e servidores de banco de dados costumam usar muita memória RAM, em muitos casos 4 GB ou mais.

Uma outra forma de melhorar o desempenho do HD é usar RAID, onde dois ou quatro HDs passam a ser acessados como se fossem um só, multiplicando a velocidade de leitura e gravação. Esse tipo de RAID, usado para melhorar o desempenho, é chamado de RAID 0. Existe ainda o RAID 1, onde são usados dois HDs, mas o segundo é uma cópia exata do primeiro, que garante que os dados não sejam perdidos no caso de algum problema mecânico em qualquer um dos dois. O RAID tem se tornado um recurso relativamente popular, já que atualmente a maioria das placas-mãe já vêm com controladoras RAID onboard.

Sem comentáriosPor Carlos E. Morimoto. Revisado 30/jul/2007 às 17h59

Cache de Disco (ou Buffer de disco)

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

1

O cache não é essencial apenas para a memória RAM. Um dos grandes responsáveis pelo desempenho dos HDs atuais é novamente o ilustre cache. Apesar disso, o cache de disco funciona de uma forma um pouco diferente do cache da memória RAM.

Em primeiro lugar temos uma pequena quantidade de cache instalada no próprio HD. Este cache pode ser de 512 KB, 1 MB, 2 MB, ou até mais, dependendo do modelo. A função deste primeiro cache é basicamente a seguinte:

Geralmente ao ler um arquivo, serão lidos vários setores seqüenciais. A forma mais rápida de fazer isso é naturalmente fazer com que a cabeça de leitura leia de uma vez todos os setores da trilha, passe para a próxima trilha seguinte, leia todos os seus setores, passe para a próxima e assim por diante. Isso permite obter o melhor desempenho possível. O problema é que na prática não é assim que funciona. O sistema pede o primeiro setor do arquivo e só solicita o próximo depois de recebê-lo e certificar-se de que não existem erros.

Se não houvesse nenhum tipo de buffer, a cabeça de leitura do HD acabaria tendo que passar várias vezes sobre a mesma trilha, lendo um setor a cada passagem, já que não daria tempo de ler os setores seqüencialmente depois de todo tempo perdido antes de cada novo pedido.

Graças ao cache, este problema é resolvido, pois a cada passagem a cabeça de leitura lê todos os setores próximos, independentemente de terem sido solicitados ou não. Após fazer sua verificação de rotina, o sistema solicitará o próximo setor, que por já estar carregado no cache será fornecido em tempo recorde.

Os dados lidos pelas cabeças de leitura, originalmente são gravados no cache, e a partir dele, transmitidos através da interface IDE ou SCSI. Caso a interface esteja momentaneamente congestionada, os dados são acumulados no cache e, em seguida transmitidos de uma vez quando a interface fica livre, evitando qualquer perda de tempo durante a leitura dos dados. Apesar do seu tamanho reduzido, o cache consegue acelerar bastante as operações de leitura de dados. Claro que quanto maior e mais rápido for o cache, maior será o ganho de performance.

Para complementar este primeiro nível de cache, os sistemas operacionais criam um segundo cache de disco usando a memória RAM. No Windows 95/98 esta quantidade é fixa, mas a partir do Windows 2000 o tamanho do cache de disco varia de acordo com a quantidade de memória RAM disponível. Neste cache ficam armazenados também últimos dados acessados pelo processador, permitindo que um dado solicitado repetidamente possa ser retransmitido a partir do cache, dispensando uma nova e lenta leitura dos dados pelas cabeças de leitura do HD. Este sistema é capaz de melhorar assustadoramente a velocidade de acesso aos dados quando estes forem repetitivos, o que acontece com freqüência em servidores de rede ou quando é usada memória virtual.

Isso explica o por quê dos grandes servidores utilizarem vários gigabytes de memória RAM. Além da memória consumida pelos aplicativos, é essencial que tenham um enorme cache de disco. Assim, ao invés de ler os dados a partir do HD, o servidor pode trabalhar na maior parte do tempo lendo os dados a partir do cache na memória RAM que será sempre muito mais rápido.

1 comentárioPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache Hit

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Um cache hit ocorre quando o dado de que o processador precisa está localizado no cache. O contrário, um cache miss ocorre quando o dado não está no cache e o processador precisa acessá-lo na memória RAM, perdendo tempo. Em geral, num processador atual com 32 KB de cache L1 e 256 KB de cache L2 (ou mais) o índice de cache hit fica em torno de 98%.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache Inclusivo/Cache Exclusivo

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Em se tratando de cache, tanto o Athlon quanto o Duron possuem uma vantagem estratégica sobre o Pentium III e Celeron. Nos dois processadores da AMD o cache L2 é exclusivo, isto significa que os dados depositados no cache L1 e no cache L2 serão sempre diferentes. Temos então um total de 386 KB de dados e instruções depositados em ambos os caches do Athlon (128 de L1 + 256 de L2) e 192 KB depositados em ambos os caches do Duron, que possui apenas 64 KB de cache L2.

No Pentium III e no Celeron o cache é inclusivo, isto significa que os 32 KB do cache L1 serão sempre cópias de dados armazenados no cache L2. Isto significa que na prática, o Pentium III é capaz de armazenar apenas 256 KB de dados e instruções somando ambos os caches, enquanto o Celeron é capaz de armazenar apenas 128 KB, menos que o Duron.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache L1

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

A primeira camada de cache do sistema, encontrada sempre dentro do próprio processador (com excessão apenas para os micros 386). O cache L1 trabalha sempre na mesma freqüência do processador e com tempos de latência extremamente baixos.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache L2

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Encontrado ou embutido no processador, ou na placa mãe, dependendo do sistema. Mesmo no caso dos processadores atuais, que trazem tanto cache L1 quanto cache L2 embutidos, operando à mesma freqüência do processador, os tempos de latência do cache L2 sempre serão mais altos, garantindo uma velocidade de acesso mais baixa que no L1.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache L3

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

O primeiro processador a utilizar cache L3 foi o K6-3, onde tanto o cache L1 e o L2 vinham embutidos no processador, sendo o cache da placa mãe aproveitado na forma do cache L3. Sistemas semelhantes também são usados em alguns servidores, onde chegam a ser usados vários MB de L3. O Pentium 4 Xeon da Intel também utiliza cache L3, mas embutido no próprio núcleo do processador.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache Miss

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Veja: Cache Hit

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cache Server

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Usado em algumas redes, é um servidor que armazena todas as páginas, ou mesmo arquivos baixados, repassando-os aos usuários que os solicitarem novamente. Isto serve tanto para agilizar as transferências de dados já baixados, quanto para diminuir o tráfego de dados através do link com a Internet. Neste ponto, o cache server tem um funcionamento semelhante ao de um servidor proxy, porém mais limitado. O cache server apenas armazena arquivos, não serve para compartilhar a conexão, nem para barrar acessos não autorizados ou acrescentar qualquer segurança.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cap Limit

Criado 28/ago/2007 às 15h23 por Carlos E. Morimoto

0

Algumas placas-mãe com BIOS da Award, fabricadas entre 1998 e 1999 possuem um bug na implementação do LBA, que limita o acesso a HDs IDE a um máximo de 65.535 cilindros, 16 cabeças e 63 setores, o que equivale a 31.5 GB (33.8 GB decimais).

Como essas placas bugadas representaram um volume considerável das placas vendidas durante este período, muitos HDs IDE suportam a opção "Cap Limit", que é acionada ao colocar o jumper traseiro em uma posição especificada. Ao ativar a opção, a placa lógica reporta ao BIOS que o HD tem apenas 31.5 GB. Você perde o acesso ao restante da capacidade do disco, mas pelo menos ele passa a ser acessado.

Placas da época, sem o bug, incluem as "INT 13h Extensions", ou seja, extensões para o conjunto original, que permitem bipassar as limitações e acessar HDs de até 128 GB, como previsto pelo padrão IDE. A solução definitiva veio em 2001, juntamente com a introdução das interfaces ATA/100 (ATA-6), onde foi incluída uma extensão para os endereços disponíveis. Passaram a ser usados 48 bits para o endereçamento, no lugar dos 28 anteriores, resultando em uma capacidade de endereçamento 1.048.576 vezes maior. A extensão foi rapidamente adotada pelos fabricantes, de forma que praticamente todas as placas fabricadas a partir do final de 2001 já são capazes de endereçar HDs IDE de grande capacidade normalmente.

Sem comentáriosPor Carlos E. Morimoto. Revisado 28/ago/2007 às 15h23

Capacitância

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Todos os condutores possuem uma certa capacidade de concentrar energia e manter a carga durante um certo período de tempo, característica que é a base do funcionamento dos capacitores. Em algumas situações quanto maior a capacitância melhor, como por exemplo nas células de memória, onde quanto mais tempo a célula conservar sua carga elétrica, menor será o número de ciclos de refresh necessários por segundo, fazendo com que o módulo consuma menos energia e tenha um melhor desempenho.

Em compensação, existem áreas onde uma alta capacitância é um sério obstáculo, como por exemplo nos transístores que compõe a parte lógica do processador. Quanto maior a capacitância, mais tempo o transístor demora para perder sua carga e mudar de estado, o que limita a frequência de operação do processador. Como em outras áreas, o desafio é conseguir desenvolver materiais nos dois extremos, de acordo com a área de aplicação.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Capacitor (ou Condensador)

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

8

O capacitor é um componente usado em quase topo tipo de dispositivo eletrônico. Ele permite armazenar cargas elétricas na forma de um campo eletrostático e mantê-la durante um certo período, mesmo que a alimentação elétrica seja cortada. Os capacitores são usados nas fontes de alimentação, nas placas mãe e em inúmeros outros componentes. A função mais comum é retificar e estabilizar a corrente elétrica, evitando que variações possam danificar qualquer dispositivo. É justamente por causa dos capacitores que nunca devemos tocar nos componentes internos da fonte de alimentação sem os cuidados adequados. Você pode levar um choque considerável mesmo que a fonte esteja desligada da tomada.

Os capacitores são também a base da memória RAM, onde para cada bit de dados temos um capacitor e um transístor. O transístor se encarrega de ler e gravar o bit, enquanto o capacitor armazena-o. Quando o capacitor está descarregado temos um bit 0 e quando está carregado temos um bit 1. Como no caso da memória o capacitor mantém sua carga por apenas alguns milésimos de segundo, os dados precisam ser reescritos continuamente. É por isso que a memória RAM é volátil.

Veja também: Capacitor eletrolítico

8 comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Capacitor de estado sólido

Criado 10/ago/2007 às 17h09 por Carlos E. Morimoto

0

Veja: Capacitor eletrolítico

Sem comentáriosPor Carlos E. Morimoto. Revisado 10/ago/2007 às 17h09

Capacitor eletrolítico

Criado 10/ago/2007 às 17h08 por Carlos E. Morimoto

3

Existe uma regra geral de que, quanto mais baixa for temperatura de funcionamento, mais tempo os componentes dos PCs tendem a durar. De uma forma geral, um PC em que a temperatura dentro do gabinete fique em torno dos 35°C tente a apresentar menos defeitos e problemas de instabilidade e durar mais do que um onde a temperatura fique em torno dos 45°C, por exemplo.

Naturalmente, existem exceções, já que no mundo real entram em cena os imprevistos do dia-a-dia e até mesmo falhas na produção dos componentes que abreviem sua vida útil. Mas, se você fizer um teste de maior escala, monitorando o funcionamento de 100 PCs de configuração similar ao longo de 5 anos, por exemplo, vai ver que uma diferença de 10 graus na temperatura influencia de forma significativa a vida útil.

O principal motivo disso são os capacitores eletrolíticos, que são usados em profusão na placa-mãe, na placa de vídeo e em diversos outros componentes.

Os capacitores permitem armazenar pequenas quantidades de energia, absorvendo variações na corrente e entregando um fluxo estável para os componentes ligados a ele. Você pode imaginar que eles atuam como pequenas represas, armazenando o excesso de água na época das chuvas e entregando a água armazenada durante as secas.

Imagine uma situação em que o processador está em um estado de baixo consumo de energia e subitamente "acorda", passando a operar na freqüência máxima. Temos então um aumento imediato e brutal no consumo, que demora algumas frações de segundo para ser compensado. Durante esse período, são os capacitores que fornecem a maior parte da energia, utilizando a carga armazenada.

Tanto o processador principal quanto a GPU da placa de vídeo e controladores responsáveis por barramentos diversos (PCI Express, AGP, PCI, etc.) são especialmente suscetíveis a variações de tensão, que podem causar travamentos e até mesmo danos. Basicamente, é graças aos capacitores que um PC pode funcionar de forma estável.

Existem diversos tipos de capacitores. Os mais usados em placas-mãe e outros componentes são os capacitores eletrolíticos. Eles possuem uma boa capacidade e são muito baratos de se produzir, daí a sua enorme popularidade. O problema é que eles possuem uma vida útil relativamente curta, estimada em um período de 1 a 5 anos de uso contínuo, variando de acordo com a qualidade de produção e condições de uso.

Entre os fatores "ambientais", o que mais pesa na conta é, justamente, a temperatura de funcionamento. Uma redução de 10 graus na temperatura interna do gabinete pode resultar num aumento de até 100% no tempo de vida útil dos capacitores, daí a recomendação de caprichar na ventilação e, caso necessário, instalar exaustores adicionais.

Durante a década de 1990 existiram muitos casos de placas-mãe com capacitores de baixa qualidade (sobretudo em placas da PC-Chips, ECS, Soyo e da Abit), que falhavam depois de apenas um ou dois anos de uso. Recentemente, as coisas melhoraram, com os fabricantes percebendo que usar capacitores de baixa qualidade acaba causando mais prejuízo do que ganho. Infelizmente, como temos uma grande predominância de equipamentos de baixa qualidade aqui no Brasil, ainda é preciso ter cuidado.

Com o passar do tempo, os capacitores eletrolíticos perdem progressivamente a sua capacitância, deixando os componentes desprotegidos. O capacitor passa então a atuar como um condutor qualquer, perdendo sua função. Sem a proteção proporcionada por ele, os circuitos passam a receber diretamente as variações, o que, além de abreviar sua vida útil, torna o sistema como um todo mais e mais instável.

Como o processo é muito gradual, você começa notando travamentos esporádicos nos momentos de atividade mais intensa, que passam a ser mais e mais freqüentes, até chegar ao ponto em que você acaba sendo obrigado a trocar de placa-mãe, pois o micro simplesmente não consegue mais nem concluir o boot.

Nesses casos, o defeito raramente é permanente, de forma que ao substituir os capacitores defeituosos, a placa volta a funcionar normalmente. É aí que entram os técnicos e as empresas que fazem manutenção de placas-mãe, substituindo capacitores e outros componentes defeituosos.

Internamente, um capacitor eletrolítico é composto por duas folhas de alumínio, separadas por uma camada de óxido de alumínio, enroladas e embebidas em um eletrólito líquido (composto predominantemente de ácido bórico, ou borato de sódio), que acaba evaporando em pequenas quantidades durante o uso. Como o capacitor é hermeticamente selado, isto com o tempo gera uma pressão interna que faz com que ele fique estufado. Esse é o sinal visível de que o capacitor está no final de sua vida útil. Em alguns casos, o eletrólito pode vazar, corroendo as trilhas e outros componentes próximos e assim causando uma falha prematura do equipamento.

Ao contrário de chips BGA e outros componentes que usam solda de superfície, os contatos dos capacitores são soldados na parte inferior da placa. Embora trabalhoso, é possível substituir capacitores estufados ou em curto usando um simples ferro de solda, permitindo consertar, ou estender a vida útil da placa.

Atualmente, cada vez mais fabricantes estão passando a oferecer placas com capacitores de estado sólido (chamados de Conductive Polymer Aluminum), onde a folha de alumínio banhada no líquido eletrolítico é substituída por uma folha de material plástico (um polímero) contendo um eletrolítico sólido de alumínio. Por não conterem nenhum tipo de líquido corrosivo, estes capacitores não são susceptíveis aos problemas de durabilidade que caracterizam os capacitores eletrolíticos.

Embora mais duráveis, os capacitores de estado sólido são mais caros que os capacitores eletrolíticos. Como o uso deles aumenta em até US$ 10 o custo de produção da placa (o que acaba causando um aumento de até 20% no preço final), eles são oferecidos apenas em placas "premium", desenvolvidas para o público entusiasta. Com o passar do tempo, entretanto, o uso tende a se tornar mais comum.

Os capacitores de estado sólido podem ser diferenciados dos eletrolíticos facilmente, pois são mais compactos e possuem um encapsulamento inteiriço.

3 comentáriosPor Carlos E. Morimoto. Revisado 10/ago/2007 às 17h08

Cardbus

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Este termo se refere aos slots PCMCIA de 32 bits. Existem dois padrões de slots PCMCIA, os de 16 bits, baseados no barramento ISA e utilizado em notebooks antigos, 386 e 486 e os slots de 32 bits, que são baseados no barramento PCI, naturalmente muito mais rápido graças ao suporte a bus mastering e à frequência de operação de 33 MHz (contra os 8 MHz dos slots de 16 bits). Apesar de ambos os padrões serem intercompatíveis até certo ponto, o barramento de dados dos slots de 16 bits não é suficiente para interfaces de rede de 100 megabits, controladoras SCSI e outros periféricos rápidos. Os slots PCMCIA de 32 bits também são comumente chamados de slots PC Card.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Carrier Sense

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Sensor mensageiro ou verificação de mensageiro. Em redes Ethernet todos os dados que passam através do hub são repassados a todas as estações. Naturalmente só o destinatário realmente lê o pacote, mas o sinal é distribuído para todas.

Como apenas uma estação pode transmitir de cada vez, antes de transmitir qualquer pacote de dados o PC "escuta" o cabo, para verificar se alguém mais está transmitindo dados. Caso o cabo esteja livre ele transmite, caso contrário espera um certo tempo antes de tentar novamente. Esta verificação é chamada de carrier sense.

Mesmo assim, ainda existe uma pequena possibilidade de duas estações escutarem o cabo ao mesmo tempo e como conseqüência tentarem transmitir os dados ao mesmo tempo, fazendo com que as transmissões colidam em algum ponto do cabo. Sempre que isso acontece, a primeira estação que detectar o problema emite um sinal de alta frequência que "limpa" o cabo, eliminando ambos os sinais e alertando as demais estações. As duas esperam então um tempo aleatório antes de tentarem transmitir novamente, caso haja outra colisão elas esperam um tempo maior e assim vai até que finalmente consigam transmitir.

As colisões de pacotes aumentam conforme cresce o número de PCs da rede. Em redes muito grandes ou muito congestionadas as colisões podem prejudicar consideravelmente o desempenho da rede. A solução é substituir os hubs por switchs, que embora um pouco mais caros já são capazes de isolar as transmissões, enviando cada pacote diretamente ao destinatário, diminuindo em muito o número de colisões.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Cartucho recondicionado

Criado 13/jul/2005 às 10h34 por Carlos E. Morimoto

0

Os cartuchos originais, tanto da HP quanto da Epson, têm um preço relativamente alto. Como é possível recarregar os cartuchos, é comum a venda de cartuchos recondicionados por menos de 1/3 do preço de um cartucho novo.

Muitas pessoas alegam que estes cartuchos não valem à pena, argumentando que podem danificar a impressora. Realmente, como todo procedimento não aprovado pelo fabricante, o uso de cartuchos recondicionados traz alguns riscos, mas, devido ao seu baixo custo, estes cartuchos acabaram tornando-se bastante populares. Como sempre, o bolso do Brasileiro acaba falando mais alto.

Do ponto de vista de danos à impressora, existem duas possibilidades:

No caso de impressoras com cabeça de impressão fixa, como as Epson, um cartucho recarregado com tinta de baixa qualidade poderia entupir as cabeças de impressão, praticamente inutilizando a impressora, já que a troca das cabeças de impressão numa autorizada costuma custar bem mais da metade do preço de uma impressora nova. Este risco é real, pois como a tinta original dos cartuchos não é vendida separadamente, os carregadores de cartuchos têm que apelar para tintas alternativas. No caso das impressoras HP, não existe este perigo, pois a cabeça de impressão é descartável e embutida no cartucho. Neste caso, o máximo que poderia acontecer seria o cartucho não funcionar e você perder seu dinheiro.

A segunda possibilidade seria a de o cartucho recondicionado vazar dentro da impressora, obrigando você a fazer uma boa limpeza, ou mesmo inutilizando o equipamento em casos mais extremos. Isto acontece mais em cartuchos HP, pois depois de recarregado, o cartucho é lacrado com uma pequena bola plástica, a fim de manter a pressão interna. Se por acaso houver algum impacto forte (não se esqueça que durante a impressão o cartucho é chacoalhado de um lado para o outro...), esta bola pode cair para dentro do cartucho, deixando o ar entrar e consequentemente a tinta vazar pelo orifício inferior.

Outro problema, novamente no caso dos cartuchos de impressoras HP, é que a cabeça de impressão não é projetada para funcionar indefinidamente (deve ser por isso que é dada "de brinde" com o cartucho :-). Geralmente, apartir da segunda recarga, as cabeças começam a ficar desgastadas, e a qualidade de impressão torna-se cada vez pior.

Como em outros ramos, depende da competência e honestidade de quem fizer a recarga dos cartuchos. Existem algumas empresas que estão tornando-se verdadeiras especialistas em recarga, produzindo produtos praticamente livres de falhas, assim como também existe gente que compra um sistema de recarga qualquer e sai recondicionando cartuchos sem sequer saber direito o que está fazendo.

Sem comentáriosPor Carlos E. Morimoto. Revisado 13/jul/2005 às 10h34

CAS

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Um chip de memória é um exército de clones, formado por um brutal número de células idênticas, organizadas na forma de linhas e colunas, de forma similar a uma planilha eletrônica.

O chip de memória em si serve apenas para armazenar dados, não realiza nenhum tipo de processamento. Por isso, é utilizado um componente adicional, o controlador de memória, que pode ser incluído tanto no chipset da placa-mãe quanto dentro do próprio processador, como no caso dos processadores derivados do Athlon 64.

Para acessar um determinado endereço de memória, o controlador primeiro gera o valor RAS (Row Address Strobe), ou o número da linha da qual o endereço faz parte, gerando em seguida o valor CAS (Column Address Strobe), que corresponde à coluna. Quando o RAS é enviado, toda a linha é ativada simultaneamente; depois de um pequeno tempo de espera, o CAS é enviado, fechando o circuito e fazendo com que os dados do endereço selecionado sejam lidos ou gravados.

Não existe um caminho de volta, ligando cada endereço de volta ao controlador de memória. Em vez disso, é usado um barramento comum, compartilhado por todos os endereços do módulo. O controlador de memória sabe que os dados que está recebendo são os armazenados no endereço X, pois ele se "lembra" que acabou de acessá-lo.

Antigamente (na época dos módulos de 30 vias), cada chip de memória se comportava exatamente dessa forma, lendo um bit de cada vez. Apesar disso, o processador lia 32 bits de dados a cada ciclo, de forma que eram usados 4 módulos, com 8 chips cada um.

Do ponto de vista do processador, não existia divisão, os chips eram acessados como se fossem um só. O processador não via 32 endereços separados, em 32 chips diferentes, mas sim um único endereço, contendo 32 bits.

Nos módulos DIMM atuais são geralmente usados 8 chips de 8 bits cada um, formando os 64 bits fornecidos ao processador. Existem ainda módulos com 16 chips de 4 bits cada, ou ainda, módulos com 4 chips de 16 bits (comuns em notebooks). Do ponto de vista do processador, não faz diferença, desde que somados os chips totalizem 64 bits.

Imagine que o controlador de memória envia seqüências com 4, 8 ou 16 pares de endereços RAS e CAS e recebe de volta o mesmo número de pacotes de 64 bits. Mesmo em casos em que o processador precisa de apenas alguns poucos bytes, contendo uma instrução ou bloco de dados, ele precisa ler todo o bloco de 64 bits adjacente, mesmo que seja para descartar os demais.

No caso das placas dual-channel, continuamos tendo acessos de 64 bits, a única diferença é que agora a placa-mãe é capaz de acessar dois endereços diferentes (cada um em um módulo de memória) a cada ciclo de clock, ao invés de apenas um. Isso permite transferir o dobro de dados por ciclo, fazendo com que o processador precise esperar menos tempo ao transferir grandes quantidades de dados.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03

Case Sensitive

Criado 26/jun/2005 às 22h03 por Carlos E. Morimoto

0

Um sistema que diferencia caracteres maiúsculos e minúsculos nos comandos e senhas. É caso por exemplo do Linux, onde "XF86Config" é muito diferente do comando "xf86config" por exemplo. É diferente do que temos no DOS e no Windows, onde tanto faz digitar "fdisk", "FDisk" ou "fdIsK". Este termo também se aplica a linguagens de programação, o C por exemplo, onde "if" é um comando e "IF" um erro.

Sem comentáriosPor Carlos E. Morimoto. Revisado 26/jun/2005 às 22h03