More on ramtrap

We ran an experiment. We left the ramtrap in (on a Compaq with 64MB of RAM
in it), and ran ‘sin info’. The
output we got was:
Memory
48427k/66711k

Virtual
1982M/2042M

This was good, because it detected all of RAM. We took the ramtrap out, and
after booting up ran ‘sin info’ again. This is what we got:
Memory
50393k/66711k

Virtual
14M/ 75M

This is also good, because again it detected all of RAM (strange that we are
now using a little bit more of it though). However, the virtual RAM went
way down. I could swear I had read that QNX does not use virtual RAM, so I
don’t know why sin is reporting Virtual.

In any case, we ran ramtrap again, this time from the command line, and we
got the same results as when we first left it in:
Memory
48427k/66711k

Virtual
1982M/2042M

I am starting to think that we can leave out ramtrap, even in our Compaq
computers, but I am just a little worried about this virtual thing. Any
comments?

David de Leon
Command Alkon Corp.

Previously, David de Leon wrote in qdn.public.qnx4:
[…]

I am starting to think that we can leave out ramtrap, even in our Compaq
computers, but I am just a little worried about this virtual thing. Any
comments?

QNX4 does use virtual memory, but not the way you are thinking of
it.

As far as most apps know, the code and data memory segments they use is
in one contiguous chunk. However, the physical memory apps use is usually
fragmented into a bunch of disconnected physical pages that are mapped
via various descriptor tables. The OS manages the descriptor tables, thus
applications are presented with a virtual image of memory that is
different from the physical reality.

QNX4 does not demand swap memory pages to and from disk, however.

I have the problem with the Virtual memory because it is limited to 4GB.
Though you have huge physical memory, like I do with 1GB, and have many
processes running in the same machine sharing huge table in shared memory,
you will run out of Virtual but not physical memory.

“Ken Schumm” <kwschumm@qsolv.com> wrote in message
news:Voyager.010823085839.1332A@dilbert…

Previously, David de Leon wrote in qdn.public.qnx4:
[…]

I am starting to think that we can leave out ramtrap, even in our Compaq
computers, but I am just a little worried about this virtual thing. Any
comments?


QNX4 does use virtual memory, but not the way you are thinking of
it.

As far as most apps know, the code and data memory segments they use is
in one contiguous chunk. However, the physical memory apps use is usually
fragmented into a bunch of disconnected physical pages that are mapped
via various descriptor tables. The OS manages the descriptor tables, thus
applications are presented with a virtual image of memory that is
different from the physical reality.

QNX4 does not demand swap memory pages to and from disk, however.

Previously, Johannes wrote in qdn.public.qnx4:

I have the problem with the Virtual memory because it is limited to 4GB.
Though you have huge physical memory, like I do with 1GB, and have many
processes running in the same machine sharing huge table in shared memory,
you will run out of Virtual but not physical memory.

I haven’t tried it, but there is a -S option to Proc32 that looks like
it will allow you to increase the gdt and ldt table sizes.