|
|||||||
| Register | Members List | New Posts | Mark Forums Read |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Kasper's Automated Slave
Join Date: Nov 1997
Posts: 6,166
|
Apple Open Sources Snow Leopard's Grand Central Dispatch
Despite being a unique, key marketing feature of Snow Leopard, Apple has decided to open the code behind Grand Central Dispatch under the liberal Apache 2.0 license.
Snow Leopard's new Grand Central Dispatch feature, which serves as a system-wide mechanism for managing parallel task execution across multiple processor cores for developers, involves multiple components in the operating system. The user-space implementation of the Grand Central Dispatch services API, called libdispatch, has been delivered as its own open source project, joining with other components that are part of projects Apple has already designated as open, including the kernel components in the Darwin OS XNU kernel and the blocks runtime that is part of the LLVM project. Apple's code giveaway was "something of a surprise," according to MacResearch, a website covering the use of Apple technologies in the scientific research community, because the new feature of Snow Leopard "could be seen to give Apple a competitive edge in the new world of multi-core." However, opening the code to the community could help pave the way for its adoption. Writing for MacResearch, Drew McCormack noted, "Until today, it would have been very unlikely that any new UNIX tools would be developed on Mac OS X using Grand Central, simply because they would only run on the Mac. With the possibility that Grand Central will become available on other UNIX systems, the likelihood that Grand Central will be incorporated into command line tools is greatly increased." McCormack said there was little risk to Apple of sharing its new code, saying that it was "unlikely that Grand Central would be used by any direct competitor to Apple, like Microsoft," and noting that its adoption by other Unix and Linux systems would not "really pose a threat to Apple’s consumer-based business." Apple contributes to and runs a variety of open source projects, from WebKit to CUPS. Some efforts to open source its code have been wildly successful, while other have seen little enthusiasm. For example, there has been no real interest in Apple's launchd among the greater open source community out side of Mac OS X, in large measure because it would require a massive reworking of Linux in order to put it to use. Open source support for other Apple code that is easier for others to use has been a mixed bag. There has been some limited use of Darwin Streaming Server, Apple's RTSP streaming project incorporated in Mac OS X Server as QuickTime Streaming Server. Webkit has been wildly successful, particularly in the mobile arena. Bonjour has been implemented for Linux, and taken in new directions. Significant new outside interest in Grand Central Dispatch could result in a wider support base for building parallelism compatible with Apple's other open technologies, such as OpenCL. The availability of the dispatcher on Linux and other Unix operating systems would also help generate demand for other command line utilities that tap into its power. That would help Apple leverage its technologies in markets where it has a minority position, such as in the enterprise and supercomputing. |
|
|
|
|
|
#2 |
|
Registered User
Join Date: May 2005
Posts: 264
|
Clearly a move against Microsoft Windows ... the ground work for further Mac OS X and 'X' adoption will be the trend in the next few years.
|
|
|
|
|
|
#3 |
|
Registered User
Join Date: Mar 2009
Location: Texas
Posts: 104
|
What a surprise
A major software effort and now they are releasing it? They obviously believe strengthening Unix in general will strengthen OS X.
|
|
|
|
|
|
#4 |
|
Global Moderator
Join Date: Nov 2001
Location: Seattle, WA
Posts: 10,465
|
A good idea all the way around
Very little risk indeed.
Grand Central Dispatch is technology with great promise but that hinges on its ability to be integrated into tools and put into use. Apple only benefits by having the technology in more hands and it certainly helps OpenCL's chances as well. |
|
|
|
|
|
#5 |
|
Registered User
Join Date: Apr 2003
Location: Independence, MO
Posts: 9
|
So much for the critics that have charged Apple only takes from the FOSS community and doesn't give back. Glad to see that a legitimate company can make money while still benefitting the FOSS community. Not all companies have to be Microsoft to get ahead.
NW '98
"Everything works, in theory..." |
|
|
|
|
|
#6 |
|
Registered User
Join Date: Dec 2007
Posts: 72
|
So uh... When can I expect to see this in Ubuntu?
Ariel
GreenLeaf Imaging |
|
|
|
|
|
#7 |
|
Registered User
Join Date: May 2009
Posts: 34
|
What about the mail server
Because of Exchange, Mac users at work are being forced to use Entourage/Exchange for email.
It would be ideal if Apple could release a robust, user-friendly, feature-filled open-source mail server. We need an "Exchange killer" to stem the tide of migrations from unix mail systems to Exchange. |
|
|
|
|
|
#8 |
|
Registered User
Join Date: Oct 2007
Posts: 644
|
|
|
|
|
|
|
#9 | |
|
Registered User
Join Date: Jun 2006
Location: Northern VA
Posts: 40
|
Quote:
If you're talking about Exchange market share, Apple's addressed the functionality in the latest Server product. Time will tell but nothing says Microsoft's hegemony must or will continue if the functionality exists elsewhere, and it does. |
|
|
|
|
|
|
#10 | |
|
Registered User
Join Date: Dec 2008
Location: France
Posts: 993
|
Quote:
|
|
|
|
|
|
|
#11 |
|
Registered User
Join Date: Jun 2008
Posts: 888
|
Gusty move by the smartest software developer on Earth. Lets hope this paves the way for total Windows PC humiliation.
|
|
|
|
|
|
#12 | |
|
Registered User
Join Date: Jan 2008
Posts: 401
|
Exactly. The first sentence should have begun:
Quote:
MA497LL/A FB063LL/B FB683LL/A MC137LL/A FB463LL/A
XK1 0141102 0107430 You can't do a Google search while talking on the Google Phone! |
|
|
|
|
|
|
#13 |
|
Registered User
Join Date: Feb 2009
Location: Prague
Posts: 17
|
|
|
|
|
|
|
#14 |
|
Registered User
Join Date: Jan 2008
Posts: 332
|
Not the style of Microsoft. They usually don't port existing technologies but rather try to copy the technology function in something of their own, that way they can make it proprietary so that developers can't create apps that are cross-platform. Why do you think opensource hates Microsoft so much, they take all their good ideas & ruin the tech market by developing their own poorer, incompatible, cousin.
![]() |
|
|
|
|
|
#15 |
|
Registered User
Join Date: Feb 2005
Posts: 3
|
I don't agree with this. Cloud-based solutions are where the industry is going. Google's premium apps is a prime example of this. The days of maintaining your own server are numbered, at least for small-medium sized businesses.
|
|
|
|
|
|
#16 |
|
Registered User
Join Date: May 2009
Posts: 34
|
What about government and education?
Please correct me if I am wrong, but state and federal government institutions require that email reside on servers owned by them. Apple should at least cut universities some slack...........
|
|
|
|
|
|
#17 |
|
Registered User
Join Date: Oct 2008
Posts: 10
|
|
|
|
|
|
|
#18 |
|
Registered User
Join Date: Nov 2006
Location: Arizona
Posts: 334
|
Indeed! I would love to see my ubuntu server run circles around all the video trans-coding I have it do over night!
openSuSe 11.2, 32 and 64 bit, for Mac and PC!
"Shiny capt'n. Everything thing is A-Okay." |
|
|
|
|
|
#19 | |
|
Registered User
Join Date: Jan 2007
Location: methane seas of neptune
Posts: 1,487
|
marks fixed words
Quote:
Hey mr kasper the whole world reads here . Looks so tacky when your writers can't spell. This is a great web site filled with cool people , peace 9
Change your company's name. Not that big of a deal.
The Beatles . |
|
|
|
|
|
|
#20 | |
|
Registered User
Join Date: Mar 2008
Location: NoVA
Posts: 454
|
Quote:
I'm sincere - if you have something that can substantiate your claim please provide it as it would be most useful. |
|
|
|
|
|
|
#21 |
|
Registered User
Join Date: Nov 2001
Location: The UK of Englandshire
Posts: 985
|
This is to help facilitate the adoption of 'blocks' as part of the ANSI C language spec. These things take years of course but the concurrency stuff Apple have created is very, very cool and deserves wide adoption in Unix circles. Microsoft will of course have some overly complex fucked-up 'extended' version of it at some point.
|
|
|
|
|
|
#22 | |
|
Registered User
Join Date: Jan 2009
Posts: 14
|
Quote:
You DO know they ripped their entire OS off of BSD don't you? Their expertise is at picking source code from the community that comes with just the right license so they don't have to give back to the community any more than the absolute minimum. This project is NOT a significant gift. At most it might prove useful once compilers manage to incorporate parallel processing techniques so that multi-cores can be utilized easily. This project requires that the programmer build all of the parallel processing constructs, built his own processing queues, and feed those queues appropriate blocks of code. Those programmers working on projects that need this level of micromanagement already have other tool sets for this. But the important thing is very few projects need this, and there is significant debate as to whether this belongs in the hands of application developers at all. |
|
|
|
|
|
|
#23 |
|
Registered User
Join Date: Jun 2009
Posts: 30
|
That's simply not true. First of all, you cannot rip off BSD licensed code being as it's open source and has a very liberal license. Second, booting the mach kernel and using only BSD derived tools like ls or mv certainly isn't the same thing as booting full blown OSX which is heavily based on Apple's own first party closed source code. Third, and perhaps most importantly, NeXT and Apple have done most of the work maintaing the mach kernel over the last 2 decades or so. Parts of FreeBSD are based on mach but it's an entirely different codebase. The common ancestry of the two is far in the past. Apple certainly builds on a number of OSS projects such as samba, CUPS, gcc, etc. Apple uses custom builds of many of these projects and publishes their source changes. In some cases they do submit code directly to the main branch.
From a more technical standpoint OSX implements its own file system, device drivers (IOKit) windowing system, UI toolkit (Cocoa, Carbon), development platform IDE, boot loader, and is built on first party closed source Apple code for virtually all of the end user GUI apps such as Finder, Dock, iTunes, iPhoto, Mail, etc. Apple has used code from the Solaris code base in the form of DTrace. They have mostly avoided GPL licensed code due to the viral nature of the license that would make it difficult for Apple to mesh OSS software with their own first party closed source software So uh yeah, other than that... total BSD rip off OMG! |
|
|
|
|
|
#24 |
|
Registered User
Join Date: Jan 2009
Posts: 14
|
I think SinisterJoe needs a reminder trip thru the well hidden credits in Mac OSX. If you think the only thing they ripped off was the BSD Kernel you sir are sadly misinformed.
Its not just cups and samba. This company routinely takes open-source private. The BSD kernel was chosen so that they would not have to give back. NeXt was also pilfered, much to the chagrin of minority interest holders. Hell, Jobs even ripped off Woz. |
|
|
|
|
|
#25 |
|
Registered User
Join Date: Sep 2009
Posts: 5
|
Not to mention the major Gmail outage last week. Cloud computing is not a viable solution for mission critical applications.
Last edited by nudist; 09-11-2009 at 10:55 PM.. Reason: Typos |
|
|
|
|
|
#26 | |
|
Registered User
Join Date: Apr 2009
Posts: 11
|
Quote:
Grand Central lives at three levels. All three are open source. It is at the compiler level in gcc, llvm, and clang (all open source BSD and GPL). It is in the libdispatch library (apache open source). It is in the kernel (APSL i think). The kernel is the least open source but that would obviously have to be reimplemented for another platform anyway. Just look at all the work Apple puts in to Webkit just to have it ripped off by competitors (both commercial and open source). They are definitely giving back. LLVM, clang, cups, webkit, and calendar server are all huge projects given under very liberal open source licenses. |
|
|
|
|
|
|
#27 |
|
Registered User
Join Date: Jan 2004
Location: India
Posts: 1,451
|
Apple also open sourced XGrid and Darwin. Who uses those? GCD has some good potential, but it will take some effort by the linux community to integrate it into their distribution and the hooks required (block support in C, switch to a new compiler technology) aren't trivial to say the least.
Most of us employ the Internet not to seek the best information, but rather to select information that confirms our prejudices. - Nicholas D. Kristof
|
|
|
|
|
|
#28 | |
|
Registered User
Join Date: Jul 2005
Location: Australia
Posts: 54
|
Quote:
This is just trolling of the worst sort — a small-minded, curmudgeonly pretence at an "alternate viewpoint" designed to inflame and incence. Apple have done a pretty generous thing here, so it is just annoying to have to read your post.
-------------------------
Independence is what distinguishes probability from measure. |
|
|
|
|
|
|
#29 | |
|
Registered User
Join Date: Mar 2008
Location: NoVA
Posts: 454
|
Quote:
The code is put out there, the license is clear and when someone uses it exactly as specified they get miffed that someone doesn't use it exactly as they think it should be. Is it open or not? Free (as in beer) or not? As you point out, how is using code exactly as the terms of the license it's released under ripping someone off? |
|
|
|
|
|
|
#30 | |
|
Registered User
Join Date: Jan 2008
Posts: 401
|
Quote:
Kinda takes the sting out of your accusations, doesn't it? ![]()
MA497LL/A FB063LL/B FB683LL/A MC137LL/A FB463LL/A
XK1 0141102 0107430 You can't do a Google search while talking on the Google Phone! |
|
|
|
|
|
|
#31 | |
|
Global Moderator
Join Date: Nov 2001
Location: Seattle, WA
Posts: 10,465
|
Quote:
Webkit is a prime example of open source "give backs" as well as GCC OpenMP already allows you target Multi procs within a compiler. Nothing new here as GCD works with pre-existing MP frameworks. You obviously haven't read the GCD paper on Apple page. To leverage GCD developers must look for opportunities within their app for parallel processing and dependencies. Queue management is handled by GCD. The ease of use with GCD is precisely NOT having to manage queues. Developers have been managing (some better than others) multithreaded code for decades. That is all |
|
|
|
|
|
|
#32 |
|
Registered User
Join Date: Feb 2005
Posts: 799
|
It's a step forward in the world of multi-core but not the be all and end all. Looking at the API, it still feels like we (computer scientists) are groping about in the dark. But trying things like this is the only way to move forward, so good on them.
|
|
|
|
|
|
#33 | |
|
Registered User
Join Date: Oct 2005
Posts: 5,051
|
Quote:
Amusingly, GC is NOT available for linux since it's under Apache 2.0 and GPL 2.0 are claimed to be incompatible by the FSF. Whether this means that Linus will move the kernel to GPL 3.0 or not depends on how much he thinks GC is worth the effort. http://www.apache.org/foundation/licence-FAQ.html http://www.apache.org/licenses/GPL-compatibility.html MS has a large body of open source software under MS-PL and MS-RL. Yes, these are OSI approved licenses. |
|
|
|
|
|
|
#34 | |
|
Registered User
Join Date: Oct 2005
Posts: 5,051
|
Quote:
1) They did not use the BSD kernel. They used the MACH kernel. 2) Much of what Apple has used from the Open Source world has been improved and given back. They simply don't give away the crown jewels like Sun did. You know Sun...now Oracle? 3) You cannot rip off BSD/permissive license Open Source because you cannot steal what is freely given away. As opposed to not-so-freely given away. 4) You do not "pilfer" a company if you paid $400M for it. |
|
|
|
|
|
|
#35 |
|
Registered User
Join Date: Oct 2005
Posts: 5,051
|
Amusingly you can. Apache 2.0 has a patent grant clause so MS can take the code, refactor it for the windows kernel and enhance their GCD-like capability. They just can't call it GCD without Apple's permission.
Alas, Linux cannot. I love the irony that a license that claims to be "free" is hoist by it's own petard. |
|
|
|
|
|
#36 |
|
Registered User
Join Date: Jun 2009
Posts: 61
|
|
|
|
|
|
|
#37 |
|
Registered User
Join Date: Nov 2001
Location: England
Posts: 1,085
|
I'm an idiot. Post was wrong.
|
|
|
|
|
|
#38 |
|
Registered User
Join Date: Sep 2004
Location: Dubuque, IA USA
Posts: 2,406
|
Good strategy by Apple. Honestly, GCD is going be best used in segments where Apple has chosen not to compete very strongly. If programers learn to incorporate the APIs on the Linux/Unix side it will get better adoption on the Mac.
"Don't be trapped by dogma, which is living with the results of other people's thinking" -Steve Jobs. I guess he forgot to add "unless its mine."
|
|
|
|
|
|
#39 | |
|
Registered User
Join Date: Oct 2005
Posts: 5,051
|
Quote:
None of these feel particularly likely just because of GC. |
|
|
|
|
|
|
#40 |
|
Registered User
Join Date: Oct 2005
Posts: 5,051
|
Looking at it a little more it seems the kernel portion is released under ASPL while the userland portion is Apache.
Also MS already has GCD like functionality in .NET 4.0 in PLINQ and TPL. http://msdn.microsoft.com/en-us/magazine/cc163340.aspx |
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|