Executando verificação de segurança...
4

"Erro de Memória no GRUB: Desenvolvendo um SO em Assembly, C++ e outras linguagens"

O Projeto: Um SO Híbrido e Poliglota

Estou desenvolvendo um sistema operacional do zero que utiliza uma arquitetura de build complexa. O objetivo é integrar a performance bruta do Assembly com a flexibilidade do C/C++, tudo orquestrado por scripts em Shell e um Makefile robusto. Além dessas linguagens, o projeto já conta com outras tecnologias que ainda não anunciei publicamente, mas que expandem as capacidades do kernel.
O Obstáculo: "error: out of memory"

Recentemente, ao tentar dar o boot via GRUB, me deparei com um erro persistente que impede o carregamento:

error: out of memory error: you need to load the kernel first

O erro acontece logo após o menu do bootloader, sugerindo que o GRUB não está conseguindo alocar o espaço necessário para o binário do kernel ou não está reconhecendo o Multiboot Header devido ao alinhamento de memória gerado pelo linker.
Detalhes do Ambiente

Linguagens: Assembly (NASM/GAS), C/C++, Shell, Makefile e [Confidencial].

Bootloader: GRUB.

Hardware de desenvolvimento: Setup de alta performance (incluindo uma RTX 5090i para futuras implementações de GPGPU no kernel).

Sintoma: O binário é gerado sem erros de compilação, mas falha na alocação de memória no estágio de boot.

O que já foi verificado

Já revisei as flags básicas do compilador, mas suspeito que o problema resida no script do Linker (linker.ld) ou na forma como o Makefile está organizando as seções .text e .data.

Alguém aqui já lidou com esse erro específico do GRUB em kernels que misturam muitas linguagens e seções de memória customizadas? Toda sugestão sobre alinhamento de página ou estruturação do Multiboot é bem-vinda!

Carregando publicação patrocinada...