̾??
VOP_GETPAGES
,
VOP_PUTPAGES
—
?ե????뤫?? VM
?ڡ????ؤ??ɤ߹??ߤޤ??Ͻ???
<sys/param.h>
<sys/vnode.h>
<vm/vm.h>
int
VOP_GETPAGES
(struct
vnode *vp, vm_page_t *m, int
count, int reqpage, vm_ooffset_t
offset) int
VOP_PUTPAGES
(struct vnode *vp,
vm_page_t *m, int count,
int sync, int *rtvals,
vm_ooffset_t offset)
VOP_GETPAGES
()
??åɤϡ??̾??Υե????뤬?ظ??ˤ??벾?ۥ??????Υڡ??????ɤ߹???
?Τ????ˡ??ƤӽФ????ޤ???
¾?????ܤ????ڡ??????ظ???Ʊ???ե??????????ܤ????ΰ褬?????????ˤϡ?
VOP_GETPAGES
()
??Ʊ?ͤˤ??????Υڡ??????ɤ߹??ޤ??뤿?????ᤵ???ޤ????????????뤳?Ȥ?
ɬ?ܤʤ櫓?ǤϤ????ޤ?????
VOP_PUTPAGES
()
??åɤ?ȿ?ФΤ??Ȥ??Ԥ??ޤ???
???ʤ????????ۥ??????????ܤ????????ƥ??ʥڡ??????Ф????ޤ???
???????ˡ?vnode
?Υ??å????ݻ??????ޤ??????ڡ??????塼??
VM ???֥??????Ȥ?
???å??Ϥɤ??????ݻ??????ޤ?????
ξ???Υ?åɤϡ????????????????ȥ??顼??????????ξ???Ȥ⡢
???Τޤޤξ??֤??????ޤ???
?????ϰʲ????̤??Ǥ???
- vp
- ?????????????ե????롣
- m
- ?ɤ߹??ޤ????ޤ??Ͻ??ޤ????٤??ե???????Ϣ³?????ΰ???ɽ??????
Ϣ³?????ڡ??????????κǽ??????ǤؤΥݥ??Ǥ???
- count
- ?????????????Υڡ??????Ǥ???
- sync
- ???ߤ?Ʊ?????????٤??????ˤ?
VM_PAGER_PUT_SYNC
?Ǥ???
- rtvals
VOP_PUTPAGES
()
?ˤ??äƽ??ޤ줿???줾???Υڡ????ξ??֤??Ƥ???
VM ?????ƥ??? ???̥????ɤ??????Ǥ???
- reqpage
- ?ڡ??????????????ᤵ?줿?ڡ????Υ????ǥå????Ǥ???
???ʤ????????Υ?åɤμ????????갷???ʤ????Фʤ??ʤ???1
?ڡ????Ǥ???
- offset
- ?ե??????????Τ??Υޥåפ??줿?ڡ??????Ϥޤ??????ؤΥ??ե??åȤǤ???
VOP_PUTPAGES
()
??åɤξ??֤ϡ?????
rtvals[]
?????ˡ??ġ??Υڡ??????Ȥ??֤????ޤ???
???????????????ͤϰʲ????̤??Ǥ???
- ???Υڡ????????????ƽ??ޤ??ޤ?????
?????Ϥ??Υڡ???????????Ǥ??뤳?Ȥ???Ͽ???뤿????
vm_pager_undirty(9)
???ƤӽФ??ʤ????Фʤ??ޤ?????
- ???Υڡ???????Ʊ???˽??ޤ????褦?˥??????塼?뤵???ޤ?????
???ߤ???λ???????ˤϡ???λ???????Хå??ϥӥ????ե饰?ꥢ????
???Υڡ????????Ȥ??Ƥ???¾?Υ????åɤ????????ˡ?
vm_object_pip_wakeup(9)
??????
vm_page_io_finish(9)
???ƤӽФ??٤??Ǥ??? ??????
vm_page_undirty(9)
???ƤӽФ??ޤ???
- ???Υڡ????ϴ??????ظ??ˤ????ե??????ν?ü???ۤ??Ƥ??ޤ?????
???? vnode
?Υե????륷???ƥब???????????????Ƥ????????ˤϡ?
???ξ??֤ϵ??????????٤??ǤϤ????ޤ?????
- ???̤???¸???ǥ????ޤ??ϥץ??ȥ????Υ??顼?Τ??ᡢ
???Υڡ????Ͻ??ޤ??뤳?Ȥ??????ޤ????Ǥ?????
-
??Ʊ?ͤ˼??갷?????ޤ?????
VM_PAGER_ERROR
- ???Υڡ????Ϥ??????ˤ??äƼ??갷?????ޤ????Ǥ?????
???????? m[reqpage]
???ɤ߹??????????ˤ?
VOP_GETPAGES
()
?? VM_PAGER_OK
???֤????????Ǥʤ??????ˤ?
VM_PAGER_ERROR
???֤??ޤ???
?????ǡ? VOP_PUTPAGES
() ???????ͤ?
rtvals[0] ?Ǥ???
???Υޥ˥奢???ڡ?????
Doug Rabson ???????θ??¼???
Garrett Wollman ??????ľ???ޤ?????