Uebrigens kann man sich shared mem ausgeben lassen: cat /proc/sys/kernel/shmall -> ergibt den momentan genutzten shared mem cat /proc/sys/kernel/shmmax -> ergibt das Maximum echo 67108864 > /proc/sys/kernel/shmmax -> erhoeht (senkt) das Maximum auf 64MB
Das sieht so aus, als könnte es mir weiterhelfen. Werd mich dann gleich mal an die Büchse setzen und ausprobieren.
Auf unserer Unixbüchse (digital True64) funktionierte es nicht. Befehl brachte folgende Meldung: cat: cannot open /proc/sys/kernel/SHMMAX egal ob groß- oder kleinschreibung. Mittels ipcs bekomme ich shared memory und semaphore angezeigt. Aber ich hoffe mal, daß es Digital-Unix nicht unterstützt, was ich mir jedoch nicht so recht vorstellen kann.
Semaphoren werden dynamisch verwaltet, es sind also (AFAIK) 2^31 davon verfuegbar (solange der Speicher fuer die Verwaltung reicht), das sollte auch fuer Informix und andere IPC-hungrige Apps genuegen. Leider gibt es kein SysCtl
Gibt es eine allgemein gültige Formel, wo man sagt, x% vom physischen Speicher oder einfach nur durch ausprobieren?
Das funzt natuerlich nicht, wenn im Kern kein SysV-IPC ist, aber dann wuerden auch viele andere Proggies nicht laufen (und /proc/.../shmmax waere nicht vorhanden).
Also muß ich jetzt doch was am Kernel schrauben. Ich habe seit meiner Installation - einige werden die Stirn runzeln - nichts am Kernel gemacht. Standard-SCSI-Kernel. Wie würden dann die Parameter lauten, die ich verändern müßte?
Cu Thomas
PS.: Warum habe ich mich auf dieses Spiel eingelassen? Warum muß auf diese Kiste unbedingt IDS 7.3? Warum wollte ich unbedingt die Applikation, die Informix benötigt? Warum wird es nachts dunkel? Was hält unsere Welt zusammen? Alle Fragen, auf die ich keine Antworten weiß :-)