Ir ao conteúdo

Memória ROM


tiagod2

Posts recomendados

Postado

Galera, não sei se essa é a área mais adequada para fazer essa pergunta . . .

Mas vou fazer a pergunta aqui porque cheguei nesse dilema enquanto lia sobre microcontroladores . . .

-

Para que todos entendam bem minha dúvida vou postar links e trechos encontrados nas páginas desses links.

-

1°) http://informatica.hsw.uol.com.br/memoria-rom1.htm

Desse modo, remover a energia elétrica desse circuito não causará a perda de nenhum dado.

2°) http://informatica.hsw.uol.com.br/memoria-rom2.htm

Figura 1. A BIOS usa memória Flash, um tipo de ROM.

http://forum.clubedohardware.com.br/voltando-como-era/193721

Pra zerar a Bios é só dar um "Clear CMOS", basicamente você pega o jumper que está ao lado da bateria da placa-mãe, e o muda de posição, ou tira do lugar, dá um 5 segundos e coloca novamente

Pergunta: Se tirar a energia de um circuito de memória ROM não causa perda de dados, como é possível zerar a BIOS retirando a bateria e colocando-a novamente? E nesse processo há perda de dados não há (Senhas)?

-

Aguardando, obrigado.

-

-

Tiago.

Postado

A BIOS é feita de 2 partes;

1-Rom/Flash,aonde é guardada as rotinas de inicialização de periféricos.

2-Ram CMOS,aonde fica uma cópia de certas rotinas da Rom e dados do usuário pois ela pode ser alterada a qualquer momento em tempo real,o horário do sistema,(RTC),é guardado e alterado nessa Ram e essa Ram necessita de fonte externa de energia para não perder os dados.A senha é um tipo de dado do usuário.

ROM BIOS,é uma coisa e Cmos Ram é outra mas pode ser chamado de BIOS tambem pois pode ter uma cópia de parte da Rom ou a Rom toda,para efeito de velocidade.

Porque então as 2 memórias?

Simples,veja,a Rom é uma memória de escrita lenta e não pode perder os dados senão o Processador não saberá o que fazer,então existe a Ram CMOS onde a escrita é rápida e portanto pode guardar dados como a hora e dia atual além de configurações de Hardware,então se a Ram CMOS perder os dados,não afetará o sistema pois existe a Rom com as rotinas principais,agora se tudo fosse guardado na Rom do sistema e desse um erro de escrita,se perderia o sistema todo.

Postado

Observe que "o" BIOS não é uma peça, um chip...

BIOS é um aplicativo, uma espécie de "programa de computador". Na verdade, o BIOS (Basic Input Output System) é uma rotina de inicialização da placa mãe, onde diversas rotinas são executadas, tais como identificação dos dispositivos ligados na placa mãe, como processador (tipo de processador, clock, multiplicador, etc), periféricos tais como discos rígidos, unidades de CD e DVD, floppy e placas conectadas nos slots, etc.

Assim, este "programa" fica armazenado numa memória somente de leitura (ROM). Somente alguns parâmetros, que podem ser alterados no setup da placa mãe é que ficam guardados numa memória RAM, cujo conteúdo é mantido por meio da bateria existente na placa mãe.

Postado

Ah tahhh, saquei "vtrx"!

Então essas informações dos links se tornaram confusos devido ao fato da segunda citação se referir somente a uma das partes da BIOS, a Flash, que assim como dito na própria citação tmb é "um tipo de ROM".

-

Esclarecedor, obrigado.

-

-

Tiago.

"cabteixeira", primeiramente valeu pela força tmb!

Mas então . . .

BIOS é um aplicativo, uma espécie de "programa de computador".

Se "o" BIOS é um aplicativo, o que o roda, o executa?

Qual parte do hardware faz esse trabalho?

-

Aguardando, obrigado.

-

-

Tiago.

Postado
Se "o" BIOS é um aplicativo, o que o roda, o executa?

Qual parte do hardware faz esse trabalho?

Entenda que o Sistema Básico de Entrada e Saída (BIOS) é um programa. É um programa exatamente igual a qualquer outro que roda no teu computador sob o ponto de vista da programação: ele utiliza exatamente o mesmo conjunto de instruções e comandos que um outro aplicativo qualquer.

Só que ele é executado de forma diferente... Ele é executado logo que você liga (Power On) o teu equipamento. O sistema será executado pelo processador da máquina mesmo.

Quando você liga o computador e o processador da placa mãe vai começar a trabalhar, o seu contador de endereços estará zerado e apontando para a primeira instrução da memória ROM onde está gravado o BIOS. O processador começa então a ler as instruções do BIOS, uma após a outra, e então vai executando a sequência de partida da placa mãe.

Este programa vai, então, identificar qual o processador que está ligado e ajustar todos os parâmetros (multiplicador, clock, tensões), vai verificar se existe memória RAM nos slots e qual o seu tipo (latências, etc), vai identificar se existe HD e vai identificá-lo (modelo, fabricante, trilhas, setores, etc) e vai iniciar o carregamento do sistema operacional depois disso tudo, apontando para a trilha/setor correspondente ao MBR do HD.

Postado

Entendo. . .

BIOS não é hardware, é software. O que executa o BIOS é o processador, beleza.

Em relação ao hardware, onde está armazenado esse software (BIOS)?

No CI ROM? Existe um CI ROM?

-

Aguardando, obrigado.

-

-

Tiago.

