Jako projekt Master projektuję prosty system operacyjny. Jest przeznaczony do działania w 16-bitowym trybie rzeczywistym na architekturze x86. Idealnie, chciałbym opracować ten system operacyjny w C ++ i tylko w razie potrzeby używać asemblera. Do tej pory mam moduł ładujący napisany w asemblerze, który ładuje jądro będące kombinacją C ++ i asm. Moje pytanie dotyczy używania C ++. Na razie skompilował się i może działać, ale nie korzystałem z dynamicznej alokacji pamięci.
Gdybym używał C, sensowne byłoby pisanie funkcji malloc, które obsługiwałyby alokację pamięci, ale w C ++ używane jest nowe słowo kluczowe. Więc...
Jak działa „nowy” za kulisami, aby przydzielić pamięć i jak bym sobie z tym poradził?
I jako następstwo ...
Czy ma sens próba użycia C ++, aby skorzystać z jego abstakcji na wyższym poziomie? A może używanie bólu byłoby bardziej uciążliwe i czy powinienem trzymać się C?
Podaj uzasadnienie, jeśli uważasz, że C ++ nie byłby dobrym wyborem.