Ich entwickle gerade ein Spiel unter FreeBSD. Ich kompiliere es mit clang
als 32-Bit-Binärdatei und läuft es unter einem 64-Bit-System (ich habe 32 GB RAM unter diesem System), aber ich brauche von ihm mehr als 4 GB RAM zu verwenden, da es nur 4 GB verwendet.
Auch wenn ich mehrere Instanzen des Spiels ausführen, kann es nicht auf mehr als 4 GB RAM zugreifen.Erlaube 32-Bit-Anwendung mehr als 4 GB RAM unter FreeBSD zu verwenden
Ich habe auch versucht, es unter 64-Bit-System zu kompilieren, aber es hat ein seltsames Verhalten. Ich bekomme viele Bugs.
Ich weiß, dass Visual Studio unter Windows gibt es eine Option /LARGEADDRESSAWARE
, oder so etwas, die 32-Bit-Anwendung in der Lage, mehr RAM zu verwenden, oder ich bin falsch?
Gibt es irgendwelche Flags, die ich angeben kann (wie die Windows), damit meine Binärdatei mehr RAM verwenden kann? Ich habe etwas über mcmodel=large
(oder medium
) gelesen, aber ich bin mir nicht sicher, dass das ist, was ich suche.
Wie wäre es mit Cross-Compiling? Weiß jemand, wo ich ein paar gute Informationen darüber finden kann?
Vielen Dank.
2^32/4GB == 1 –
"Ich habe auch versucht, es unter 64-Bit-System zu kompilieren, aber es hat ein seltsames Verhalten. Ich bekomme eine Menge Fehler." - Sie werden diese Fehler dann beheben wollen. Wenn Sie konkrete Probleme haben, die Sie selbst nicht lösen können, könnte das eine gute Frage sein. Das gilt auch für Windows: '/ LARGEADDRESSAWARE' lässt Ihre Anwendung auch nicht mehr als 4GB adressieren. – hvd
Suchen Sie in Speicherabbilddateien. – nwp