[Toc][Index]

DosReallocHuge


Bindings:  C, MASM 

This call changes the size of memory originally allocated by DosAllocHuge. 
 
 DosReallocHuge    (NumSeg, Size, Selector) 
 
 NumSeg (USHORT) - input 
    Number of 65536 byte segments requested. 
 Size (USHORT) - input 
    Number of bytes requested in the last non-65536 byte segment.  A value 
    of 0 indicates none. 
 Selector (SEL) - input 
    Selector returned on a previous DosAllocHuge. 
 rc (USHORT) - return 
    Return code descriptions are: 
    0         NO_ERROR 
    8         ERROR_NOT_ENOUGH_MEMORY 
    87        ERROR_INVALID_PARAMETER 
 
 Remarks 
 DosReallocHuge is called to change the size of unshared or shared huge 
 memory allocated by DosAllocHuge. The selector used for this call must be 
 the one returned by the DosAllocHuge request. 
 Normally, segments allocated as shared (AllocFlags bits 0 and 1 were set) 
 cannot be decreased in size. However, if AllocFlags bit 3 was also set, 
 the shared segment's size can be decreased. 
 DosReallocHuge is also called to reallocate a segment allocated as 
 discardable (AllocFlags bit 2 set) after the segment is discarded by the 
 system. The call to DosReallocHuge automatically locks the segment for 
 access by the caller, the same as if a DosLockSeg had been issued. 
 Note:  This request may be issued from privilege level 2 or 3.  However, 
        only a privilege level 3 huge segment is valid. 
 
 Family API Considerations 
 Some options operate differently in the DOS mode than in the OS/2 mode. 
  Therefore, the following restriction applies to DosReallocHuge when 
 coding for the DOS mode: 
 The requested Size value is rounded up to the next paragraph (16-byte). 

Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs