I recently found out that Android’s kernel is VERY different from any Apple implementation. Never really crossed my mind that there are different types of kernels.

This made me wonder - if the microkernel is so much better, at the cost of being complicated to develop an OS for, would Android be better on microkernel?

Please enlighten me. I’m only trying to learn more.

Also, do interact, Lemmy needs good conversation.

5 points
*

This is my opinion as a random person on the internet: no. The kernel only affects what hardware it can be ran on. Everything else that would make a difference to end users is basically done in userspace.

The thing holding Android back is its JVM layer between the kernel and the userspace. This adds overhead, meaning your phone needs more RAM or it will have performance issues. You also need slower default animations to cover up the increased loading times from this overhead, which make the system seem slow, especially when compared to iPhones.

permalink
report
reply
1 point

So, would it even be possible to change this?

permalink
report
parent
reply
2 points

It’s possible to change anything, the main question is the cost of doing so.

Google has already created something called Fuchsia which is reportedly very fast and potentially more secure than Android. But Google already has nearly 20 years of an existing ecosystem in Android that they would effectively be giving up because app manufacturers would have to make new apps for the new system.

They’ve probably ran the numbers to see how much it would cost to perform the new roll-out vs how much income it would bring, and I would guess that making such a massive change just wouldn’t be worth it.

permalink
report
parent
reply
1 point

Hmm… That’s true.

What about custom implementations? ROM devs?

permalink
report
parent
reply
4 points

This isn’t really fit for the Android community because “Android’s kernel” is the Linux kernel. Android is more about everything beyond the kernel; the userspace APIs and components that make an Android phone actually work. The kernel is rather unimportant here. Android uses Linux because it’s the most mature operating system out there.

Monolith vs. microkernel has been a hot debate in operating systems ever since the concepts emerged.

I personally really like the basic idea behind microkernels (separating mechanism and policy) but can also appreciate that, in reality, the best kernel in existence for general purpose computing is purposefully a monolith while the best a true microkernel (Minix) has achieved is to run CPU firmware.

Do note, over the past decade or so, that Linux has sorta been stealthily laying out the basics to turn itself into something of a microkernel. See https://en.wikipedia.org/wiki/EBPF

Android uses Linux’ eBPF for its firewall implementation for instance.

I don’t have much experience with Apple’s XNU kernel but AFAIK it’s not a true microkernel but a lot more of a microkernel than Linux is.

permalink
report
reply
1 point

I see… Will read your suggestions…

permalink
report
parent
reply
3 points

Im interacting but I have no idea, curious too.

permalink
report
reply
1 point

Waiting for a reminder bot here on Lemmy.

permalink
report
parent
reply

Ask Android

!askandroid@lemdro.id

Create post

A place to ask your questions and seek help related to your Android device and the Android ecosystem.

Whether you’re looking for app recommendations, phone buying advice, or want to explore rooting and tutorials, this is the place for you!

Rules
  1. Be descriptive: Help us help you by providing as many details as you can.
  2. Be patient: You’re getting free help from Internet strangers, so you may have to wait for an answer.
  3. Be helpful: If someone asks you for more information, tell us what you can. If someone asks you for a screenshot, please provide one!
  4. Be nice: Treat others with respect, even if you don’t agree with their advice. Accordingly, you should expect others to be nice to you as well. Report intentionally rude answers.
  5. No piracy: Sharing or discussing pirated content is strictly prohibited. Do not ask others for a paid app or about how to acquire one.
  6. No affiliate/marketing links: Posting affiliate links is not allowed.
  7. No URL shorteners: These can hide the true location of the page and lead people to malicious places.
  8. No lockscreen bypasses: Please do not comment, link, or assist with bypassing lock screens or factory reset protection.
  9. No cross-posting: Please take the time to make a proper post instead of cross-posting.
Other Communities

Community stats

  • 1

    Monthly active users

  • 192

    Posts

  • 386

    Comments