lkm
—
?????ͥ??⥸?塼????ưŪ?˥????ɤ??뵡ǽ
ưŪ?˥????ɤ??륫???ͥ??⥸?塼?????Ѥ??뤳?Ȥˤ??ꡢ?????ƥ??????Ԥ?
?¹????Υ????ƥ???ưŪ?˵?ǽ???ä??????????????????????ޤ???
???ˡ????ε?ǽ?ˤ???եȥ???????ȯ?Ԥ?
???????ѹ????ƥ??Ȥ????٤????ˤ˺Ƶ?ư?????????ʤ???
?????ͥ??ο????????????ʤ???ȯ???뤳?Ȥ??Ǥ??ޤ???
¿?ͤʥ????פΥ⥸?塼?????ƥ??˥????ɤ??뤳?Ȥ??????ޤ???
???Ҥ????褦?ˡ????????줿?⥸?塼???Υ????פ????Ĥ????ꡢ
???????Υ?????????ͽ?????????줿??ˡ?ǥ⥸?塼???ϥ????ƥ????ղä????ޤ???
???ξ塢????Ū?ʥ????פ⤢?äơ????Υ????פˤĤ??Ƥϥ⥸?塼????
???켫?Τ??????ǥ??ȥ????????ǥ??????????????Τ?
???ޤ???
FreeBSD
?????ƥ??Ǥ?ưŪ?˥????ɤ??륫???ͥ??⥸?塼???????Ƥ????Ѥ??Ƥ??ơ?
????ʬ?Υե????륷???ƥࡢ NFS
???饤?????Ȥȥ????С????ƤΥ???????С???????
iBCS2 ?? Linux
???ߥ??졼???ʤɤˤĤ???ưŪ?˥????ɤ????С?????????
???Ƥ??ޤ???
?????ƥ??ȶ??????ۤ??줿?⥸?塼????
/lkm
?ǥ??쥯?ȥ??ˤ????ޤ???
lkm
???ե??????????Ѥ????ˤ?
/dev/lkm ?ǥХ??????Ф???
ioctl(2)
?????ƥॳ?????? ȯ?Ԥ??ޤ???
?̾ưŪ?˥????ɤ??륫???ͥ??⥸?塼???˴ؤ??????Ƥ??????ϡ?
modload(8)
??
modunload(8)
??
modstat(8)
?? ?ץ????????ˤ????????????ޤ??? ?桼????ľ??
/dev/lkm
?˴?Ϳ????ɬ?פ?̵??Ȧ?Ǥ???
- ?????ƥॳ?????⥸?塼??
- ?????ƥॳ?????Ͽ??????????ƥॳ??????
lkm
???ե????????̤??ƥ????ɤ??뤳?Ȥˤ????֤??????뤳??
???????ޤ???
???ƤΥ????ƥॳ???????֤??????뤳?Ȥ??????ޤ???????????
ioctl(2)
?????ƥॳ?????˴ؤ??Ƥ??ä????դ?ʧ???ʤ????Фʤ??ޤ?????
???Τʤ顢???Υ????ƥॳ???뤬?⥸?塼???Υ????ɤȥ????????ɤ?
?Ѥ??????Ƥ??뤫???Ǥ???
?????ƥॳ?????⥸?塼?뤬?????????ɤ??????Ȥ??ˤϡ?
ưŪ?˥????ɤ??줿?⥸?塼???ˤ????֤??????????Ƥ????????ƥॳ????
?ϥ????ƥॳ?????ơ??֥???Ŭ???ʰ??֤??ᤵ???ޤ???
- ???ۥե????륷???ƥ??⥸?塼??
- ???ۥե????륷???ƥ???
lkm
???ե????????̤??ƥ????ɤǤ??ޤ???
- ?ǥХ????ɥ饤?Х⥸?塼??
- ???????֥??å?????ʸ?????ΥǥХ????ɥ饤?Ф?
LKM
???Ѥ??ơ??????ƥ??˥????ɤ??뤳?Ȥ??????ޤ???
?ǥХ????ɥ饤?Ф??????ɤ????????μ??פ???????
?????????????ǥХ??????б????ƥɥ饤?ФΥǥХ????Ρ??ɤ?
¸?ߤ??ʤ????Фʤ??ʤ????ȤǤ???
???????ΥǥХ????Ρ??ɤ??????????ˤ??̾?
?ɥ饤?ФΥ????ɤ???????????????
Ŭ?ڤʥץ??????????¹Ԥ????褦
modload(8)
?˻??ꤹ?????ˤ????Ԥ??ޤ???
- ?¹ԥ??饹
- ??????????ƥ??١??? (image activator)
?Ȥ??Ƥ??Τ????Ƥ??ޤ???
?¹ԥ??饹?Ȥϡ??????ˤ???
execve(2)
?????ƥॳ???뤬?¹Բ?ǽ?ե??????η????????̤??ƥ??????˥?????
?Ǥ????褦?ʵ????Ǥ???
- ???⥸?塼??
- ???⥸?塼???ϡ????ޤΤȤ??????Τ????????줿?????뤤??
????Ū?ȤʤäƤ?????ĥ?Τ????Υ??ե????????ʤ??⥸?塼???Ǥ???
?桼???ϸ?ͭ?Υ????????ʤ????Фʤ??ޤ?????
???????⥸?塼???Υ????ɻ??????ӥ????????ɻ??ˡ?
???Υ⥸?塼????ͭ??????????̵???????뤿????
ɬ?פȤʤ뤹?٤ƤΥ????ͥ??ǡ??????Υ???????????ޤ???
- /dev/lkm
lkm
???ե??????ǥХ???
- /lkm
- ?????ƥ???Ʊ?????줿?⥸?塼???ΥХ??ʥ꤬?֤??Ƥ????ǥ??쥯?ȥ?
- /usr/include/sys/lkm.h
- ?⥸?塼?륿???פ????????֤??Ƥ????ե?????
- /usr/share/examples/lkm
- 2?????פΥ⥸?塼???????????Ƥ??륽?????????ɤ???
?⥸?塼?뤬?????????????˼??Ԥ??????˥????ƥब???μ??ԤĤ??뤳?Ȥ?
???褿?????ˤϡ??????ƥ???ľ???˥ѥ˥å??ˤ????Ƶ?ư???Ԥ??ޤ???
?????ƥ????????Υ??ե????????ѹ????줿?????ˤϡ?
?Ť??ޤޤΥ⥸?塼???Ϥ??Ф??Ф????ѹ???ȯ???Ǥ??ʤ??Τǡ?
???Τ褦?ʥ⥸?塼???ϥ????ɤ??줿????
???Ф??Х????å??夹?뤫?ޤ????ԲIJ??ʵ?ǽ?????????ޤ???
lkm
?ε?ǽ???ǽ??˼????????Τ?
Terrence R. Lambert ?Ǥ???
ưŪ?˥????ɤ????ե????륷???ƥ????????????Τ?
Garrett Wollman ?Ǥ???
ưŪ?˥????ɤ????¹ԥ??饹???????????Τ?
David Greenman ?? Soren
Schmidt ?? Garrett Wollman ?Ǥ???
???? lkm
??ǽ?? SunOS 4.1.3
??????????ưŪ?˥????ɤ??륫???ͥ??⥸?塼???ȵ?ǽ???????????褦??
?߷פ????Ƥ??ޤ???