By: anon2 (anon.delete@this.anon.com), March 15, 2021 4:53 am
Room: Moderated Discussions
Simon Farnsworth (simon.delete@this.farnz.org.uk) on March 15, 2021 3:12 am wrote:
> anon2 (anon.delete@this.anon.com) on March 15, 2021 1:58 am wrote:
> > Anon (no.delete@this.spam.com) on March 14, 2021 11:49 pm wrote:
> > > Linus Torvalds (torvalds.delete@this.linux-foundation.org) on March 14, 2021 4:58 pm wrote:
> > > > That kind of thing could be useful for a microkernel (not that I believe in the
> > > > concept - I continue to be of the opinion that microkernel proponents are overplaying the advantages,
> > > > and underplaying the very real issues with communication and sharing).
> > >
> > > In several places I saw Linux being classified as "microkernel", I never touhgt
> > > this classification have any relevance, but now I read you bashing the concept.
> > >
> > > So, is Linux a microkernel after all?
> >
> > No. It has taken some concepts and applied them where they are are a good fit
> > (e.g., to implement userspace device drivers for certain classes of device).
> >
> > > What is the true concept of microkernel?
> > >
> >
> > Traditionally it is a minimal kernel that supports only thread scheduling, low level interrupt handling,
> > IPC, and perhaps low level virtual memory management. The
> > rest of the kernel services are built with threads
> > (which may or may not be in different address spaces and privilege modes) on top of that base.
> >
> > It sounds like such a nice clean idea that even experienced computer scientists
> > and engineers throw away careers trying to make it work like a monolithic kernel.
> > The reality is not all problems can be decomposed into "clean, simple".
> >
> It also promises a route to extreme stability; the core kernel does IRQ handling, a simple form of
> IPC, address spaces and task switching (noting that it's up to the user of these facilities to pair
> tasks with address spaces), and nothing else, and hence in theory can be made completely bug free.
In theory so can the core of a monolithic kernel.
>
> Then, whenever another component of the system fails, you "merely" have to kill and restart
> it to return to normal operation - if everything is built to handle crashes, then this Just
> Works. In practice, life is not that simple, and designing your tasks to handle a crash and
> restart cleanly is also a hard problem, especially in the face of real hardware behaviour.
Killing and restarting things is haphazard and no vast improvement to stability.
> anon2 (anon.delete@this.anon.com) on March 15, 2021 1:58 am wrote:
> > Anon (no.delete@this.spam.com) on March 14, 2021 11:49 pm wrote:
> > > Linus Torvalds (torvalds.delete@this.linux-foundation.org) on March 14, 2021 4:58 pm wrote:
> > > > That kind of thing could be useful for a microkernel (not that I believe in the
> > > > concept - I continue to be of the opinion that microkernel proponents are overplaying the advantages,
> > > > and underplaying the very real issues with communication and sharing).
> > >
> > > In several places I saw Linux being classified as "microkernel", I never touhgt
> > > this classification have any relevance, but now I read you bashing the concept.
> > >
> > > So, is Linux a microkernel after all?
> >
> > No. It has taken some concepts and applied them where they are are a good fit
> > (e.g., to implement userspace device drivers for certain classes of device).
> >
> > > What is the true concept of microkernel?
> > >
> >
> > Traditionally it is a minimal kernel that supports only thread scheduling, low level interrupt handling,
> > IPC, and perhaps low level virtual memory management. The
> > rest of the kernel services are built with threads
> > (which may or may not be in different address spaces and privilege modes) on top of that base.
> >
> > It sounds like such a nice clean idea that even experienced computer scientists
> > and engineers throw away careers trying to make it work like a monolithic kernel.
> > The reality is not all problems can be decomposed into "clean, simple".
> >
> It also promises a route to extreme stability; the core kernel does IRQ handling, a simple form of
> IPC, address spaces and task switching (noting that it's up to the user of these facilities to pair
> tasks with address spaces), and nothing else, and hence in theory can be made completely bug free.
In theory so can the core of a monolithic kernel.
>
> Then, whenever another component of the system fails, you "merely" have to kill and restart
> it to return to normal operation - if everything is built to handle crashes, then this Just
> Works. In practice, life is not that simple, and designing your tasks to handle a crash and
> restart cleanly is also a hard problem, especially in the face of real hardware behaviour.
Killing and restarting things is haphazard and no vast improvement to stability.
Topic | Posted By | Date |
---|---|---|
x86 - why unite when you can fragment? | anonymou5 | 2021/03/12 06:16 PM |
x86 - why unite when you can fragment? | Linus Torvalds | 2021/03/13 01:18 PM |
x86 - why unite when you can fragment? | Jon Masters | 2021/03/13 07:25 PM |
x86 - why unite when you can fragment? | Jon Masters | 2021/03/13 07:44 PM |
x86 - why unite when you can fragment? | Yuhong Bao | 2021/03/13 08:49 PM |
x86 - why unite when you can fragment? | tt | 2021/03/20 09:30 AM |
x86 - why unite when you can fragment? | Andrey | 2021/03/14 04:15 PM |
x86 - why unite when you can fragment? | Linus Torvalds | 2021/03/14 04:58 PM |
x86 - why unite when you can fragment? | anonymou5 | 2021/03/14 05:31 PM |
x86 - why unite when you can fragment? | anon2 | 2021/03/14 08:07 PM |
Microkernel? | Anon | 2021/03/14 11:49 PM |
Microkernel? | none | 2021/03/15 12:37 AM |
Microkernel? | Anon | 2021/03/15 01:56 AM |
Microkernel? | anon2 | 2021/03/15 01:58 AM |
Microkernel? | Simon Farnsworth | 2021/03/15 03:12 AM |
Microkernel? | anon2 | 2021/03/15 04:53 AM |
Microkernel? | Simon Farnsworth | 2021/03/15 06:56 AM |
Microkernel? | iz | 2021/03/15 08:10 AM |
Microkernel? | Anon | 2021/03/15 09:05 AM |
Microkernel? | iz | 2021/03/16 01:25 AM |
Microkernel? | Andrey | 2021/03/16 02:54 AM |
Microkernel? | iz | 2021/03/16 08:36 AM |
Microkernel? | Andrey | 2021/03/16 10:06 AM |
Microkernel? | anonymou5 | 2021/03/16 11:44 AM |
Microkernel? | iz | 2021/03/21 02:58 AM |
Microkernel? | Andrey | 2021/03/21 09:34 AM |
Microkernel? | anon2 | 2021/03/15 08:31 AM |
Microkernel? | Simon Farnsworth | 2021/03/16 04:42 AM |
Microkernel? | Gabriele Svelto | 2021/03/15 03:21 AM |
Microkernel? | anon2 | 2021/03/15 04:56 AM |
Microkernel? | Gabriele Svelto | 2021/03/15 10:41 AM |
Microkernel? | anon2 | 2021/03/15 08:00 PM |
Microkernel? | Gabriele Svelto | 2021/03/16 07:23 AM |
Microkernel? | anon2 | 2021/03/16 05:13 PM |
Microkernel? | anon2 | 2021/03/16 05:16 PM |
Microkernel? | Gian-Carlo Pascutto | 2021/03/16 01:40 PM |
Microkernel? | anon2 | 2021/03/16 05:53 PM |
Microkernel? | Linus Torvalds | 2021/03/16 07:25 PM |
Microkernel? | Doug S | 2021/03/17 09:30 AM |
Microkernel? | Linus Torvalds | 2021/03/17 10:30 AM |
Microkernel? | Brendan | 2021/03/17 10:56 PM |
Microkernel? | Michael S | 2021/03/18 03:47 AM |
Microkernel? | Brendan | 2021/03/18 09:07 AM |
Microkernel? | Jose | 2021/03/18 09:35 AM |
Microkernel? | zArchJon | 2021/03/18 05:42 PM |
Transputer | RichardC | 2021/03/17 09:47 AM |
Microkernel? | dmcq | 2021/03/17 11:15 AM |
Microkernel? | Linus Torvalds | 2021/03/17 11:59 AM |
Microkernel? | dmcq | 2021/03/17 12:38 PM |
Microkernel? | Adrian | 2021/03/17 01:00 PM |
Microkernel? | Ana R. Riano | 2021/03/18 04:33 AM |
Microkernel? | ⚛ | 2021/04/30 04:52 PM |
Microkernel? | NvaxPlus | 2021/03/17 11:48 AM |
Microkernel? | Michael S | 2021/03/18 03:32 AM |
Microkernel? | Adrian | 2021/03/18 04:12 AM |
Microkernel? | dmcq | 2021/03/18 06:30 AM |
Microkernel? | dmcq | 2021/03/18 06:55 AM |
Microkernel? | Adrian | 2021/03/18 08:35 AM |
Microkernel? | --- | 2021/03/18 09:49 AM |
Microkernel? | dmcq | 2021/03/18 10:59 AM |
Microkernel? | dmcq | 2021/03/18 04:09 PM |
Microkernel? | --- | 2021/03/18 09:27 AM |
Microkernel? | Kalle A. Sandström | 2021/03/20 06:34 AM |
Microkernel? | --- | 2021/03/20 08:35 AM |
Microkernel? | anon2 | 2021/03/21 05:29 PM |
Microkernel? | dmcq | 2021/03/15 04:06 AM |
Microkernel? | anon2 | 2021/03/15 04:59 AM |
Microkernel? | dmcq | 2021/03/15 11:51 AM |
Microkernel? | anon2 | 2021/03/15 08:31 PM |
Microkernel? | dmcq | 2021/03/16 09:17 AM |
Microkernel? | Jukka Larja | 2021/03/16 11:22 AM |
Microkernel? | dmcq | 2021/03/16 04:06 PM |
Microkernel? | Jukka Larja | 2021/03/17 03:42 AM |
Microkernel? | dmcq | 2021/03/17 07:00 AM |
Microkernel? | anon2 | 2021/03/16 05:26 PM |
Microkernel? | --- | 2021/03/16 10:07 AM |
Microkernel? | -.- | 2021/03/15 08:15 PM |
Microkernel? | anon2 | 2021/03/15 09:18 PM |
Microkernel? | Foo_ | 2021/03/16 03:37 AM |
Read the thread (NT) | anon2 | 2021/03/16 05:27 PM |
Already did (NT) | Foo_ | 2021/03/17 02:55 AM |
Already did | anon2 | 2021/03/17 03:46 AM |
Already did | Etienne Lorrain | 2021/03/18 02:31 AM |
Microkernel? | -.- | 2021/03/17 05:04 AM |
Microkernel? | Gabriele Svelto | 2021/03/17 08:53 AM |
Microkernel? | -.- | 2021/03/17 02:43 PM |
Microkernel? | dmcq | 2021/03/16 08:40 AM |
x86 - why unite when you can fragment? | Konrad Schwarz | 2021/03/17 10:19 AM |
x86 - why unite when you can fragment? | anonon | 2021/03/15 07:37 AM |