f



not enough memory :-(

 From time to time, my system seems to eat up all the memory.
In this moment, for instance, if I try to open even a simple command 
window, it fails saying that there is non enough memory available :-(



Shmemmon says: Available:   715 256Kb blocks =  178.8 Mb

I had theseus already open, just in case, and the output of the linear 
memory map page is posted at http://tinyurl.com/2w62pj(It is too long to 
be posted here)

I am unable to interpret it. Is anyone able to tell me what is going 
wrong? Is there any other check that I could do?

thanks

Piersante
0
piesse
8/25/2007 8:47:43 PM
comp.os.os2.misc 2779 articles. 0 followers. Post Follow

19 Replies
208 Views

Similar Articles

[PageSpeed] 33

The correct link is http://tinyurl.com/2w62pj

Also, the problem only apply to the opening of new windows/programs.
Programs which are already open when the problem surface continue 
running: firefox, for instance, is still able to load huge pages...

Thank yo anyone able to help!

Piersante

piesse wrote:
> 
> I had theseus already open, just in case, and the output of the linear 
> memory map page is posted at http://tinyurl.com/2w62pj(It is too long to 
> be posted here)
0
piesse
8/25/2007 9:25:19 PM
piesse wrote:
> The correct link is http://tinyurl.com/2w62pj
> 
> Also, the problem only apply to the opening of new windows/programs.
> Programs which are already open when the problem surface continue 
> running: firefox, for instance, is still able to load huge pages...
> 
> Thank yo anyone able to help!
> 
> Piersante
> 
> piesse wrote:
>>
>> I had theseus already open, just in case, and the output of the linear 
>> memory map page is posted at http://tinyurl.com/2w62pj(It is too long 
>> to be posted here)

You'd be better off posting ram usage by process. The problem is that 
OS/2 only has 512 MBs available by process and DLLs load into one 512 MB 
space. The system uses some of this so you only have 300-400 MBs per 
process. One thing that might help if you are running 4.5 or newer is to 
use one of Peters builds of Firefox/Seamonkey available here, 
http://pmw-warpzilla.sf.net/.
Dave
0
Dave
8/25/2007 10:04:42 PM
Dave Yeo wrote:
> 
> You'd be better off posting ram usage by process. The problem is that 

here it is:
http://tinyurl.com/2f8a8b


> OS/2 only has 512 MBs available by process and DLLs load into one 512 MB 
> space. The system uses some of this so you only have 300-400 MBs per 
> process. One thing that might help if you are running 4.5 or newer is to 
> use one of Peters builds of Firefox/Seamonkey available here, 
> http://pmw-warpzilla.sf.net/.

I already use them

Thanks,
Piersante

0
piesse
8/25/2007 10:17:13 PM
piesse wrote:
> Dave Yeo wrote:
>>
>> You'd be better off posting ram usage by process. The problem is that 
> 
> here it is:
> http://tinyurl.com/2f8a8b
> 
> 
>> OS/2 only has 512 MBs available by process and DLLs load into one 512 
>> MB space. The system uses some of this so you only have 300-400 MBs 
>> per process. One thing that might help if you are running 4.5 or newer 
>> is to use one of Peters builds of Firefox/Seamonkey available here, 
>> http://pmw-warpzilla.sf.net/.
> 
> I already use them
> 
> Thanks,
> Piersante
> 
What is your virtualaddresslimit set to?  It should be >= 1536 
(defaults to 1024 if not present in config.sys which should be fine). 
  If it is greater than 1536 then I would suggest lowering it.  The 
