Dienstag, 10. März 2009
27:00 I hate to rehash the whole microkernel thing but how do you feel about it now? Do you think it could ever go in that way?
Ah, microkernels. I used to be a lot more more polite about microkernels now that I used to be in these days. I used to think that microkernels had kind of inherent beauty. I think that's what confused a lot of people. A lot of people thought that microkernels were cute and beautiful. And my current thinking on microkernels is that Linux is actually a microkernel. It does everything that should sanely be done in kernel space, and everything that shouldn't seem to be done in kernel space it does in user level service. Well, that's one level of microkernel. The problem of going much further than that is that yes, you simplify the pieces, but what you don't do is that you do not simplify the system. Quite the reverse. What happens in the microkernel is because you simplify the pieces you now have a lot of interaction between pieces. And there fundamentally have to be asynchronous interaction between pieces if you want to get any good performance at all. Which means that you have asynchronous communication between hundreds of different pieces and you've just made your life living hell. Which is fundamental problem of microkernels that the reason for their existence systems, namely simplicity, isn't actually true. And then you also find that when you add a lot of communication you slow down the problem space... to counteract that you actually make the pieces complicated again in order to get back the performance you lost. Now this is why I think for example that all the traditional microkernels like this are stupid.
This doesn't necessarily mean that distributed systems are stupid. There's two things here and sometimes people seem to be equating microkernels with distributed systems. It's perfectly sane to have a real kernel on lots of machines and then take communication where you have to take communication between the machines. And there you can't avoid it. Well, you can avoid it by having SMP and NUMA. And actually you should take SMP and NUMA as far as you can, but at some point you just can't go any further. And whet you have you take communication, then you do it until you reach some point. But you communicate as soon as possible until that point. That's my strong opinion and I think that computer science as it came to operating system did most of what should've been done in the sixties. And everything else was mental masturbation
42:40 Fragmentation drives development. Because those different people with different agendas.
46:20 It doesn't actually matter what you do. If you are doing it with a good group of people it's gonna be good.
47:00 How do you decide what to include in the kernel? - who's a good maintainer. That's probably the most common reason.
48:50 I am completely disorganized. I'm actually the least organized person I know. Despite that there has to be this invisible guiding hand. ...
55:00 What editor and mail program do you use? The editor is microemacs, the best editor ever made. And vi and GNU Emacs suck, suck. Now I've alienated everybody in the audience. For e-mail I actuall use pine.
56:00 I hate maintaining the stable kernel.
Abonnieren
Kommentare zum Post (Atom)

Keine Kommentare:
Kommentar veröffentlichen