Transcript
Jonathan Bennett (0:00)
Hey folks, this week we're talking about the Raspberry PI 500 Plus. We're talking about multi kernel Linux. OBS32 is out, there's an upcoming release of KDE Plasma 6.5 and finally Popos 24.04 is about to release. We talk about all that and more. You don't want to miss it, so stay tuned.
Rob Campbell (0:22)
Podcasts you love from people you Trust. This is TWiT.
Jonathan Bennett (0:30)
This is the Untitled Linux Episode 222, recorded Saturday, September 27th. That's on me. Hey folks, it is Saturday and you know what that means. It's time for some Linux Linux news. Hardware, software, open source, the whole gamut. We cover it all here at the Untitled Linux Show. I'm your host, Jonathan Bennett and I've got the crew, the gang, the group of guys, wonderful and beautiful co hosts. Well, they are some of those things. We've got Jeff and Rob and Kim.
Ken Starks (1:03)
Some of us are some of those things.
Jonathan Bennett (1:06)
Yes, a combination of people and things. Yes, that is what we are. We are going to start with some multi kernel news and I may know what this is. I'm curious though, if Rob pulled the same story that I saw. Rob, what? What is the multi kernel? So enter the multi kernel. Like is this the next big phase of some movie franchise?
Rob Campbell (1:33)
Well, I'm going to start out by asking everybody, do you all like running the Linux kernel on your computer? Have you ever wanted to run more than one kernel at the same time on your computer? And I don't mean virtual machines either.
Jonathan Bennett (1:48)
Oh, okay. I was going to say I've got a computer sitting right over there that has the Linux kernel and then multiple Linux kernels running in virtual machines.
Rob Campbell (1:58)
Yeah, we're talking about multiple kernels on one machine. So this week, the Linux kernel mailing list there appeared a proposal for a multi kernel architecture. The idea is that multiple independent kernel instances running on the same physical machine, each tied to specific CPU cores but still sharing the underlying hardware. Kind of like a VM in a way, but it's different. Let me go on. So think of it as kernels living side by side, each minding their own business, but capable of communicating when needed. The patches were announced by Kong Wang of Multi Kernel Technologies Incorporated, who also shared a blog post at Multi Kernel IO. Wang explained that the multi kernel approach could offer fault isolation between workloads, stronger security by keeping kernels separate, better resource utilization compared to virtualization, and even the possibility of zero downtime kernel updates using something called kernel handover. So under the Hood. The implementation builds on Linux's existing K exec infrastructure to load multiple kernel images and assign them to CPU cores. The potential use cases are pretty exciting. You could run a real time kernel for latency sensitive tasks right alongside a standard Linux kernel. Or even dedicated kernels to specific workloads like security critical applications. Or you can have the real time kernel doing this, regular kernel, doing that, something else doing security security. It all seems like it could actually be pretty cool. But just when you thought that was the end of multicol news, ByteDance stepped in with a surprise of their own. They unveiled Parker, what they're calling Parker, their take on running multiple Linux kernels simultaneously, also without virtualization. Parker partitioned CPU cores, memory and devices so that each kernel has its own sandbox. So it's starting to look even more like a vm, but still not quite so. The boot kernel starts first and assigns hardware resources. All other kernels, called application kernels, only interact with their allocated CPUs, memory and I O devices. Once running, the kernels don't communicate at all. They're fully isolated. So it's a different approach than the other first multi kernel. They also see potential in tailoring different kernels for different workloads. Maybe one tune for throughput, another for latency, each with different configs and compiler optimizations. So although this wasn't something I ever thought I wanted, you know, before reading these articles, you know, once the reason was broken down, I'm starting to. I'm starting to be a little convinced of how this could actually be pretty useful.