only two things I can really tell myself from your Theseus report is 
that you are using high memory for your Mozilla programs, and that 
(while I don't believe it to be your problem) Norman is using a lot of 
memory (not quite 200M total in all its processes).
Andy

0
Andy
8/26/2007 5:34:52 PM
Andy Willis wrote:
> What is your virtualaddresslimit set to?  It should be >= 1536 (defaults 

it is not set, si it should be the default


> to 1024 if not present in config.sys which should be fine).  If it is 
> greater than 1536 then I would suggest lowering it.  The only two things 
> I can really tell myself from your Theseus report is that you are using 
> high memory for your Mozilla programs, and that (while I don't believe 
> it to be your problem) Norman is using a lot of memory (not quite 200M 
> total in all its processes).

I see in my linear map this line:

"There is 0.000M between the private and shared arenas."

Is that an indication that some program (Norman?) has a memory leak?
thanks
Piersante
0
piesse
8/27/2007 9:14:06 AM
In <5jbim5F3tm026U1@mid.individual.net>, on 08/25/2007
   at 10:47 PM, piesse <piesse@despammed.com> said:

Hi,

>I had theseus already open, just in case, and the output of the linear 
>memory map page is posted at http://tinyurl.com/2w62pj(It is too long to 
>be posted here)

You have not run out of address space.  There's free space available, but
the lower shared areaa boundary has moved unusually low and the lower
shared arena is somewhat fragmented.

What the Linear Memory map says is that your system is pretty busy and
that Mozilla has chewed up quite a bit of private address space.

While you may not have run out of address space, you might have run out of
some limited resource that is responsible for keep track of memory
objects.  This is something I don't know how to determine directly from
Theseus.  I guess one could post-processing the Linear memory map and get
an estimate.

If shutting down the running apps and restarting them resolves your
problem, there's probably nothing wrong with the data structures that are
managing memory.  If not, then you need to look at what's still using
memory after you shutdown everything you can.  One of these might have a
leak of some sort.

One needs to keep in mind that much of the kernel internals are still
16-bit and the many of the internal ids used to keep track of things are
limited to 65K unique items.  This was a lot back in the early 90's when a
typical system had a lot less physical memory.  The inevitable swapping
limited the number of apps one would attempt to run concurrently.  It easy
to imagine running out of available memory object ids on today's systems
with a couple GB of physical RAM.

Steven

-- 
--------------------------------------------------------------------------------------------
Steven Levine <steve53@earthlink.bogus.net>  MR2/ICE 3.00 beta 08pre #10183
eCS/Warp/DIY/14.103a_W4 www.scoug.com irc.ca.webbnet.info #scoug (Wed 7pm PST)
--------------------------------------------------------------------------------------------

0
Steven
8/27/2007 3:54:51 PM
Andy Willis wrote:
> piesse wrote:
>> Dave Yeo wrote:
>>>
>>> You'd be better off posting ram usage by process. The problem is that 
>>
>> here it is:
>> http://tinyurl.com/2f8a8b
>>
>>
>>> OS/2 only has 512 MBs available by process and DLLs load into one 512 
>>> MB space. The system uses some of this so you only have 300-400 MBs 
>>> per process. One thing that might help if you are running 4.5 or 
>>> newer is to use one of Peters builds of Firefox/Seamonkey available 
>>> here, http://pmw-warpzilla.sf.net/.
>>
>> I already use them
>>
>> Thanks,
>> Piersante
>>
> What is your virtualaddresslimit set to?  It should be >= 1536 (defaults 
> to 1024 if not present in config.sys which should be fine).  If it is 
> greater than 1536 then I would suggest lowering it.  The only two things 
> I can really tell myself from your Theseus report is that you are using 
> high memory for your Mozilla programs, and that (while I don't believe 
> it to be your problem) Norman is using a lot of memory (not quite 200M 
> total in all its processes).
> Andy
> 
Correction... meant less than or equal to, not greather than or equal to.
Andy

0
Andy
8/27/2007 5:12:24 PM
On Sat, 25 Aug 2007 20:47:43 UTC, piesse <piesse@despammed.com> wrote:

>  From time to time, my system seems to eat up all the memory.
> In this moment, for instance, if I try to open even a simple command 
> window, it fails saying that there is non enough memory available :-(
> 
> 
> 
> Shmemmon says: Available:   715 256Kb blocks =  178.8 Mb
> 
> I had theseus already open, just in case, and the output of the linear 
> memory map page is posted at http://tinyurl.com/2w62pj(It is too long to 
> be posted here)
> 
> I am unable to interpret it. Is anyone able to tell me what is going 
> wrong? Is there any other check that I could do?
> 
> thanks
> 
> Piersante

Just a WAG, but try adding:
dllbasing=off
near the top of your CONFIG.SYS.

Hope this helps...
-- 
From the eComStation 1.2 of Doug Bissett
dougb007 at telus dot net
(Please make the obvious changes, to e-mail me)

0
Doug
8/27/2007 10:47:54 PM
Doug Bissett wrote:

> 
> Just a WAG, but try adding:
> dllbasing=off
> near the top of your CONFIG.SYS.

I have it already

It just seems that the good old efficient memory management of os/2 
cannot cope anymore with the memory requests of current applications 
(or, seen the other way around, that current applications are not 
dealing efficiently with it).

Running out of resources while still having >200M of free RAM is 
disappointing.

Which is a pity.

To me, this is the more critical aspect of os/2-eCS nowadays (not having 
a current java in sight being the second).

Of course, we are used to live with some difficulties. But it starts to 
be disturbing.

thanks
Piersante
0
piesse
8/27/2007 11:20:07 PM
On Mon, 27 Aug 2007 23:20:07 UTC, piesse <piesse@despammed.com> wrote:

> Doug Bissett wrote:
> 
> > 
> > Just a WAG, but try adding:
> > dllbasing=off
> > near the top of your CONFIG.SYS.
> 
> I have it already
> 
> It just seems that the good old efficient memory management of os/2 
> cannot cope anymore with the memory requests of current applications 
> (or, seen the other way around, that current applications are not 
> dealing efficiently with it).
> 
> Running out of resources while still having >200M of free RAM is 
> disappointing.
> 
> Which is a pity.
> 
> To me, this is the more critical aspect of os/2-eCS nowadays (not having 
> a current java in sight being the second).
> 
> Of course, we are used to live with some difficulties. But it starts to 
> be disturbing.
> 
> thanks
> Piersante

You are, probably, running out of "shared memory space".  With later 
versions of OS/2, (at least the MCP based versions, with later 
kernels), there is a second shared memory space, in high memory. That 
is only usable by programs that are programmed to use it, and some of 
them (such as the FAT32 driver) need to be told to use that, rather 
than the low memory space. If you GOOGLE, you should find a number of 
posts on the subject, with many suggestions as to what to do to work 
around the problem.

Hope this helps...
-- 
From the eComStation 1.2 of Doug Bissett
dougb007 at telus dot net
(Please make the obvious changes, to e-mail me)

0
Doug
8/28/2007 7:56:11 PM
piesse wrote:
>  From time to time, my system seems to eat up all the memory.
> In this moment, for instance, if I try to open even a simple command 
> window, it fails saying that there is non enough memory available :-(

As you will know from my recent VOICE articles this applies to virtual 
address space. Not physical memory.

> Shmemmon says: Available:   715 256Kb blocks =  178.8 Mb
Shmemmom measures the free virtual memory blocks of at least 256Kb in 
the lower shared arena.

Usage: shmemmon interval  [logfile  [maxsize]]
Parameters:  interval    Time between samples in minutes
              logfile     Path and filename for logfile
              maxsize     Maximum size of logfile in Kb

When it measured the free 1MB blocks needed to load in virtual memory 
the memory needs of large (1 MB) DLLs, shmemmom would be more pessimistic.

Theseus mentions that the free pool of memory (the pool of virtual 
memory space once meant to load new memory objects in) has gone.

095A0000                                            x (<- moved)
095B0000 


There is 0.000M between the private and shared arenas.
Shared arena starts at 095A0000, which is 149.625M.
  Free memory from 095A0000 for 102.313M, which is equivalent to 1637 
64K spaces.
0FBF0000 
..w.....w....w.ww...w.ww.wwwwwwwwwwwwwwwwwww..www.w.w.wwwwwwwwwwwwwwwwwwwwowww 
    713  PMMERGE  allocated it
  object is 2.813M

If a new memory object is to be loaded in the shared arena (open a new 
program), the loader has to find some hole elsewhere.

Scanning the theseus ouput for "Free memory from" shows that you do have 
large unfragmented (virtual memory) areas (45M, 17M) satisfying the 
memory needs of even much larger applications than CMD:

  Free memory from 10AE0000 for 42.500M, which is equivalent to 680 64K 
spaces.
13560000 
..w.....w....w.ww...w.ww.wwwwwwwwwwwwwwwwwww..www.w.w.wwwwwwwwwwwwwwwwwwwwwwww 
    123  PMMERGE  allocated it
  object is 512K
  Free memory from 135E0000 for 17.000M, which is equivalent to 272 64K 
spaces.
146E0000 
..........................................................o................... 
      1  XSERVER  #0004 (shared data)
  Free memory from 146F0000 for 64K.

This kind of fragmentation in the virtual memory address space cannot 
explain why you cannot load a new cmd.

There must be some other resource running "out of memory" unless the 
OS/2 loader is very picky about virtual address spaces to load cmd 
related files (which is not my experience).

In the OS/2 2.0 memory model it could not be low private virtual memory, 
as this can be given for free (only the largest low private memory 
consumer can do harm. But a new cmd.exe should be tiny unlike java.exe).


> I had theseus already open, just in case, and the output of the linear 
> memory map page is posted at http://tinyurl.com/2w62pj(It is too long to 
> be posted here)

