Hi, On Fri, Aug 03, 2007 at 02:20:53PM +0200, Anders Breindahl wrote: > On 200708011732, [EMAIL PROTECTED] wrote: > > On Thu, Jul 26, 2007 at 03:43:57AM +0200, Anders Breindahl wrote:
> > > I can't tell, but if I am not mistaken, it has been (is?) a design > > > goal of the Hurd to be microkernel-independent. > > > > This is not really possible. The lower-level system parts are very > > closely related to the microkernel; it doesn't make any sense to be > > portable at this level. If the higher-level design is kept intact, > > most translators should work without much change however. > > I don't know whether it wouldn't be feasible. > > Clean interfaces at this level could be hard to do, especially if one > considers oneself with performance. But the value gained would be to > decouple microkernel development from Hurd development, so that > IPC-speedups (e.g.) could be research in some possible nextgen > microkernel, and hardware support could be added to Mach in the > meantime, by others. IPC is a rather good example, why it is *not* possible to be microkernel-independant. L4 (and most other second generation microkernels) have very fast IPC thanks to implementing a very simple, synchronous IPC model. (In contrast to Mach's async IPC.) Switching to sync IPC requires a total redesign of the low-level parts of the system. The same is true for memory management, sheduling, drivers... In short, everything that a microkernel might provide. Writing an abstraction layer for L4 to be usable the same way as Mach not only would require more work than writing a native L4-based system core, but also would result in the same complexity as we see in Mach, and even more slowness due to additional translation overhead. Really, it's not feasible to abstract at this level. This is not a matter of opinion, but hard facts. Anyone familiar with microkernel designs will confirm this. Further down I explained that microkernels are so hard to create because of all the fundamental design decisions it involves. These decisions are so hard precisely *because* they fundamentally affect the design of the whole system. -antrik- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

