ADSM-L

Re: An API question regarding files > 4GB

1998-04-15 14:27:19
Subject: Re: An API question regarding files > 4GB
From: Andrew Raibeck <storman AT US.IBM DOT COM>
Date: Wed, 15 Apr 1998 14:27:19 -0400
Just an append to my prior response to this: if you check out the header files,
you'll see that in dsmapitd.h the sizeEstimate is of type "dsStruct64_t". This
type is defined in the dsmapips.h file like this:

typedef struct
    {
       dsUint32_t hi;          /* Most significant 32 bits. */
       dsUint32_t lo;          /* Least significant 32 bits. */
    }dsStruct64_t ;

In general, you can find structure definitions in the API header files. Another
good place to see how to use the API is in the sample application source code.

Andy Raibeck
IBM Storage Systems Division
ADSM Client Development
e-mail: storman AT us.ibm DOT com

The ".hi" value is the high-order 32 bits of the number, and the ".lo" value is
the low-order 32 bits of the number.

8,923,232,304 (decimal) = 213DDB830 (hex)

In this case, the low-order 32 bits are 13DDB830 and the high-order 32 bits are
2.

The high-order bits are non-zero if the value is greater than or equal to 4 GB
(4 * 1024 * 1024 * 1024) = 4,294,967,296 bytes.

8,923,232,304 divided by 4,294,967,296 is 2 with a remainder of 333,297,712.

ObjAttr.sizeEstimate.hi = 2 (decimal) = 2 (hex)
ObjAttr.sizeEstimate.lo = 333,297,712 (decimal) = 13DDB830 (hex)



Andy Raibeck
IBM Storage Systems Division
ADSM Client Development
e-mail: storman AT us.ibm DOT com


 ADSM-L AT VM.MARIST DOT EDU
 04/14/98 09:41 PM
Please respond to wsuhanic AT fox.nstn DOT ca

To: ADSM-L AT VM.MARIST DOT EDU
cc:
Subject: Re: An API question regarding files > 4GB

Hello All:

How would a file which is 8,923,232,304 bytes in size be represented
in ObjAttr.sizeEstimate of dsmSendObj call. I am asking what would
ObjAttr.sizeEstimate.lo be set to and what would ObjAttr.sizeEstimate.hi

be set to. Could any response to this question also contain an
explanation.

Thank you all very much in advance.

West Suhanic





<Prev in Thread] Current Thread [Next in Thread>