This was a good idea.

> I am unable to interpret it. Is anyone able to tell me what is going 
> wrong? Is there any other check that I could do?
> 
> thanks
> 
> Piersante

After reverse engineering (looking queer) the list of running 
applications, I have to conclude that you ask a lot of OS/2. I wonder if 
you could achieve this- with the same hardware - also under Windows 
(little change) or Linux (likely, but slow).

You have running many servers ftpd, httpd, squid, weasel, major, ncsa_au 
and wksta. You forgot ffsd, syslogd, mysql and smb (;-)
And did not disable RUN=F:\OS2\SMSTART.EXE (do you need it?)

Now you are running on a dedicated server without OS/2 firewall (i 
suppose because of lack of ffsd and syslogd) Mozilla and Thunderbird. 
How long has your server been up?

On my Linux (SuSE)LAN server I use a crown script to reload the smbd, 
nmbd and xinetd (used by imap) hourly to prevent smb and imap users 
complaining.

I use in etc/crown/hourly

#! /bin/bash
/etc/init.d/xinetd restart
/etc/init.d/smb restart
/etc/init.d/nmb restart
exit


So I agree with the answer of Steven Levine, stating that - though the 
shared arean is somewhat fragmented - another source must have been out 
of memory preventing the cmd.exe to load. Maybe a 16 bit kernel source 
may be out of memory.

Anyway, shutting down and reloading MOzilla and some other servers (like 
i needed under Linux) at regular intervals might help you.


Sjoerd Visser

