Apple has always shared the kernel of macOS after each major release. This kernel also runs on iOS devices as both macOS and iOS are built on the same foundation. This year, Apple also shared the most recent version of the kernel on GitHub. And you can also find ARM versions of the kernel for the first time.
The code was pushed to Apple’s open source site, as well as to their official GitHub mirror.
It’s important to remember that compared with Microsoft, Apple is way, way more open.
They open sourced their entire kernel (which is not required by the license of the BSD components). They lead the way for the ports of dtrace and ZFS out of Solaris, and they have fully open sourced their mDNSResponder implementation.
Edited 2017-10-02 22:36 UTC
No offense meant, but I hate comments like this…
Both Apple and Microsoft are large multi-national corporations. They both make good and bad software, they both do good and bad things. For every seemingly positive thing you can name Apple does, I can name 10 negative ones (same goes for Microsoft).
When companies like this open source software (or do anything really), they do it out of economic self interest – nothing more. Altruism is not a word you can use to describe a corporate entity. People are altruistic, corporations exist to make their share holders money – and that is literally the only thing they exist for.
I like Apple products. I use them everyday. I’m a fan. That said, Apple’s board of directors would happily kill small children if it made them lots of money and they knew they could get away with it… So would Microsoft’s, or Google’s, or any other large corporation. If you believe differently your delusional. Laws stop them from doing such things, not morals…
Can we all just stop trying to humanizing these companies? They are not people. They don’t have feelings, or dreams, or emotions, or anything of the sort. They are not forces of good, or evil, they simply exist to make more money than last quarter. If you think Apple “has a heart”, its just because their marketing department is very good at their job and you happen to be their target demographic…
Rant off. Sorry if I sound like an ass, I’m not directing anything at you personally, your comment just triggered me…
The owers are people, they are responsible to their actions and the actions of the company. However in the west “regulation” has caused those interest and liabilities of public good to evaporate. Today most companies can do horde style shit and the stock holders would have no responsibility.
Lets disable those regulations and make the shareholders responsible for what their comany sells.
Shareholders wants profits, not responsibilities. Money have no odor.
Companies like Google/Apple/Microsoft have millions of share holders, each with a limited amount of control on what the company does, and is under no obligation to keep the stock.
How do you hold individual stock owners responsible? Like if Apple did start killing every first born child with blond hair, would you arrest Joe Smoe? He didn’t agree with that action the company had. His 1/millionth share didn’t allow him to vote the proposal down even if it was up for a vote.
If you wanted to punish everyone according to their share, wouldn’t you simply punish the company with a fine that way the stock would theoretically drop proportionally and dole out the punishment in a just manner. But then again, some shares have more voting rights than others. So those that voted for the terrible act should really be punished more, right? So how do you dole that out?
Stuff is complex man. Things aren’t as the should be. But tell me how they should be, and I’ll listen but Not expecting a random web comment to solve the worlds problems or even understand them.
Microsoft engages linux and open development communities much more than apple does.
They improve linux hyper-v support, they integrate the linux subsystem in windows, they develop powershell and windows ssh server in the open. they even put mssql server on linux, which is finally gearing up for a release.
But they do all that to get a piece of the cloud and container action, to stay relevant in the server market. It’s pretty obvious that containers and cloud technology really kicked them hard in the profits.
Apple took over a few linux/unix tools (like CUPS) and they keep maintaining them in the open. It’s probably less of a contribution than the ones from ms, although a welcome one. Apple’s kernel source release – i have no clue why they do it, unless they expect some sort of kernel contributions. If someone knows, i’ll be glad to listen.
I would think that’s quite obvious, lots of security people / hackers will be looking at this code to find weaknesses, and hopefully report / fix them. That alone is probably worth the effort of publishing the code….
And they only do it because they want to stay relevant to the server market. Microsoft know that any market expansion now has to be done on the server side instead of the consumer side, after their phone business died an epicly pitiful death. And the one system that dominates servers (and has done since servers were invented really) is UNIX and UNIX-likes. Microsoft knows it needs to compete with UNIX-like. They’ve tried beating them for 20 years with no significant success, so now they’ve come to the conclusion that if you can’t beat them, join them. This involves dealing with things like the GPL which requires publishing of the source code, so Microsoft is essentially supporting open-source because it has to, not because it wants to.
Apple on the other hand has very few economic reasons to support open source. Their OS is primarily based on the BSD and MIT licensed OSes of 4.3BSD/FeeBSD and the Mach Kernel, which don’t require the publishing of source code. In fact, pretty much every basic component of OSX, from the kernel to the graphical interface started out, or branched out as, open-source code. Pretty much all of it licensed under a permissive BSD-like license.
With most of the open-source code published under such a permissive license, Aplle don’t need to (by law) publish source code to any of their frameworks or applications. If anything, this helps competing companies develop compatible frameworks that could compete with Apple’s software. So in general, Apple is shooting itself in the foot every time it releases source code.
So why do they do it? I’m not sure, but i expect it’s to allow third parties to audit their code. It’s not a lie when people say open-source code is much more secure than closed source. Have 1000 eyes looking over your code is much better than just 10, and more bugs and issues can be found much quicker, producing a safer, more stable and more secure OS.
I’m glad Apple have decided to release their latest kernel code. The Darwin code base has been out of step from the OSX code base for many years now. It just makes me wonder if this is hinting at some big developments in the skunkworks of Apple. Maybe an ARM Macintosh isn’t an unlikely possibility. Maybe you’ll see it debut in the new modular Mac Pro…
Edited 2017-10-03 07:43 UTC
Because keeping something closed source these days will tend to turn into irrelevance over time.
Developers attend meetings, go to hackathons, exchange information over dedicated sites ..
Having something that only you own will not trigger any momentum and this isn’t good for business.
You forgot LLVM and Webkit.
Yeh but they stole webkit from KDE
And then was so uncooperative that it caused Google to fork and almost everyone else followed them.
Webkit is probably one of the worst examples of good open source behavior from Apple.
Stole? By forking open-source project?
Yeah, right. In a process of stealing, Webkit somehow grew 20x in size compared to original KHTML fork.
Stole, fork, whichever way you want to put it.
They could have worked with KHTML…
wait, powershell is developed in the open… somehow I forogt that. pull requests queued.
ExxonMobil invests millions of dollars into environmental restoration projects. Phillip Morris spends millions on healthcare research. Do you think such actions actually make up for the damage these companies have caused over the years?
I have nothing particular against Microsoft or Apple, I’m not trying to equate them to big oil and big tobacco. All I’m saying is when these companies contribute open source software, they are doing it for their own benefit, neither company actually believes in the concept. I’m not even talking about GNU ethos and all the software freedom stuff, I’m merely talking about he concept of openly sharing code – they do not believe in it, and if they could make all your crazy goons go away and leave them alone they would go back to doing everything behind closed doors…
They do it because they are in a world where they have to, it’s not because they want to. Both companies have learned through experience that openly fighting against OSS is bad for business, so they stopped doing that and instead try to play along. It seems to be working, because everyone seems to have forgotten how hard both companies tried to kill Linux in the crib back in the day…
At least recognize it for what it is – Self serving PR, nothing more. Stop giving them credit for it, they don’t deserve it. They get far more out of OSS than they put in, because if they didn’t they wouldn’t be doing it.
Edited 2017-10-04 04:35 UTC
No no, laws _punish_ them for doing such things, not _stop_ them.
There’s a difference.
Hmmm ….
How about you start your own “good will” software/hardware/IT/etc. company to protect us from those “evil” mega-corporations ?
Abit hard I think.
The current/potential negativities you attributed to those corporates originate not from the corporation per-se but from the collective “human fodder” that empowers these corporate entities. The “top-dogs” at the CEO level get away with what they can (be it good or bad) because of the underlying human-based support structure. Remember, we humans aren’t perfect, can be stupid, can be hypocritical, etc. and it’s no surprise that mega-corporations exist with certain “deficits”;
e.g. In a one year period, Obama signs a “drone order” to eliminate 60 terrorists and the result is about 1000 peoples get annihilated due to collateral damage;
“collateral” –> {young boys/girls, mothers, fathers} not related to terrorist activity}. Where was the massive outcry by the free peoples of the west, where was the reform. Nothing. Still, with this and other tainted-marks on Obama’s record, too many think he’s an okay guy. Note: This is an example and that “imperfections” can be found in many other leaders. Not meant to be a purely “obama hit piece”.
The problem here is that it appears you are a person of weak-mettle with, apparently unknowingly, a hypocritical nature. I say these things in regards to your statements. To elaborate:
– you believe/recognize/hypothesize/? that “corporate evilness” does exist (e.g. the “evil” Apple) with “economic self-interest” being one of the main-drivers of this “evilness”
– the ideal is for humans to be associated with the “good”
– the inference is that “corporate evilness” is a negativity and, in an ideal/? world, should not be tolerated (or at least should be avoided by the “good” people of the world)
– Finally, the “moment of clarity”, you have deep/strong understandable/passionate reservations about the “evil” corporation but still you are a “fan” of products made by that “evil” corporation (Apple in this case). Is it because:
– you cannot do your lifestyle/study/work without Apple products
– you face peer-group pressure if you avoid Apple products
– Apple products give you a relatively hassle-free workflow and you have been accustomed to this workflow and the notion of using a non-Apple workflow is just non-existant due to the “comfort-zone” imparted by the Apple ecosystem (the psychological effect of companies like Apple, which in my experience can sometimes make people “weak”)
– ?.
This all reminds me about my decision to go Microsoft-free. In terms of my primary {OS, software development platform}, I have been Windows-free since early 2009. I switched to OSX back in 2009 (iMac) and has been a good “it just works” experience. However, I am steadily migrating to FreeBSD platform due to Apple’s non-interest in maintaining OpenGL and Apple’s lack-lustre GPU support.
My software/programs are first developed on a unix box and optionally ported to Windows if required. My {build/software tools, code libraries} are compatible with cross-platform development and this is a big bonus. For software construction, a unix type system is just “too great”. I was never happy back then about Microsoft’s monopolistic tricks but dropping Microsoft stuff was more for pragmatic reason in that a unix-type environment offered/offers better software development workflows.
While I do agree that there are corporate entities that are not across the board “well-natured” I do believe that:
– people make corporations and the collective “fault” of the people gives rise to the uber-fault of the corporation
– people are not perfect
– there can be a middle point where you can agree to disagree and still be able to have some “pseudo” comfort from the “good” output provided by a corporation
– if someone passionately believes that a “corporate” entity has done an unforgivable “wrong” or “wrongs” then that person should definitely seek solutions outside that corporate’s technological offerings. This way, that person can escape the hypocrite-tag.
For me at least, the last point reminds me of Intel’s criminal behaviour in attempting to cancel AMD’s access to lucrative computing sectors (e.g. Intel paying Dell/etc hundred-of-millions (near-billion) dollars of annual “rebates” so that AMD gear is not purchased. This was a massive crime to the consumers of the world, all thanks to Intel. My response to this is for my next box to be a AMD Ryzen-based one. If I considered my next system to be a new-generation Intel-based one even if it were cheaper then I would be a hypocrite. But the way it stands, the new AMD Ryzen platform is better bang-for-back and a more interesting platform.
FYI, these are just some philosophical “ramblings” and in no way meant represent any personal attacks.
The stuff the promised to open up they never did… like Facetime.
I don’t think they can. If I remember right, there was a patent troll involved with some of the aspects of FaceTime. Then again, given the reception they’ve gotten from the so-called open source community so far, why take the trouble? They’d just be told it wasn’t open enough anyway.
Apple engages with the open source community. It’s just they do a lot more taking in than contributing back.
MS also opensources a lot lately, and code which they not simply ~adopted from the outside (as is the case with majority of Apple contributions) but developed in-house (.Net framework comes to mind)
It’s just a dump of the generic kernel crap. Nice of them to open source it, but next to useless to anybody (hence why they open sourced it)
For microprocessor freaks this dump provides important insight about the Apple SoC: hardware registers, bug workarounds, etc.
Agreed… unless they do their development in the open it’s just a code dump. Looking at their commits, it’s literally just tarballs shoehorned into a Git repo.
It’s not really useless. It’s the entire kernel, GRUB can boot it, several init systems work on it, and most of the GNU userland (at least certain versions) run on it, including X11.