Live data from Hacker News

macOS extensions are moving away from the kernel

eclecticlight.co

101–110 of 149 posts

Re: macOS extensions are moving away from the kernel

#101
post #58

Earlier quoted context omitted.

You don’t need to use Karabiner for that: keyboard preferences has a modifier keys setting (per keyboard) that achieves this exact remapping with no kernel extensions.

Surprisingly not. You can't re-bind the FN key's function using normal settings. On a 2019 mac pro, catalina, btw, looking at Settings > Keyboard > Modifier Keys...

Possibly stupid question: are you using an Apple keyboard? The Fn key remapping doesn't show up for third-party keyboards, as those won't have a Fn key (or, at least, not one that's remappable in the same way).

Re: macOS extensions are moving away from the kernel

#103
post #69

Earlier quoted context omitted.

"blessed" replacement Why did you use the word Blessed? I'm curious what made your brain choose that word instead of something neutral. Reminds me of "Walled garden" marketing speak instead of "Walled Prison". Edit- is there some sensitive nerve I hit?

> "Walled Prison" I'm curious what made your brain choose that word instead of something neutral.

what would be a good term?

Re: macOS extensions are moving away from the kernel

#104
post #73

Earlier quoted context omitted.

You can definitely make snapshots on APFS. It also use checksums for filesystem integrity.

> You can definitely make snapshots on APFS. Apple can. I can’t. Making APFS snapshots requires special entitlements, which they’re not going to give me. > It also use checksums for filesystem integrity. It doesn’t check integrity of the actual data though. But I care about my data.

You can use tmutil to create a snapshot.

Or do you want to create an app that performs a snapshot via some API.

Re: macOS extensions are moving away from the kernel

#105

Earlier quoted context omitted.

> it is one of their specialities as an OS/platform after all. Apple's been losing ground with creative-types across all industries and areas since their post-2000s peak: the major attitude-adjustment came with the reputational harm that came from the launch-and-downfall of the 2013 Mac Pro. As a wry zinger, I find it ironic that creative-types cannot express their creativity, and especially their individually by way…

And yet Mac sales have never been better: https://www.apple.com/newsroom/2021/04/apple-reports-second-...

yes, tbh there is no real incentive for apple to perticularly cater to a limited market like that, when there is more money to be made elsewhere

Re: macOS extensions are moving away from the kernel

#106
post #81
post #52

Earlier quoted context omitted.

Yes they do, but segmentation is practically non-existent and page tables distinguish only between rings 0 and rings 1-3. So no, they aren't very useful, but they do exist and, AFAIK, they're still checked in "far" control transfers.

It's too bad they have been made useless. I'm not fully sure about this, but I think that if you could have two rings for user code so that applications that want to run untrusted code in a sandbox could run the main application in ring 2 and the sandboxed code in ring 3, you could make the application safe from Spectre attacks from the sandboxed code without giving up performance.

The point of Spectre attacks is that they use side channel to infer the target's data from communication between the target and the attacking userspace process. This is possible even over the network, so ring 2 wouldn't help much.

Re: macOS extensions are moving away from the kernel

#107

Earlier quoted context omitted.

Virtualization is indeed the last user of the x86-ring 1 that I remember. But it is much easier to put an entire virtualized kernel in a different ring (x86 or ?) than selectively put pieces and parts of one in different rings, which no one does.

> Virtualization is indeed the last user of the x86-ring 1 that I remember. Yes, I know, but I'm referring to hardware virtualization, essentially making "ring -1" "ring 0" and "ring 0" "ring 1".

Xen on 32-bit x86 used the real ring 1. :)

Re: macOS extensions are moving away from the kernel

#108

Earlier quoted context omitted.

I am quite sure that we have been other this several times in HN. The fact that they're no longer going to allow loading of 3rd party kernel modules (a pure political decision) does not a make a microkernel (which is an architectural style). The kernel is still going to be big and monolithic (it contains the entire BSD kernel in the same address space!), and they're still going to be loading Apple-authorized kernel m…

It's an engineering decision : buggy kernel extensions bring down the OS.

Agreed. Given the number of times I personally reported a buggy (IT mandated) firewall for crashing my system, I am extremely happy that they moved extensions out of the kernel. The extension makers who wrote poor quality code have only themselves to blame for the situation.

Using a USB network adapter (requires for Ethernet on a MacBook) would bring down my system every time the firewall was running. And the stacktraces all included their calls.

I’m sure Apple, like me, got tired of getting reports about a few known bad actors.

Re: macOS extensions are moving away from the kernel

#109

Earlier quoted context omitted.

> it is one of their specialities as an OS/platform after all. Apple's been losing ground with creative-types across all industries and areas since their post-2000s peak: the major attitude-adjustment came with the reputational harm that came from the launch-and-downfall of the 2013 Mac Pro. As a wry zinger, I find it ironic that creative-types cannot express their creativity, and especially their individually by way…

And yet Mac sales have never been better: https://www.apple.com/newsroom/2021/04/apple-reports-second-...

Ye olde price=utility.

Re: macOS extensions are moving away from the kernel

#110

Earlier quoted context omitted.

Virtualization is indeed the last user of the x86-ring 1 that I remember. But it is much easier to put an entire virtualized kernel in a different ring (x86 or ?) than selectively put pieces and parts of one in different rings, which no one does.

> Virtualization is indeed the last user of the x86-ring 1 that I remember. Yes, I know, but I'm referring to hardware virtualization, essentially making "ring -1" "ring 0" and "ring 0" "ring 1".

If you ever want to, it seems you can have a unlimited layer of 'rings' now? I heard that both amd and intel have nested page virtualization in recent products.

Besides that, hyperv seems make use of it to achieve paravirtulization?

Post reply on HN