0
Sjoerd
9/5/2007 9:46:03 PM
piesse schrieb:
> Andy Willis wrote:
>> What is your virtualaddresslimit set to?  It should be >= 1536 (defaults 
> 
> it is not set, si it should be the default
> 
> 
>> to 1024 if not present in config.sys which should be fine).  If it is 
>> greater than 1536 then I would suggest lowering it.  The only two 
>> things I can really tell myself from your Theseus report is that you 
>> are using high memory for your Mozilla programs, and that (while I 
>> don't believe it to be your problem) Norman is using a lot of memory 
>> (not quite 200M total in all its processes).
> 
> I see in my linear map this line:
> 
> "There is 0.000M between the private and shared arenas."
> 
> Is that an indication that some program (Norman?) has a memory leak?
> thanks
> Piersante

True, Mozilla makes the private memory arena hit the shared memory arena 
in the low memory region (< 512 MB). On the other hand, it still has 
room and uses private memory arena in the high memory region (>512 MB).
Your linear address map also reports 72 MB of free shared memory in the 
low memory region which is enough (and plenty of free shared memory 
space in the high memory region but this only helps if DLLs are enabled 
to load into the high memory region).
None of your processes seem to take an extraordinary amount of memory 
(example: your Mozilla takes 149 MB of private memory address space in 
the low memory region, here, Seamonkey takes 576 MB of private memory 
address space !).

As I can tell from the end of your address range (0xC0000000 = 3072 MB) 
you are using VIRTUALADDRESSLIMIT=3072.
The problem is that this decreases the system memory arena (memory 
address range that can only be used by the system and that starts at 
VIRTUALADDRESSLIMIT). System memory is used for things like video 
aperture, PCI address space, device driver code and data segments, OS 
internal data structures etc.
If the system cannot allocate system memory things like you are 
describing can happen: impossible to start new processes etc.
Try decreasing VIRTUALADDRESSLIMIT to let's say 2048 and see if it helps.
Also set DLLBASING=OFF (without the SET statement !) in config.sys as 
you seem to have big memory holes between the loaded DLLs which could 
indicate that they load on their hardcoded base addresses (which however 
is unnecessary and only gives a minimal performance benefit when they 
are initially loaded into memory).

Finally, you can mark code and data segments of DLLs to load in high 
memory address space rather than in low memory address space (use the 
tool exehdr.exe and run it with the /HIGHMEM parameter against the 
DLLs). However that might lead to problems, so have a backup handy. The 
DLLs that are good candidates are those that are listed in your shared 
address space in low memory region (<512 MB), in particular, all DLLs 
that come with Mozilla.

Note: using address space is not equal to using that much memory. You 
can allocate address space without also allocating (committing memory). 
Lacking memory is prevented/recovered by swapping, lacking address space 
is fatal.



Lars
0
Lars
9/6/2007 7:36:21 PM
Lars Erdmann wrote:
> As I can tell from the end of your address range (0xC0000000 = 3072 MB) 
> you are using VIRTUALADDRESSLIMIT=3072.


Actually no, or at least VIRTUALLADDRESSLIMIT is currently unset (it 
doesn't occur in Config.sys or in the output of a SET command)

> Also set DLLBASING=OFF (without the SET statement !) in config.sys as 
> you seem to have big memory holes between the loaded DLLs which could 

Thanks, I will try this
> 
> Finally, you can mark code and data segments of DLLs to load in high 
> memory address space rather than in low memory address space (use the 
> tool exehdr.exe and run it with the /HIGHMEM parameter against the 
> DLLs). However that might lead to problems, so have a backup handy. The 
> DLLs that are good candidates are those that are listed in your shared 
> address space in low memory region (<512 MB), in particular, all DLLs 
> that come with Mozilla.

Maybe I will try it later, although in effect the problem has occurred 
once more and was only cured by shutting down both Mozilla and 
Thunderbird (mozilla alone wasn't sufficient.
I must probably have to care not to live them open for too long.


> 
> Note: using address space is not equal to using that much memory. You 
> can allocate address space without also allocating (committing memory). 

thanks for all your help!

Piersante
0
piesse
9/10/2007 8:25:41 AM
Sjoerd Visser wrote:
> After reverse engineering (looking queer) the list of running 
> applications, I have to conclude that you ask a lot of OS/2. I wonder if 
> you could achieve this- with the same hardware - also under Windows 
> (little change) or Linux (likely, but slow).


This is exactly why I use os/2 ;-)

> 
> You have running many servers ftpd, httpd, squid, weasel, major, ncsa_au 
> and wksta. You forgot ffsd, syslogd, mysql and smb (;-)

Actually, mysql is usually there, but it was down for some reason.

> And did not disable RUN=F:\OS2\SMSTART.EXE (do you need it?)

I don't even know what it is, except that it takes care of  Ffst.exe 
Erlogger.exe Dmisl.exe remoterr.exe

> 
> Now you are running on a dedicated server without OS/2 firewall (i 
> suppose because of lack of ffsd and syslogd) Mozilla and Thunderbird. 
> How long has your server been up?

In the good old times it used to stay up until ibm released a new 
fixpack and I had to reboot :-)
Now it freezes from time to time.


> 
> Anyway, shutting down and reloading MOzilla and some other servers (like 
> i needed under Linux) at regular intervals might help you.
> 

I have found that I must close both Mozilla and Thunderbird to recover 
space between the private and shared arenas

Thanks a lot!
Piersante
0
piesse
9/10/2007 8:47:11 AM
On Mon, 10 Sep 2007 10:47:11 +0200, piesse wrote:

>> After reverse engineering (looking queer) the list of running
>> applications, I have to conclude that you ask a lot of OS/2. I wonder
>> if you could achieve this- with the same hardware - also under Windows
>> (little change) or Linux (likely, but slow).
> 
> 
> This is exactly why I use os/2 ;-)

