En tant que projet de Master, je conçois un système d'exploitation simple. Il est conçu pour fonctionner en mode réel 16 bits sur une architecture x86. Idéalement, je voudrais développer ce système d'exploitation en C ++, et n'utiliser l'assemblage que si nécessaire. Jusqu'à présent, j'ai un chargeur de démarrage écrit en assembleur, qui charge un noyau qui est un mélange de C ++ et asm. Ma question concerne l'utilisation de C ++. Pour l'instant, il a compilé et peut fonctionner, mais je n'ai utilisé aucune allocation de mémoire dynamique.
Si j'utilisais C, il serait logique d'écrire des fonctions malloc qui géreraient l'allocation de mémoire, mais en C ++ le nouveau mot-clé est utilisé. Donc...
Comment le «nouveau» fonctionne-t-il en arrière-plan pour allouer de la mémoire et comment pourrais-je gérer cela?
Et en corollaire ...
Est-il judicieux d'essayer d'utiliser C ++ pour tirer parti de ses abstactions de niveau supérieur? Ou serait-ce plus un mal de tête de l'utiliser et devrais-je m'en tenir à C?
Veuillez fournir une justification si vous pensez que le C ++ ne serait pas un bon choix.