Apple XNU: Clutch Scheduler
github.com
github.com
This is fascinating, would love to know where it’s used! (Besides macOS)
They've been making quite a few changes to the virtual memory code over the past decade, and keeping those vestigial arch's around is a pretty big maintenance burden. It'd probably be less work to just add the arch as if it were new when it's needed at this point since the kernel itself is pretty portable.
Apple's ARM implementation is in a really good place right now. It would take something extremely compelling to get them to consider any other architecture for an application processor, especially considering that it'd mean giving up some degree of control.
Power is probably not where Apple would choose to go unless something really unusual happened. It's essentially just IBM's pet architecture at this point.
Surely at a minimum they need macOS for CI.
Apple does have one advantage here-they can legally grant themselves permission to run macOS internally on non-Apple hardware, and I don’t believe doing so legally obliges them to extend the same allowance to their customers.
But that might give them a reason to keep x86_64 alive for internal use, since that platform (still) gives you more options for server-class hardware than ARM does
If they’ve got Apple Silicon servers in their own data centres…
Nowadays you can usually still find Java and JVM languages like Clojure (Apple Maps), on Apple's job ads.
How much of it is still Java based, no idea.
I imagine XCode Cloud has nothing to with it for example.
https://news.ycombinator.com/item?id=44172166
https://www.swift.org/blog/swift-at-apple-migrating-the-pass...
In fact here's the one used in Sonoma: sysctl kern.sched -> edge
which seems to be an extension over "clutch":
https://github.com/apple-oss-distributions/xnu/blob/main/osf...
"… Single-cluster, symmetric (SMP) systems can run with just the Clutch policy, but multi-cluster, asymmetric (AMP) systems must further enable the Edge policy extension to Clutch in order to manage scheduling across the multiple CPU clusters. …"