[comp.sys.sgi] Arena data gone between shows !

karron@KARRON.MED.NYU.EDU (11/08/90)

I am allocating an arena, and each program that uses it checks the value
in usgetdata(). If it is zero, then assume that the arena is a virgin,
and the first thing that any of the programs do is setup a directory
of addresses for data structures inside the arena, and then uscalloc()
the data structures.

I find that if all of the programs associated with an arena terminate, then
the data inside the arena is corrupted, deleted, or somthing, but the
value in usgetdata() is untouched.

If I do an od of the data, I can see the strings that my programs left
behind, but something is wrong from the programs point of view.

I would like an arena to preserve its state between programs. Is that possible ?

An additional note: Is there anyway to identify arenas as special files ?
The file commands does not recognize then. I have not tried workspace default
sgi rules. Are they tagged ? Since I don't want to delete old arenas, is there
any way to clean them out if they are not touched for a day or so ? I know
that they don't use up disk space, but they do use up more valuable core.

+-----------------------------------------------------------------------------+
| karron@nyu.edu (mail alias that will always find me)                        |
|                                         Dan Karron                          |
| . . . . . . . . . . . . . .             New York University Medical Center  |
| 560 First Avenue           \ \    Pager <1> (212) 397 9330                  |
| New York, New York 10016    \**\        <2> 10896   <3> <your-number-here>  |
| (212) 340 5210               \**\__________________________________________ |
| Please Note : Soon to move to dan@karron.med.nyu.edu 128.122.135.3  (Nov 1 )|
+-----------------------------------------------------------------------------+

jwag@moose.asd.sgi.com (Chris Wagner) (11/09/90)

In article <9011072327.AA12206@karron.med.nyu.edu>,
karron@KARRON.MED.NYU.EDU writes:
> 
> I am allocating an arena, and each program that uses it checks the value
> in usgetdata(). If it is zero, then assume that the arena is a virgin,
> and the first thing that any of the programs do is setup a directory
> of addresses for data structures inside the arena, and then uscalloc()
> the data structures.
> 
> I find that if all of the programs associated with an arena terminate, then
> the data inside the arena is corrupted, deleted, or somthing, but the
> value in usgetdata() is untouched.
> 
> If I do an od of the data, I can see the strings that my programs left
> behind, but something is wrong from the programs point of view.
> 
> I would like an arena to preserve its state between programs. Is that
possible ?
> 
> An additional note: Is there anyway to identify arenas as special files ?
> The file commands does not recognize then. I have not tried workspace default
> sgi rules. Are they tagged ? Since I don't want to delete old arenas,
is there
> any way to clean them out if they are not touched for a day or so ? I know
> that they don't use up disk space, but they do use up more valuable core.
> 

The current design is that if upon a usinit it finds that no program
is still attached to the arena it clobbers it - alas it doesn;t
clobber the getinfo/putinfo location.

being able to idnetify them with file(1) is a good idea.
In fact they do use up disk space (as an ls -l) will show.


Chris Wagner