procedure Region_Resize_Segment ( ID : in RTEMS.ID; Segment : in RTEMS.Address; Size : in RTEMS.Unsigned32; Old_Size : out RTEMS.Unsigned32; Result : out RTEMS.Status_Codes );
RTEMS.SUCCESSFUL
- segment obtained successfully
RTEMS.INVALID_ADDRESS
- segment
is NULL
RTEMS.INVALID_ADDRESS
- old_size
is NULL
RTEMS.INVALID_ID
- invalid region id
RTEMS.INVALID_ADDRESS
- segment address not in region
RTEMS.UNSATISFIED
- unable to make segment larger
This directive is used to increase or decrease the size of a segment. When increasing the size of a segment, it is possible that there is not memory available contiguous to the segment. In this case, the request is unsatisfied.
If an attempt to increase the size of a segment fails, then the application may want to allocate a new segment of the desired size, copy the contents of the original segment to the new, larger segment and then return the original segment.
Copyright © 1988-2008 OAR Corporation