|
Microkernel Construction
29.11.1999
Foredragsholdere
Jochen Liedtke
Abstract:
"From a software-technology point of view, the microkernel concept is superior to large integrated kernels. On the other hand, it is widely believed that (a) microkernel-based systems are inherently inefficient and (b) they are not sufficiently flexible. Contradictory to this belief, we show and support by documentary evidence that inefficiency and inflexibility of current microkernels is not inherited from the basic idea but mostly from overloading the kernel and/or from improper implementation. Based on functional reasons, we describe some concepts which must be implemented by a microkernel and illustrate their flexibility. Then, we analyze the performance critical points. We show what performance is achievable, that the efficiency is sufficient with respect to macro-kernels and why some published contradictory measurements are not evident. Furthermore, we describe some implementation techniques and illustrate why microkernels are inherently not portable, although they improve portability of the whole system." In addition, we discuss new insights about which fundamental concepts are required and how generalization of existing concepts leads to a reduction to just two fundamental concepts, threads and address spaces. We also discuss the problems of finding scheduling abstractions that are as simple and as powerful as the map/unmap mechanisms on pages".
|