Ich frage mich, wofür KEEPINMEM (ab V7R1) denn nun wieder gut sein soll.
Damit wird das normale Paging der AS/400 doch vollkommen unterlaufen.
Per SETOBJACC konnte ich hier auch schon entsprechend steuernd eingreifen, was aber insgesamt überhaupt nichts gebraucht hat.
Für den Moment wo ein Zugriff erfolgt werden dann jede Menge andere Seiten aus dem Pool verdrängt um eben für dieses Objekt Platz zu schaffen.
Während SETOBJACC für alle Zugriffsarten gilt, wird (laut Doku) KEEPINMEM nur von der SQE verwendet. Native-IO scheidet da also aus.
Mittels MEMORY_POOL_PREFERENCE kann ich zwar einen eigenen Pool angeben, garantiert ist dieser nicht und die SQE kann sich (laut Doku) auch anders entscheiden.
Wie lange werden die Seiten dann im Speicher vorgehalten?
Werden sie durch normales Paging wieder verdrängt?

Ich habe gelernt, dass die Seiten, die am häufigsten verwendet werden am seltensten verdrängt werden.
Wird also auf bestimmte Dateien (oder auch Programme) sehr häufig zugegriffen sind diese sowieso eher speicherresident.