
Apple open-sourced the kernel of iOS and macOS for ARM processors - andriesm
https://techcrunch.com/2017/10/01/apple-open-sourced-the-kernel-of-ios-and-macos-for-arm-processors/
======
seltzered_
Previous discussion:
[https://news.ycombinator.com/item?id=15373055](https://news.ycombinator.com/item?id=15373055)

------
mpweiher
Alas, only 12 references to APFS, that part appears to not be part of the
drop, yet.

[https://github.com/apple/darwin-
xnu/search?p=2&q=APFS&type=&...](https://github.com/apple/darwin-
xnu/search?p=2&q=APFS&type=&utf8=)

~~~
gsnedders
Note HFS+ is in a kernel module and not in the main tree (though is also open
source), it therefore seems unlikely the APFS will ever be released in the
same tree.

~~~
microcolonel
Those releases are here. In previous xnu drops, the HFS+ module was in the xnu
tree, but it was moved out for a version of xnu which only ever shipped on iOS
(10) and WatchOS (3) and all subsequent releases.

[https://opensource.apple.com/source/hfs/](https://opensource.apple.com/source/hfs/)

------
TazeTSchnitzel
_did_ they? Aren't these just the same ARM stubs there's always been in the
macOS source releases? Note the absence of iOS kernel sources labelled as
such, and note the README on GitHub doesn't even mention ARM.

I'll believe it when someone knowledgeable in the subject confirms it.

~~~
microcolonel
[https://github.com/apple/darwin-
xnu/tree/master/osfmk/arm64](https://github.com/apple/darwin-
xnu/tree/master/osfmk/arm64)

------
simonh
It’s interestingly my to me that while Windows has undergone multiple pretty
much ground up rewrites (Windows 3/95/98, Windows NT/2000/XP, Vista/7/8/10)
and largely incompatible parallel unrelated code bases (eg Windows CE
contained little to no common code with desktop windows), OSX and iOS (and BSD
for that matter) have an unbroken source code lineage going back to the 70s.

Yes various portions of the OS were swapped out or rewritten at various
points, but nothing remotely close to the way everything under the surface API
layers of Windows was gutted and clean sheet rewritten every decade or so. I
think it offers an object lesson in writing systems to be modular and
extensible.

~~~
ZenoArrow
MacOS from versions 1 to 9 were very different to Mac OSX.

If you want to stretch the truth and say OSX has a lineage going back to the
70s, Windows 10 also has a lineage going back to the 70s:

[http://windowsitpro.com/windows-client/windows-nt-and-vms-
re...](http://windowsitpro.com/windows-client/windows-nt-and-vms-rest-story)

~~~
simonh
Stretching the truth is pretending modern OSX/MacOS has any significant legacy
in the old Mac OS 1-9. It doesn't. Youre talking about the lineage of the
brand, while I'm talking about the lineage of the source code.

As I explained in my post it's a reskin of NextSTEP. That's why all the
Objective C libraries are called NSTextField and such - NS stands for
NextSTEP. In fact it's why OSX is largely written in ObjectiveC at all as that
was the NS development language. The legacy Mac OS compatibility layer was a
user level subsystem that was dumped years ago.

~~~
ZenoArrow
> "As I explained in my post it's a reskin of NextSTEP."

I'm aware of that. My gripe was with painting OSX as something with heritage
stretching back to the 70s whilst suggesting that Microsoft's OSes have a far
shallower legacy. If you acknowledge an old version of BSD as the forefather
of OSX, I'd expect similar treatment for the forefathers of Windows.

------
fiokoden
But why?

What use is this to anyone?

~~~
microcolonel
It's useful for source auditing. A lot of third parties like to review source
code of things on behalf of customers, this makes it a bit more
straightforward.

