NAME | SYNOPSIS | FEATURES | DESCRIPTION | RESTRICTIONS | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO
#include <mem/chMem.h>void PxmSwapOut(KnPxmSwapOutArgs *swArg, void *cookie);
PXM_EXT
This system call is strictly reserved for internal use only. It MUST NOT be used by any application.
The PxmSwapOut routine is provided by the Proxy-Mapper and is invoked as an up-call by the CHORUS VM. It is invoked as a lap; its second argument is the lap cookie as defined at svLapCreate time. The PxmSwapOut up-call is invoked by the VM in order to inform the Proxy-Mapper that a page is going to be pushed out (due to action by the VM daemons), as opposed to a push out resulting from a dcFlush or a dcSync. This up-call is an opportunity for the Proxy-Mapper to tailor the behavior of the VM, so that swap out will occur on ranges that suit the Proxy-Mapper's needs.
The KnPxmSwapOutArgs data structure has the following fields:
KnDtPxMapper* pxm ; KnSgId sgId ; KnPage* page ; VmOffset* offset ; VmOffset* end ; |
The pxm field points to the Proxy-Mapper definition associated with the segment at the time of dcAlloc. The sgId field specifies the corresponding data segment. The page field points to the list of pages which are going to be pushed out by the VM. The starting offset of this contiguous list of pages is provided at the location pointed to by the offset field. The last offset of the range to be swapped out is defined as the location pointed to by the end field. The PxmSwapOut up-call enables the Proxy-Mapper to change the range of pages to be swapped out, by changing the values pointed to by the input/output fields: offset and end. If no PxmSwapOut up-call routine has been defined in the pxm structure associated with the data segment at dcAlloc time, swap out will be performed by the VM according to its own rules based on the cluster size (see dcCluster ).
The current implementation is only applicable to trusted supervisor actors.
None.
No error codes are returned.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | FEATURES | DESCRIPTION | RESTRICTIONS | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO