Manuelle LDR_CNTRL=MAXDATA-Werte (nur 32 Bit)
Verwenden Sie die Umgebungsvariable LDR_CNTRL=MAXDATA, um Speicher zu ermöglichen, die anders aufgebaut sind als bei den automatischen Einstellungen.
Hierbei ist beispielsweise die Einstellung MAXDATA=0 interessant:
| Segmentierung | Inhalt |
|---|---|
| 0 | AIX® -Kernel |
| 1 | Java™ -Programm |
| 2 | Ursprünglicher Stack (Thread-Stack des Hauptprogramms) und nativer Heapspeicher |
| 3-C | Einem Speicher zugeordneter Bereich (mmap/shmat) |
| D | Code gemeinsam genutzter Bibliotheken |
| E | Einem Speicher zugeordneter Bereich (mmap/shmat) |
| F | Daten gemeinsam genutzter Bibliotheken |
Die Einstellung von MAXDATA=0 wirkt sich wie folgt auf die Verwendung der Segmente aus:
- Segment 2 wird für den Stack des Anwendungsprogramms und für den nativen Heapspeicher verwendet.
- Der Java-Heapspeicher wird im zusammenhängenden Speicherbereich in Segment 3 und höheren Segmenten zugeordnet. Dies bedeutet, dass ein Java-Heapspeicher mit einer Größe von maximal 256 MB nur Segment 3 verwendet. Ein Java-Heapspeicher mit mehr als 256 MB verwendet die Segmente 3, 4, ... Bei Bedarf bis zu einer maximalen Größe von 2.5 GB mit allen 3-C-Instanzen.
- Segment D wurde vom Betriebssystem bereits für den gemeinsam genutzten Bibliothekscode zugeordnet. Segment F wird für Daten der gemeinsam genutzten Bibliothek verwendet. Die JVM und JIT sind meist in den gemeinsam genutzten Bibliotheken enthalten, die in diese Segmente geladen werden.