If running the two big 'DEs' I'd agree, but on older hardware a lighter 
Linux desktop environment might be faster. XFce is pretty good and 
improving all the time and I know some people who prefer it over Gnome 
and KDE, even on newer hardware.

Wayne
-- 
Registered Linux user #375994
http://www.geocities.jp/rondonko/
0
Wayne
9/10/2007 9:29:31 AM
piesse wrote:
> Sjoerd Visser wrote:
>> After reverse engineering (looking queer) the list of running 
>> applications, I have to conclude that you ask a lot of OS/2. I wonder 
>> if you could achieve this- with the same hardware - also under Windows 
>> (little change) or Linux (likely, but slow).
> 
> 
> This is exactly why I use os/2 ;-)
> 

Exactly.
-- 
Posted with OS/2 Warp 4.52
and Sea Monkey 1.5a
0
David
9/10/2007 3:24:59 PM
On Mon, 10 Sep 2007 08:25:41 UTC in comp.os.os2.misc, piesse 
<piesse@despammed.com> wrote:

> Actually no, or at least VIRTUALLADDRESSLIMIT is currently unset (it 
> doesn't occur in Config.sys or in the output of a SET command)

It wouldn't be listed in the output of SET as it is not a SET command. You just 
specify VIRTUALADDRESSLIMIT= not SET VIRTUALADDRESSLIMIT=


-- 
Trevor Hemsley, Brighton, UK
Trevor dot Hemsley at ntlworld dot com
0
Trevor
9/10/2007 5:25:37 PM
Trevor Hemsley wrote:
> 
> It wouldn't be listed in the output of SET as it is not a SET command. You just 
> specify VIRTUALADDRESSLIMIT= not SET VIRTUALADDRESSLIMIT=
> 
ahah, you are right, it was there! There was a REM note saying that I 
had set it because of apache (that was probably with the early v.2 releases)

I have no idea why grep failed to spot it (probably a mistyping)
I changed it and will see

thanks!

Piersante

0
piesse
9/10/2007 11:05:08 PM
Here in comp.os.os2.misc, Wayne <rondonjin@yahoo.com> spake unto us, saying:

>On Mon, 10 Sep 2007 10:47:11 +0200, piesse wrote:
>
>>> After reverse engineering (looking queer) the list of running
>>> applications, I have to conclude that you ask a lot of OS/2. I wonder
>>> if you could achieve this- with the same hardware - also under Windows
>>> (little change) or Linux (likely, but slow).
>> 
>> This is exactly why I use os/2 ;-)
>
>If running the two big 'DEs' I'd agree, but on older hardware a lighter 
>Linux desktop environment might be faster. XFce is pretty good and 
>improving all the time and I know some people who prefer it over Gnome 
>and KDE, even on newer hardware.

Even smaller LiveCD distros like Puppy and DSL are slower than OS/2 on
old enough hardware.  With newer hardware both are probably lightning
fast, but you can see a difference on a PPro.  :-)

-- 
 -Rich Steiner >>>---> http://www.visi.com/~rsteiner >>>---> Mableton, GA USA
    Mainframe/Unix bit twiddler by day, OS/2+Linux+DOS hobbyist by night.
       WARNING: I've seen FIELDATA FORTRAN V and I know how to use it!
                   The Theorem Theorem: If If, Then Then.
0
rsteiner
9/11/2007 12:35:45 AM
Reply: