daniel: Ich bin ganz ruhig und wollte eigentlich gar nichts mehr schreiben. ![]()
Aber weil Gerriet gefragt hat:
Gerriet: Das Problem ist sicherlich nicht das "Vermutungsprinzip" von Windows und auch die Dlls verursachen an sich, wenn alles korrekt gebaut wird, keine OOMs, bloß weil sie geladen werden. Das Problem liegt vermutlich an dem ziemlich kranken Speichermanagment von FSX und AddOn-Herstellern, die Ihre Hausaufgaben nicht gemacht haben. Vermutlich schreibe ich deshalb, weil ich den Prorammcode nicht kenne.
Also, wenn nun ein Flieger geladen wird, muss dafür Speicher angefordert werden, Texturen, Daten (zb: FMC, Navdaten etc) müssen ja irgendwo hin. Das lässt sich natürlich nicht vermeiden. Wenn jetzt ein anderer Flieger geladen wird, wird der für den vorhergehenden Flieger allokierte Speicher aber nicht komplett freigegeben. Entweder, weil der Entwickler das vergessen hat, oder weil der Speicher fragmentiert. Nach und nach sieht der Speicher aus wie ein Schweizer Käse und obwohl eigentlich noch genug Speicher zur Verfügung steht, kann eine Speicher-Anforderung nicht bedient werden, weil es keinen zusammenhängende Block der benötigten Größe mehr gibt. Peng OOM. Du kannst dazu einen ersten Einstieg in das Thema, wie immer ;), bei Wikipedia finden. https://de.wikipedia.org/wiki/Virtuelle_Speicherverwaltung speziell Abschnitt Speicherfragmentierung.
Rainer hat deshalb insofern absolut recht, wenn er meint, dass man, wenn man den Flieger wechselt, den Flusi neu starten sollte. Denn ich zitiere "Virtuelles Speichermanagement bietet jedem startenden Programm einen immer gleichen, unfragmentierten Speicherraum." Also nach Neustart des Flusis ist alles aufgeräumt und jungfräulich.
Ich hoffe, das hilft ein wenig.