toppin@melpar.UUCP (Doug Toppin) (10/17/89)
We are running IBM Xenix 2 on the 286 with 3-meg of memory and have the following problem: One of our processors has to dedicate 1.7 meg of memory to a memory resident database. There are still about 20 programs to be run all of which are blocked on the network or on message queues. The dedicated database locks itself in memory with 'plock'. Once the other applications are running, any command entered at the shell produces only another shell prompt, the program is not run and no error message appears. All of the processes already running exhibit no unusual behavior, they still work correctly. After about 5-minutes the processor panics or goes away (no longer any keyboard response). The kernel is about 350K which leaves approx 1-meg of core for processes. It appears that memory is being overutilized and swapping is not occurring properly. The remaining applications total about 1.5 meg so there should be enough memory to swap in and out as needed. Has anyone seen similar behavior before? If anyone out there that has the source to the shell could take a look at it and see what it does when a fork or exec fails due to lack of memory and then let me know I would appreciate it. Also, what happens when a fork needs to occur and there is not enough memory? Can fork communicate with the swapper and get more memory? We do not have the option of switching to SCO. We are stuck with IBM. In general, if anyone has ideas on how to localize the problem I'd like to hear from them. thanks Doug Toppin uunet!melpar!toppin