Projeto 12: Aula 12 - O Modelo de Memória
🚀 Laboratório Prático: Aula 12 - O Modelo de Memória
Construa uma simulação lógica ou um roteiro analítico em linguagem C/C++ focado no fenômeno real ocorrido no Hardware baseando-se em:
Você codifica:...
O C++11 emitiu formalmente o seu universal Memory Model definindo através da biblioteca
std::atomico que o Hardware tem permições para Adiantar vs Trancar....Se não tivessemos essa lei
std::atomicno standard oficial do GCC, programávamos via "Gambiarra Intrinseca" de Processador (Ex: Comando Assembler MFENCE ou SFENCE no Intel). Os Fences proíbe...
Tarefas do Projeto
- Setup Inicial: Alocar perfeitamente os arquivos como
main.cppem sua IDE configurando compilador GCC/Clang. - Módulo 1: Implementar, prototipar ou demonstrar funcionalmente 1. A Reordenação do Compilador e CPU (Out-Of-Order Execution) no código.
- Módulo 2: Implementar, prototipar ou demonstrar funcionalmente 2. O Memory Model (Consistências e Barreiras) no código.
- Módulo 3: Implementar, prototipar ou demonstrar funcionalmente 3. Memory Barriers (Fences) nas CPUs no código.
- Validação E Benchmark: Fazer o build via terminal e testar limites de velocidade analiticamente comparando o log de transição.
🏆 Critérios de Qualidade (Review)
- Compila estritamente sem nenhum warning de memory loss ou fallback.
- Adere e representa fielmente 100% à teoria aprendida do Markdown da Aula correspondente.
- Estruturação modular limpa para fácil manutenção.