The need for customizable operating systems
Kiczales, G.; Lamping, J.; Maeda, C.; Keppel, D.; NcManee, D.
Workstation Operating Systems, 1993. Proceedings., Fourth Workshop on
Volume , Issue , 14-15 Oct 1993 Page(s):165 - 169
Digital Object Identifier 10.1109/WWOS.1993.348154
Summary:Although modern operating systems provide powerful abstractions to
application programs, they often fail to implement those abstractions in
a way that provides applications programs, especially specialized
application programs, with the best utilization of the physical
resources of the computer system. The operating system community has
implicitly recognized this problem by providing mechanisms that give
client programmers more access to the physical substrate. The Mach
External Pager allows clients to replace the paging mechanism. More
recent work allows client replacement of the paging policy as well.
Scheduler activations share the job of thread management between clients
and the system. Apertos allows these and other aspects of operating
system implementation to be client-controlled. Object-oriented operating
systems under development also provide these kinds of control. We
contend that there is a very general issue here, which operating systems
have been among the first kinds of software to have to face head-on:
some implementation decisions are crucial strategy decisions whose
resolution will invariably bias the performance of the resulting
implementation. Explicitly recognizing this issue helps to make sense of
current trends and suggests new directions to explore. We consider the
implications of this issue for operating systems, providing a framework
with which to analyze systems such as those mentioned above, and
suggesting connections with similar problems in other domains
View citation and abstract |