Object-oriented device driver programming
$B0KF#(B $B=c0lO:(B$B!"=j(B $B??M}M:(B
$B%*%V%8%'%/%H;X8~%3%s%T%e!<%F%#%s%0(B III ($B6a4)(B)
Operating systems should be made flexible from their low-level system
structures, to enable them to adapt to dynamic changes of the outer world.
This paper proposes a methodology for making device drivers
by introducing object-oriented reflective programming
into the low-level system structures of operating systems.
We introduce concurrent objects
as a basic framework for low-level system object programming.
Under our framework, it is possible to write device driver code
without managing the interrupt masks
from low-level system objects.
We present the implementation of our methodology on
our Apertos operating system and demonstrate its efficiency
through our preliminary evaluation.