Memória reservada para hardware

0

Alguém pode explicar por que uma certa quantidade de memória sempre reservada para hardware? Como isso está relacionado ao endereçamento de memória?

    
por Gleb Voronchikhin 11.11.2016 / 14:55

2 respostas

0

Muita coisa depende se este é um sistema operacional de 32 ou 64 bits.

Com um sistema operacional de 64 bits, o maior usuário de memória reservada de hardware é normalmente o sistema de vídeo. Por razões de economia, muitos sistemas de vídeo não têm ou têm pouca memória própria, mas dependem da memória do sistema para suas necessidades. Isso é particularmente comum em laptops. Essa memória seria reservada pelo BIOS para uso de vídeo antes mesmo do Windows ser iniciado.

Todas as opções acima se aplicam a um sistema operacional de 32 bits, mas há um fator adicional. Um sistema operacional de 32 bits possui um espaço de endereçamento fixo de 4 GB. RAM é o maior usuário deste espaço de endereçamento, mas não é o único. Por motivos de desempenho, uma parte substancial desse espaço é usada para E / S de mapeamento de memória. Isso permite que a CPU se comunique rapidamente com dispositivos de hardware, lendo e gravando para eles da mesma forma que faz com a memória. Normalmente, isso exigiria cerca de 500 MB e mais espaço de endereço. Existem outros métodos disponíveis, mas eles são muito lentos para dispositivos de alto desempenho, como vídeo.

O IO de memória mapeada aparece no mesmo espaço de endereço da RAM. Isso introduz um problema. Você não pode ter 4 GB de RAM e 500 MB + de dispositivos mapeados em memória em um espaço de endereço de 4 GB. Só não vai caber. Assim, qualquer espaço usado para dispositivos mapeados na memória não está disponível para uso pela RAM. Normalmente, cerca de 500 a 750 MB são perdidos, mas a quantidade exata depende do hardware.

Os sistemas operacionais de 64 bits têm um espaço de endereço físico medido em terabytes, portanto há bastante espaço para IO de RAM e memória mapeada.

    
por 11.11.2016 / 19:21
0
why some amount of memory always reserved for hardware?

Porque isso faz parte da arquitetura contemporânea de computadores pessoais, chamada "PCI", Interconexão de componentes periféricos . Essa arquitetura foi originalmente desenvolvida no início dos anos 90 para avançar na configuração e no desempenho do número crescente de dispositivos adicionais de PC, para fornecer também a funcionalidade Plug-And-Play (para eliminar processos de configuração explícitos e inadequados e alocar recursos periféricos automaticamente)

Cada dispositivo periférico precisa de meios para se comunicar com a CPU, para transferir dados para frente e para trás. Assim, a arquitetura PCI fornece o espaço de acesso de E / S herdado (uma forma ultrapassada de comunicação periférica na arquitetura X86, que é cada vez menos utilizada atualmente) e um espaço MEMORY-MAPPED, que fornece acesso e troca de dados muito mais rápidos. Obviamente, se alguma janela de comunicação é mapeada para o espaço de memória comum, ela é excluída da área de endereço da RAM regular. Embora esse esquema de alocação de recursos seja flexível, há algumas restrições arquitetônicas (acredito também no nível do sistema operacional) sobre como decodificar e mapear esse espaço, portanto, uma parte da memória superior é "reservada".

    
por 12.11.2016 / 19:32