Postado
Em relação ao hardware, onde está armazenado esse software (BIOS)?

No CI ROM? Existe um CI ROM?

Exato,em um CI ROM.

È normal 'apelidar' a ROM e CMOS RAM de BIOS,veja,o link que citou ;

Pra zerar a Bios é só dar um "Clear CMOS",

Veja que não se pode 'zerar' a BIOS,ou o PC não inicializa,o que se zera é o conteudo da CMOS RAM.

Faltou observar que no programa BIOS existe a rotina P.O.S.T,que faz uma verificação mínima do Hardware e o programa 'Setup' onde voce configura parâmetros da BIOS que ficam gravados na CMOS RAM.

Postado
A BIOS é feita de 2 partes;

Então a BIOS não é "feita de 2 partes", e sim armazenada (ou gerenciada?*) em "2 partes" ?

Tipo, um parte é armazenada* como flash, ou seja, não sofre alterações nem perda de dados (posso considerar que perda de dados é alteração?)

E outra é armazenada* como RAM ?

-

Se ela é armazenada*, em "2 partes", isso significa que existem 2 CIs ? Um para a memória ROM e outro para memória RAM?

-

Aguardando, obrigado.

-

-

Tiago.

Postado

Exato,a CMOS RAM e uma ROM,isso normamalmente.

É por isso que se pode,(mas não deve tentar),retirar a ROM do soquete e mesmo assim o PC funcionar normalmenete desde que não se desligue e ligue sem a ROM.

Tipo, um parte é armazenada* como flash, ou seja, não sofre alterações nem perda de dados (posso considerar que perda de dados é alteração?)

voce altera a ROM quando atualiza a BIOS,e se esse processo de atualização falhar,voce perdeu os dados numa alteração...

Qual o seu interesse neste assunto?

Postado
Então a BIOS não é "feita de 2 partes", e sim armazenada (ou gerenciada?*) em "2 partes" ?

Os dados relativos às rotinas de inicialização e todo o programa em si ficam armazenados num chip, que o pessoal apelidou de ROM. Este chip é uma memória, que normalmente só pode ser lida, mas que em uma condição especial pode sim ser apagada e regravada.

Existe um segundo chip, este uma memória do tipo RAM, que armazena os dados que você altera (os dados que podem ser editados no Setup). A memória RAM perde o seu conteúdo se houver interrupção da alimentação... Por isso, se você retira aquela bateria que fica na placa mãe, os dados que estão no setup do BIOS se perdem e são imediatamente adotadas as configurações default, que ficam armazenadas no BIOS.

voce altera a ROM quando atualiza a BIOS,e se esse processo de atualização falhar,voce perdeu os dados numa alteração...

Na verdade, se este processo de atualização falhar, na maioria das vezes você perde a placa mãe toda, pois quando houver erro nos dados deste sistema a placa mãe não inicializa mais. Em teoria, é possível retirar o chip que armazena os dados para gravar novamente os dados num equipamento apropriado ou, se você for suficientemente louco (ou estiver suficientemente desesperado) pode arranjar uma placa mãe igual, retirar o chip dela, colocar na placa parada (onde ocorreu erro no processo de atualização), ligar a placa defeituosa, retirar o chip com ela funcionando (processo tremendamente perigoso!) pra, sem desligar o equipamento, tentar uma nova atualização...

Por conta disso, o processo de atualização do BIOS é complexo e perigoso.

È normal 'apelidar' a ROM e CMOS RAM de BIOS,veja,o link que citou

Na verdade, os dados são armazenados numa memória FLASH e se formos levar bem ao pé da letra não poderíamos chamar o chip onde ficam armazenados os dados do BIOS de ROM. As memórias do tipo ROM (Read Only Memory) são gravadas em fábrica e nunca mais podem ser alteradas... Somente lidas (daí vem o nome).

A memória (o chip) que existe na placa mãe responsável pelo armazenamento do programa básico do BIOS é do tipo EEPROM, que pode ser apagado e gravado por meio de sinais elétricos apropriados.

Postado

Tiagod,

Vou tentar deixar mais claro para voce entender melhor :

Hoje em dia, a BIOS é uma memória do tipo EEPROM, ( talvez hoje se use FLASH... ) não se usa mais ROM.

E como toda memória EEPROM, ela pode ser alterada,o que chamamos de ATUALIZAÇÃO de BIOS. Fazemos isso para que a placa mãe suporte processadores que surgiram DEPOIS que a placa foi lançada no mercado, ou para corrigir algum problema que tenha sido detectado depois.

Esse processo envolve um programa especial, feito para essa placa mãe, ok ?

Agora, a parte que voce está tendo dificuldade em entender :

Toda vez que voce liga a placa-mãe, o processador executa o programa de inicialização que está na BIOS, lendo os dados armazenados e configurando todo o hardware existente na sua placa-mãe, por exemplo, ligando periféricos ( porta serial, paralela, USB, SATA, etc... ) e configurando várias coisas fundamentais ( por exemplo, qual o HD que vai inicializar o sistema ) . Só quando tudo estiver pronto e configurado, é que o BIOS passa o controle para o Sistema Operacional instalado em seu computador.

Sabe o tal do CMOS SETUP, que é aquela tela inicial em que voce configura a sua placa-mãe, quase sempre apertando a tecla DEL assim que aparece imagem no seu monitor ?

Ele é reponsável por muitas das informações que o BIOS vai usar para configurar tudo; se tiver coisa errada, o seu micro não vai funcionar !

Esse programa do CMOS SETUP está sendo executado pela BIOS, e a placa mãe possui um chip RTC que além da hora tem memória SRAM dentro dele ( imagine que é bem parecido com o DS1307 da apostila... ), e os parâmetros que voce configura no CMOS SETUP são armazenados exatamente DENTRO desse RTC.

Como todo RTC, ele mantém a data e hora, através de uma pilha ( sim, aquela tal CR2032 que tem em toda placa-mãe... ) e também os dados que são necessários para o funcionamento perfeito de sua placa mãe, que são definidos pelo CMOS SETUP.

Existem situações em que configuramos alguma "besteira" , tipo um clock maior do que a CPU suporta, ou uma tensão diferente das memórias, etc, e aí a placa-mãe não funciona mais por causa desses dados gravados.

Quando algum desses dados estiver errado, a placa mãe não liga, e aí só tem um remédio : desligar a bateria do chip RTC !!

Essa é a função desse Jumper chamado CLEAR CMOS !!!

Quando fazemos isso, os dados do RTC são zerados, e quando voce ligar novamente a placa-mãe, o BIOS percebe que os dados estão errados, e assume um padrão que garante o funcionamento mínimo da placa-mãe ( chamamos isso de DEFAULT ) .

veja se entendeu melhor ok ?

Paulo

Postado

Bom, primeiramente obrigado a todos!

-

Vamos as dúvidas!

>> "cabteixeira"

-

Os dados relativos às rotinas de inicialização e todo o programa em si ficam armazenados num chip, que o pessoal apelidou de ROM. Este chip é uma memória, que normalmente só pode ser lida, mas que em uma condição especial pode sim ser apagada e regravada.

Existe um segundo chip, este uma memória do tipo RAM, que armazena os dados que você altera (os dados que podem ser editados no Setup). A memória RAM perde o seu conteúdo se houver interrupção da alimentação... Por isso, se você retira aquela bateria que fica na placa mãe, os dados que estão no setup do BIOS se perdem e são imediatamente adotadas as configurações default, que ficam armazenadas no BIOS.

Assim como confirmado pelo nosso colega "vtrx", realmente há dois CIs, beleza. Essa parte eu entendi.

Mas quando abrimos o PC e olhando a placa mãe, o que vemos são 2 CIs ?

Ou não, são muito pequenos e por isso parece ser 1 só? (acho que falei besteira ^^)

-

Na verdade, os dados são armazenados numa memória FLASH

E assim como dito anteriormente, uma parte desses dados numa meméria RAM?

e se formos levar bem ao pé da letra não poderíamos chamar o chip onde ficam armazenados os dados do BIOS de ROM.

Com base no primeiro link (http://informatica.hsw.uol.com.br/memoria-rom1.htm), Flash é um tipo de memória ROM, então não estaria errado né?

As memórias do tipo ROM (Read Only Memory) são gravadas em fábrica e nunca mais podem ser alteradas... Somente lidas (daí vem o nome).

Tmb com base no primeiro link, ele diz: "os dados armazenados nesse chip são também imutáveis, ou requerem uma operação especial para serem alterados". O "chip" que ele refere-se, são do tipo ROM, PROM, EPROM, EEPROM, memória Flash. Então "nunca" é exagero, sempre há uma chance de altera-los, né? Não é tão simples a ponto de só cortar a energias, mas há um modo né?

A memória (o chip) que existe na placa mãe responsável pelo armazenamento do programa básico do BIOS é do tipo EEPROM, que pode ser apagado e gravado por meio de sinais elétricos apropriados.

Mas que não perde dados se não hover energia, né?

-

-

>> "aphawk"

Hoje em dia, a BIOS é uma memória do tipo EEPROM, ( talvez hoje se use FLASH... ) não se usa mais ROM.

Com base nas afirmaçõs anteriores, a BIOS é um programa, armazenado num CI com tecnologia "EEPROM, ( talvez hoje se use FLASH... )". Porém, uma parte da BIOS é armazenada num CI com tecnologia RAM, certo?

De maneira respectiva, a primeira requer uma operação especial para ser alterada, e a segunda pode sofrer alterações com um simples fato de retirar a bateria que a "sustenta", certo?

Esse processo envolve um programa especial, feito para essa placa mãe, ok ?

Ok, essa seria a "operação especial" citada no primeiro link.

Toda vez que voce liga a placa-mãe, o processador executa o programa de inicialização que está na BIOS, lendo os dados armazenados e configurando todo o hardware existente na sua placa-mãe, por exemplo, ligando periféricos ( porta serial, paralela, USB, SATA, etc... ) e configurando várias coisas fundamentais ( por exemplo, qual o HD que vai inicializar o sistema ) . Só quando tudo estiver pronto e configurado, é que o BIOS passa o controle para o Sistema Operacional instalado em seu computador.

Essa parte eu ja tinha entendido por conta da sua apostila o/

Esse programa do CMOS SETUP está sendo executado pela BIOS, e a placa mãe possui um chip RTC que além da hora tem memória EEPROM dentro dele ( imagine que é bem parecido com o DS1307 da apostila... ), e os parâmetros que voce configura no CMOS SETUP são armazenados exatamente DENTRO desse RTC.

Então o CMOS SETUP é a parte da BIOS que pode sofrer alterações apenas tirando a energia elétrica. beleza.

Então ja descobrimos aqui o nome "da parte da BIOS" que sofre altaroçoes com cortes de energia. beleza.

Tmb descobrimos o nome do CI que armazena essa parte do programa: "RTC". beleza.

Mas como é possivel essa perda de dados, se você disse que o CI que armazena (RTC), é do tipo EEPROM?

Tendo como base o primeiro link, esse chip teria de ser RAM, pois EEPROM é um tipo de memória ROM e não sofre mudanças com um simples corte de energia, certo ?

-

Aguardando, muiito obrigado a todos, ahh, tenham paciencia comigo?

To afinzaão de deixar esse assunto bem claro na minha mente :)

-

>> "vtrx"

Qual o seu interesse neste assunto?

Quero entender bem, porque isso é uma das coisas que preciso saber para dar continuidade na apostila do Paulo ^^

porque, microcontroladores tmb usam memória ROM, RAM e etc . . .

-

-

Tiago.

Não irei juntar essa postagem com a outra pois a outra esta enorme! :D (PS: O modera juntou . . .)

-

Galerinha que estão me ajudando, agora fiquei com mais uma dúvida . . .

PS: O que mais me confunde são as contradições, mas isso é bom pois gera debates, e acho que são nesse tipo de discussão que realmente aprendemos! o/

-

Então, sobre a duvida:

O BIOS contém todo o software básico (...)

http://www.guiadohardware.net/termos/bios

-

Ele refere-se ao BIOS como algo que armazena o software, e não como o próprio softaware!! :mad:

-

Agora to confuso . . . de novo :D

Postado
Ele refere-se ao BIOS como algo que armazena o software, e não como o próprio softaware!!

É a famosa 'força de expressão brasileira',não faz diferença.

memórias ROM eram usados nos PCs na época do 486,as ROMs só podem ser gravadas uma vez na fábrica e não são mais usadas nos PCs.

As PROMS podem ser apagadas com luz ultravioleta através de uma 'janela' em seu corpo(lembra dos cartuchos de Atari?).

As EPROMS podem ser gravadas/regravadas através de duas tensões elétricas, negativa e positiva (+12 -12 na maioria).

As EEPROMS são apagadas/regravadas através de tensão elétrica de um pólo,tensão positiva.

As Flash podem ser gravadas/regravadas tambem com uma tensão elétrica mas são mais rápidas que as outras.

Postado

Parabens pela postagem aphawk

Acho que ficou bem claro o que é ROM, RAM, ...PROM e Flash. O que é BIOS, POST, SETUP e CMOS.

em simples palavras, antigamente se usava ROM ( como CD-R), a algum tempo atras usava-se EEPROM (com CD-RW), hoje os fabricantes de Mainboard usam FLashROM ( com Pendrivers e SSD).

Edit:

Recomendo:

http://www.guiadohardware.net/comunidade/showthread.php?t=239131&highlight=bios+marcos

Postado
Mas quando abrimos o PC e olhando a placa mãe, o que vemos são 2 CIs ?

Quando você olha uma placa mãe, você vai ver dezenas de CI's.

Nun deles, existe uma etiqueta colada (identificando ser ele o que o pessoal normalmente chama de "BIOS").

bios.jpg

Entenda, por favor, que muita coisa que você vai achar escrito na internet não condiz com a realidade... Existe muito "folclore" acerca do computador e tem muita gente "entendida" postando artigos por aí...

Flash é um tipo de memória ROM, então não estaria errado né?

Memoria FLASH é uma coisa. Memória ROM é outra!

Então "nunca" é exagero, sempre há uma chance de altera-los, né? Não é tão simples a ponto de só cortar a energias, mas há um modo né?

Conforme eu disse antes, existe muita coisa na internet que é postada de forma errada. Observe que a maioria dos "tecnicos" em informática que existem por aí não sabe a diferença entre memória ROM, PROM, EPROM...

beleza.

Tmb descobrimos o nome do CI que armazena essa parte do programa: "RTC". beleza.

RTC (Real Time Clock) é um dos circuitos que existem dentro de uma placa mãe. Este circuito possui a função única e exclusiva de manter funcionando o relógio da placa mãe. Só isso.

Mas como é possivel essa perda de dados, se você disse que o CI que armazena (RTC), é do tipo EEPROM?

O RTC só tem a função de relógio.

Corrigindo algumas coisas:

memórias ROM eram usados nos PCs na época do 486,as ROMs só podem ser gravadas uma vez na fábrica e não são mais usadas nos PCs.

Memórias do tipo ROM sempre foram utilizadas (aliás, bem antes dos 486 já elas já existiam). E ainda são, só que não mais para armazenar o BIOS. Por exemplo: o endereço mac das placas de rede fica armazenado numa parte do chipset da placa de rede que é uma ROM.

As PROMS podem ser apagadas com luz ultravioleta através de uma 'janela' em seu corpo(lembra dos cartuchos de Atari?).

As memórias PROM (Programable Ready Only Memory) são um tipo de memória que vem "zerada" de fábrica. Você faz a gravação delas por meio de um processo elétrico e uma vez gravadas, nunca mais elas podem ser alteradas. Entenda o processo como se fossem pequenos fusíveis dentro da memória: quando você queima um deles (para que ele assuma a condição de zero ou um), já era... Não tem mais como mudar o seu estado.

As EPROMS podem ser gravadas/regravadas através de duas tensões elétricas, negativa e positiva (+12 -12 na maioria).

As memórias do tipo EPROM (Erasable Programmable Read-Only Memory) podem ser apagadas, por meio da exposição do chip à Luz ultravioleta. Essas são fáceis de serem reconhecidas, pois sobre o chip existe uma pequena janela transparente.

eprom.jpg

Assim, para que elas sejam apagadas, você colocava a memória dentro de uma câmara, onde ela era exposta a luz ultravioleta por um determinado tempo.

Depois de apagada, ela podia ser gravada com sinais elétricos específicos (um pulso elétrico, de tensão e duração especificadas pelo fabricante, num determinado pino do chip). Os valores da tensão devem ser verificados no datasheet da memória.

As EEPROMS são apagadas/regravadas através de tensão elétrica de um pólo,tensão positiva.

Estas são a evolução da EPROM. Este tipo de memória pode ser apagada com um pulso elétrico (Electrically-Erasable Programmable Read-Only Memory). Elas não possuem mais a janelinha transparente.

Postado

"jonny_br",

Vou começar ler as informações desse link ja!

-

"cabteixeira",

Quando você olha uma placa mãe, você vai ver dezenas de CI's.

Claro, mas eu me referia ao(s) CI(s) que armazena(m) o BIOS.

Nun deles, existe uma etiqueta colada (identificando ser ele o que o pessoal normalmente chama de "BIOS").

Esse possui 2 tecnologias de memória?

Uma é "fixa", e outra pode ser zerada/modificada?

Entenda, por favor, que muita coisa que você vai achar escrito na internet não condiz com a realidade... Existe muito "folclore" acerca do computador e tem muita gente "entendida" postando artigos por aí...

Sim eu ja entendi, sempre entendi.

Por isso que estou debatendo esse assunto com vocês, para chegar a conclusão de qual é menos errada...

Ao invés de ler e acreditar na primeira leitura, pesquiso muito e acumulo dúvidas. E essas me ajudam a formar conceitos.

Memoria FLASH é uma coisa. Memória ROM é outra!

Pois é, essa é uma pergunta feita com bases em textos lidos na net, cujo link pode ser obtido aqui mesmo nesse tópico. E nele dizia que FLASH é sim um tipo de memória ROM. E ele afirma isso, pelo simples fato da memória FLASH possuir uma caracteristica tipica de memória ROM: Não perde dados quando há corte de energia.

Mas, não é porque postei ou perguntei que eu acredito, ou que essa seja minha opinião, pelo contrario, são maneiras que eu utilizo para formar minhas próprias opiniões.

-

Vou continuar a ler sobre o assunto. . .

-

-

Tiago.

Postado
Claro, mas eu me referia ao(s) CI(s) que armazena(m) o BIOS.

Existem dois C.I.'s envolvidos: um deles é uma memória FLASH (funciona como uma EEPROM) e o outro uma memória RAM. Além desses dois, temos ainda um circuito responsável pelo relógio (RTC).

Apenas um desses pode ser identificado logo de cara: o chip da memória Flash (nele é que fica a etiqueta colada).

Esse possui 2 tecnologias de memória?

Uma é "fixa", e outra pode ser zerada/modificada?

Na verdade, as memórias a que eu me refiro (Flash e RAM) ficam em chips diferentes... A memória flash não perde o seu conteúdo sem que seja nela aplicado um sinal elétrico específico (mesmo se interrompermos a sua alimentação ou mesmo se a retirarmos do circuito - ela fica, geralmente, encaixada num socket). A memória RAM fica em outro chip e nela não existe nenhuma etiqueta ou identificação...

dizia que FLASH é sim um tipo de memória ROM

Esta informação é incorreta.

Memória flash é um tipo de memória EEPROM (é uma evolução desta).

É muito importante que fique bem claro: memória ROM é gravada na fábrica e nunca mais pode ser alterada, de nenhuma forma.

ele afirma isso, pelo simples fato da memória FLASH possuir uma caracteristica tipica de memória ROM: Não perde dados quando há corte de energia

Ele afirma isso por falta de conhecimento de eletrônica. Chega a ser absurdo fazer este tipo de analogia baseado no fato de que ambas as tecnologias "não perdem dados quando há corte de energia"... Se tal comparação fosse válida, só existiriam no mundo as memórias RAM e ROM.

Mas, não é porque postei ou perguntei que eu acredito, ou que essa seja minha opinião, pelo contrario, são maneiras que eu utilizo para formar minhas próprias opiniões

Por favor, peço que não me entenda mal.

Não estou te criticando... Só estou tentando impedir a disseminação de informações incorretas. Peço desculpas se fui rude ou algo do tipo.

Uma coisa que muito me preocupa é que na internet "qualquer um publica qualquer coisa, a qualquer hora, em qualquer lugar". Assim, a internet acaba contribuindo para divulgar conceitos errados, na medida em que as pessoas não tem o mesmo interesse que você (em procurar informações corretas).

Postado

Cabteixeira,

voce tem razão em filtrar as informações. Realmente é um absurdo o que tem de informação errada por aí sobre tudo o que estamos falando aqui.

Tiagod,

Bom , pelo que eu lí, ainda está tendo uma certa confusão entre o que é SOFTWARE e o que é HARDWARE.

Vou contar aqui uma história antiga, que vai fazer voce entender. E eu viví esta época toda, e também participei de um dos primeiros projetos de microcomputador tipo PC aqui no Brasil na época dos militares... Não é que eu tenha lido por aí não !

Primeira coisa : quando a IBM projetou e lançou o IBM-PC, não existia ainda as memórias EEPROM nem a FLASH. Só existiam 3 tipos de memória : ROM, EPROM E RAM.

A IBM, que era a fabricante original, usou ROM para armazenar o BIOS , enquanto que os outros fabricantes, que copiaram o projeto e vendiam em quantidade menor, usaram EPROM, pois naquela época usar ROM só era viável em termo de preços se voce usasse uma quantidade enorme delas.

Só a IBM tinha esse volume enorme para compensar.

Hoje em dia, não se usa mais as ROMs nos PCs, principalmente porque o uso de EEPROM ou FLASH permite que a BIOS seja atualizada para suportar novos processadores, ou até mesmo para corrigir eventuais defeitos no projeto.

Agora, voce está vendo que todos falam em BIOS, toda hora é Bios para cá, Bios para lá, e assim vai. Afinal, o que é o BIOS ???

BIOS - BASIC INPUT OUTPUT SYSTEM

Traduzindo, SISTEMA BÁSICO DE ENTRADA / SAÍDA !

O BIOS é um software, que é responsável por um montão de coisas, para ser mais específico, ele é quem responde por qualquer coisa que envolva o hardware do seu computador.

Por exemplo, quando voce liga o computador, o BIOS faz algumas dezenas de testes, para verificar se pelo menos a eletrônica básica está funcional.

É o BIOS que é responsável por ler e/ou escrever dados no chip RTC, que contém todos os dados relativos ao programa do BIOS chamado CMOS SETUP.

O que mais tem no BIOS ?

Após o BIOS preparar o hardware todo para funcionar, usando os dados do chip RTC, ele passa o controle ao Sistema Operacional ( por exemplo, o Windows XP, Windows Vista, Linux, etc ), e a partir daí o BIOS fica sendo uma espécie de Auxiliar, por exemplo, o Sistema Operacional não faz a mínima ideia de como acessar o Hard Disk, então como isso é feito ?

Vamos voltar à Época do IBM PC-XT.

Quem dominava o mercado de computadores naquela época era a Apple.

Para que o computador projetado pela IBM tivesse sucesso, teriam de existir muitos programas para ele. Portanto, a IBM tinha de fazer com que programar para o IBM-PC fosse simples, sem ser necessário um enorme conhecimento da eletrônica do computador.

Abro aqui um parêntesis :

Naquela época, os programas para Apple eram quase sempre feitos por pequenas empresas que tinham sempre em seus quadros um engenheiro eletrônico, pois o hardware não era muito padronizado, e os programas feitos para um Apple II davam problemas para rodar em um Apple IIe

, e os do Apple IIe davam problemas para rodar no Apple IIc.

Ou seja, existiam programas com versões específicas para cada variante do computador.... e quando voce fazia um upgrade, tinha de ir comprar um programa novo para aquele micro....

Agora, lembrando que os engenheiros não tem muita noção de estética de programa, nem de beleza de apresentação, dá para entender o porque que naquela época bastava DOS e video de 80 colunas, tudo em modo texto ?????????

Voltando ao nosso assunto :

A IBM percebeu que essa incompatibilidade era a grande falha da Apple, e para conquistar o seu público, ela deu uma garantia de evolução, dizendo que quem comprasse um IBM-PC XT podia depois fazer um upgrade que os programas iriam servir nos novos modelos que se seguiriam.

Para ela conseguir isto, a Equipe de Engenheiros da IBM criou uma PADRONIZAÇÃO, que era um conjunto enorme de programas específicos para inicializar o hardware, e principalmente conversar ( usar ) com o hardware. Assim, os programadores não precisavam mais conhecer detalhes profundos do Hardware, e assim estavam livres para gastar toda a energia mental apenas no programa e nos aspectos comerciais, como beleza, funcionalidade, apresentação, etc !

A esse conjunto de programas padronizados deu-se o nome de BIOS !

Por exemplo, quando o programador queria escrever na tela do PC, ele usava uma função ( sub-programa ) da Bios específica para isto.

Quando quisesse usar uma interface serial, ele usava uma outra função do BIOS.

Para ler um setor do Hard Disk, existia uma função específica da BIOS.

Ou seja, a BIOS foi fundamental para que os programas rodassem tanto no IBM-PC XT, no AT, no AT386, no AT 486, no Pentium, e assim vai ...

Hoje em dia, a BIOS cresceu muito em relação à bios original dos IBM PC- AT ( os XT tinham 8K de Bios, os AT tinham 16K ... hoje as bios tem 512K !!!!! ) , e muitas novas funções foram incluidas nela.

O CMOS SETUP nada mais é do que um dos programas da BIOS !

Resumindo, uma BIOS hoje contám centenas de pequenos programas, todos eles conversando com o hardware do micro !!!!!

BIOS, CMOS SETUP, isto tudo se refere a SOFTWARE.

Memória EEPROM, Flash, ROM, chip RTC, tudo isto é HARDWARE !

Agora, cabe aqui uma observação minha : quando os programas eram escritos por quem tinha o domínio do hardware, eles ficavam muito pequenos, e muito, mas muito rápidos....( eu escrevia programas em assembler nessa época, tanto para os APPLE 2 como para os IBM-PC ); agora, hoje em dia, aparece um montão de gente falando que programa em C, C++, Basic, sei lá mais o que, e faz os programas usando essas malditas bibliotecas prontas.... e os programas ficam cada vez maiores e mais lentos !!!!!

Esse é o preço que pagamos para ter cada vez mais programas : quanto mais gente aparece fazendo programas para os PC, mais rápido os fabricantes tem de fazer as CPU's rodarem, para compensar a qualidade de código cada vez menor dessas linguagens de alto nível, e os tamanhos absurdos dos respectivos executáveis exigem cada vez mais memória RAM no computador.

Só para lebrar .... o primeiro IBM-PC tinha apenas 64K de RAM !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Agora, respondendo às suas questões :

Com base nas afirmaçõs anteriores, a BIOS é um programa, armazenado num CI com tecnologia "EEPROM, ( talvez hoje se use FLASH... )". Porém, uma parte da BIOS é armazenada num CI com tecnologia RAM, certo?
Errado ... toda a BIOS fica ou em EEPROM ou em Flash. Os dados

que a BIOS utiliza para quando inicializa todo o hardware é que ficam no chip RTC, que é uma memória EEPROM .

Então o CMOS SETUP é a parte da BIOS que pode sofrer alterações apenas tirando a energia elétrica. beleza.
Errado também... o CMOS SETUP é um programa da BIOS, que pode ser chamado mediante o aperto da tecla DEL ( algumas placas mãe usam outras teclas ) logo que ligamos o computador. E este programa interage conosco, onde configuramos, por exemplo, o clock das memórias, quais os HDs que queremos que sejam usados, qual o HD quevai ser o de BOOT, se vamos ter porta serial, e qual será ela ( com1, com2 , etc, ) se vamos ter portas USB, se vamos ter portas SATA, se vamos utilizar dois ou mais HD's em RAID, etc.

Quando voce sai do CMOS SETUP, ele guarda todas estas informações DENTRO da memória SRAM do chip RTC.

E essa memória é mantida por aquela pequena pilha que existe em seu computador !!!!

Mas como é possivel essa perda de dados, se você disse que o CI que armazena (RTC), é do tipo EEPROM?

Tendo como base o primeiro link, esse chip teria de ser RAM, pois EEPROM é um tipo de memória ROM e não sofre mudanças com um simples corte de energia, certo ?

Até que sua dúvida faz sentido. Na verdade, o RTC usa uma memória do tipo SRAM... ele precisa da bateria para manter o relógio funcionando e também para manter os dados da memória. Se a tensão fica muito baixa, a memória é corrompida, ou seja, não é zerada, mas os dados se misturam, e fazem seu micro parar.

Já quando voce muda o jumper para fazer o tal de CLEAR CMOS, voce está removendo totalmente a tensão do RTC, e com isto os dados da memória SRAM dele são zerados. Mas lembre-se de que para isso, os fabricantes recomendam manter o jumper nessa posição por alguns segundos, que é para garantir que toda a memória esteja zerada ok ?

Outra coisa, os dados nessa memória do chip RTC podem ser corrompidos, tanto pelo hardware defeituoso, uma pilha com tensão muito baixa, como por um programa que se perde e acaba acessando o RTC sem querer...., até mesmo já existiu um Vírus que fazia isso e deixava todo mundo doido....

Ufa , cansei .... caramba meu, vê se entende agora porque essa é a ultima vez que digito tanta coisa !!!!! Hahahahaha

Um abraço !

Paulo

Postado

Faz tanto tempo que troquei as ordens,eu não usei o 'google 'para responder...

Quando voce sai do CMOS SETUP, ele guarda todas estas informações DENTRO da memória SRAM do chip RTC.

O RTC não guarda as configurações do setup,mesmo contendo uma pequena RAM.

Atualmente a memória de configuração e o RTC estão integrados no chipset da placa-mãe, no circuito chamado pontel sul,em placas antigas existia um CI CMOS-RAM específico.

Memórias do tipo ROM sempre foram utilizadas (aliás, bem antes dos 486 já elas já existiam). E ainda são, só que não mais para armazenar o BIOS. Por exemplo: o endereço mac das placas de rede fica armazenado numa parte do chipset da placa de rede que é uma ROM.

Lógico que estávamos falando de placa mãe...

Tiagos2,se quiser te passo um programa meu antigo para voce 'bisbilhotar' o conteudo de seu CMOS RAM.

Postado

"cabteixeira",

Por favor, peço que não me entenda mal.

Não estou te criticando... Só estou tentando impedir a disseminação de informações incorretas. Peço desculpas se fui rude ou algo do tipo.

Tmb peço desculpas se pareci grosseiro.

Só queria deixar claro que por mais que pareça que eu estou fazendo uma tempestade num copo d'água, perguntando e reperguntando coisas parecidas, é que as vezes por mais parecidas que estejam duas perguntas, uma virgula (","), pode mudar muito o sentido da mesma, fazendo com que uma perfeita com0preensão não seja possivel.

Desculpa qualquer coisa :)

-

você é um cara inteligente, obrigado e parabééns pelo trabalho!

Paulo,

Não sei porque ainda me impressiono com sua capacidade de escrever textos tão eloqüentes!! (PS: eloqüente com ou sem trema?)

Em relação as citações:

Resumindo, uma BIOS hoje contám centenas de pequenos programas
toda a BIOS fica ou em EEPROM ou em Flash.

Ou seja, todas essas "centenas de pequenos programas" contidos na BIOS ficam num unico CI, com tecnologia ou EEPROM ou Flahs, certo?

Então o CI RTC, que possui tecnologia SRAM, é uma extensão do CI de tecnologia EEPROM ou Flash, que por sua vez armazena a BIOS, programa composto por um conjunto de centenas de sub-programas!.

E esse CI RTC de tecnologia SRAM, não armazena programas, armazena informações geradas por programas; programas esses do CI que armazena a BIOS. Certo?! :D

E é justamente essas informações contidas no RTC, geradas pelos programas da BIOS, que são zeradas ao efetuar o corte de energia por alguns segundos por exemplo. Energia essa fornecida por uma bateria que sustenta exclusivamente o RTC. Certo?

-

Ja ta qse lá maninho!

Jaájá esse tópico poderá ser marcado como resolvido o/

Tenha só mais um pouco de paciência! ^_^

-

"vtrx",

Que tipo de informação eu posso encontrar "bisbilhotando" o conteúdo do CMOS RAM ?

PS: CMOS RAM = CMOS SETUP ?

-

Aguardando, obrigado.

-

-

Tiago.

Postado

Hahahaha e eu que sei ?????????? Com essa reforma que teve da língua portuguesa, só Deus que sabe ....

Ou seja, todas essas "centenas de pequenos programas" contidos na BIOS ficam num unico CI, com tecnologia ou EEPROM ou Flahs, certo?

Sim !
Então o CI RTC, que possui tecnologia SRAM, é uma extensão do CI de tecnologia EEPROM ou Flash, que por sua vez armazena a BIOS, programa composto por um conjunto de centenas de sub-programas!.
Não exatamente. O ci RTC não tem nada de extensão , ele é um CI independente, tanto que usamos ele comos PICs, apenas para ele manter a base de tempo ( ou seja, apenas um relógio muito preciso ! ) .

Claro que como ele possui uma SRAM interna, podemos usar essa memória, mas ela é bem pequena , quase sempre menor do que 128 bytes ...

que por sua vez armazena a BIOS, programa composto por um conjunto de centenas de sub-programas!
Sim, é uma memória de programa, apenas.
E esse CI RTC de tecnologia SRAM, não armazena programas, armazena informações geradas por programas; programas esses do CI que armazena a BIOS. Certo?!
Quase ... o ci RTC não é de tecnologia SRAM, veja bem, ele não é uma memória ! Na verdade, ele é um pequeno microprocessador especializado em funcionar apenas como RELÓGIO, e dentro dele existe essa pequena memória, chamada de SRAM, pois ela é ESTÁTICA ( mas só mantém os dados enquanto o RTC tiver a bateria ligada nele !!!! ).

O correto é dizer que esse ci RTC , além de funcionar como relógio de tempo real ( RTC = Real Time Clock ! ) , possui uma pequena memória cujos dados são mantidos por uma bateria, e essa memória está disponível para que os programas usem ela quando necessário. ( digo os programas porque não é só o BIOS que pode acessar elas, nós também podemos acessar com um programa que escrevemos, ok ? ) !

E é justamente essas informações contidas no RTC, geradas pelos programas da BIOS, que são zeradas ao efetuar o corte de energia por alguns segundos por exemplo. Energia essa fornecida por uma bateria que sustenta exclusivamente o RTC. Certo?
Isso mesmo !!!!! Como a memória SRAM está dentro do RTC, a bateria mantém esses dados !

Caramba meu, acho que depois dessa o Bcptronzio vai me dar o troféu "SACO DE OURO" daqui do Fórum !!!!! :D:D:D:D:D

Veja se agora entendeu !

Paulo

Postado

Tiago2,são muitas informações,dentre elas temos a hora,segundos,minutos,dia da semana,mes,ano,algumas versões contem a senha do setup e muitas outras que posso te passar detalhadamente,pois sou programador de sistemas operacionais tambem.

Como disse,o 'setup' não fica no RTC,baixe o meu programa que entenderá melhor o que fica registrado no CMOS RAM (chipset ponte sul nas placa mais recentes),note que depois que voce o roda,é gerado um arquivo cmos.txt com as principais informações da CMOS(128 Bytes),como por exemplo:

Endereço Hexa 00=Segundos lido do RTC.

Endereço Hexa 02=Minutos lido do RTC.

Endereço Hexa 04=Hora lida do RTC.

Endereço Hexa 06=Dia da semana lida do RTC (segunda(1),terça(2) etc)

Endereço Hexa 08=Mes lido do RTC.

Endereço Hexa 09=Ano lido do RTC (20..)

Existem mais informações não relacionadas ao RTC.

http://www.mandeibem.com.br/?cod=251201022374354507

O arquivo txt é gerado na pasta onde estiver o programa.

É bom frisar que o RTC usado nas placa de PC atualmente não é o mesmo usado em projetos tipo com o µc PIC (Ds1307),a memoria RAM do DS1307 é de apenas 56 bytes.

Bom estudo.

Postado

"vtrx",

Baixei o programa!

Vou testa-lo valeu!!

-

Hahaha! Tópico resolvido!!

E olha . . . era uma dúvida tão simples!

E rendeu tanta explicação!

Mas agora eu realmente sei o que é!

Já posso dar continuidade a apostila do Paulo o/

-

Muiito obrigado a todos!!!

E Paulo, realmente! "SACO DE OURO"! Kkkkkk!

-

-

Tiago.

  • Coordenador
Postado

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...