Subject: | |
From: | |
Reply To: | |
Date: | Mon, 28 Apr 2003 14:24:59 -0700 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
Bill asks:
> Regarding MPE Large (>4GB) Files, can anyone tell me the relation of the
> file label field 'eof_high_offset' to 'eof_offset'? I'd assumed the
> former was just the higher-order 32 bits of a 64 bit value, but that
> means its value would be zero until a file occupies about 17M sectors.
> I built and began to load a large file and noted that 'eof_high_offset'
> has a value of "1" when the file occupies only 2.6M sectors. Anybody
> know if this field is used in some unique way?
>
> -Bill Miller
Do you mean "HIGH_EOF_OFFSET"?
That is just the high 32 bits of the 64 bit eof offset. The eof_offset contains
the low 32 bits and this field, the high 32 bits. It is split using an intermediate
type
FILE_OFFSET_64_T =
RECORD
CASE INTEGER OF
0: ( HIGH32 : BIT32;
LOW32 : BIT32; );
1: ( ALL : LONGINT; );
END
If you are using FWRITEDIR to write selected records to the file (you aren't just
writing record 0..[whatever]) then the eof offset will reflect the byte offset of the
highest record written while the sector count is the just the space consumed by the
records that are there. This may explain what you're seeing.
HTH,
Bill
vCSY
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|
|
|