Darwin Source Completely Available
The AC crowd were the first to write in with the news. From Wilfredo Sanchez's diary at Advogato, "Today another big milestone has come up. I imported the sources to the kernel into the Darwin CVS repository today, which means that at this point all of the sources needed to build Darwin are available externally for the first time." For those not in the know, Darwin is the foundation on which MacOS X is based. It's a BSD Unix, including significant contributions from the NetBSD and FreeBSD kernel and userland code.
Aqua is NOT just a theme. It is a GUI. And the fact that you can take it out of the appearance manager does not make something as trivial as a set of widgets. Shit, I can take TCP/IP out of the OS...does that make it a theme or something marginal? Aqua is also 1) a set of OS HMI guidelines. They are different than the Mac HMI drawn up by Tog, but there are development docs on the website. Part of the problem, and it is very evident in the GUI flame wars here, is that half the people here can not tell a theme from a whole, operational, coherent, well-plannned and implemented GUI. Gnome and KDE can not even compare. You are very right. Apple has zero to gain and all to lose by opening Aqua or Quartz. These are their new crown jewels. Just like the look and feel of the OS 6-9 was.
1. Darwin and FreeBSD share kernel code (above the lowest level, where Darwin is Mach-based), from what I understand, and Darwin and NetBSD share userland code (i.e., I believe a lot of the userland was pulled over from NetBSD). So, it should be relatively easy to pull out userland from Darwin and try to run it on a NetBSD system. As for kernel code... I don't know. Yet.
;), and you can also have users that can only login to one machine. You can carry this up to as many levels as you want, and in large settings could be quite useful.
2. It's under the APSL.
Some of the Darwin code has already been brought over to other systems, notably (IMO) the NetInfo stuff.
For those that don't know, NetInfo is a configuration system like NIS, in that a particular system serves up all the machine-inspecific information (like hostnames, network printers, users, etc.). Unlike NIS, it provides for multi-level domains, so (most basically) a single server provides generic information to several computers, and then each computer provides through NetInfo information for itself.
It gets better, though, when you add more machines into the mix -- you can have users (like the CTO, maybe?) that can login to any machine, and then users that can login to any of the machines in a particular dept. (like if you have cubicles on a first-come, first-serve basis -- ick
--Matthew
The main advantage a new UNIX (or at least POSIX as in the case of BeOS) OS has is that there is a large base of open source utilites and apps that are already ported to a large number of architectures and (Unixlike) OSes. It is relatively easy to port these to a new kernel and/or libc and have a new OS, but only if the OS is Unixlike. This is advantageous for the OS maker because the initial investment is smaller, and advantageous for users since they can continue to use their open source apps and have a chance of convincing their closed source vendors to port things.
I doubt we'll ever see VMS on a non Digital/Compaq chip, and certainly not on a 32 bit one.
--
"L'IT c'est moi!"
---
Why release the source to BeOS? So they can put it into Linux?
---
Not at all - I never said they should. I'm just saying that if someone is going to point fingers at Apple, they should take a look at whose side they are on. So far, Apple has been every bit as open as Be has been - even moreso, actually.
---
Would you please get your info before you speak out your ass...
Show me a free Linux distro that comes with...
---
I disagree - Be would offer the full install if they were truly going 'free beer' (BeOS 'lite' is crippled and you know it). Also, you seem to be under the impression that I'm a hardcore Linux user bashing BeOS - patently false. The BeOS is probably one of the cleanest OS implementations I've ever seen, and was my primary OS for some time. My issue isn't with the OS, it's with Be. Stop flaming me for a second and listen to what I'm saying.
Talking out one's ass, indeed.
---
Wanna bet? Jobs is scared.
---
Maybe, but not of Be. Once again, I am not flaming the BeOS - a great OS. I am just saying that Be does not pose a threat to anyone at this point. The apps aren't there, the developers aren't hanging on like they should be, Be keeps changing their damned mind on where they want to go, etc. It's not exactly a platform people are putting faith in. The buzz in the Be community (and from Be itself) is with their IA plans. They've pretty much given up their future on the desktop.
---
A lot of stuff is still closed. Why did the LinuxPPC team have to reverse engineer the G3 then?
---
Because they didn't have anyone spoon-feeding them information. I never said Apple has engineers helping these guys out - that's how Apple stays in business, by worrying about their own multitude of problems.
However, Apple hasn't done anything to stand in the way of alternative operating systems - they're just not going to do the work. After all, if Apple were so terrified of Be or the Linux/BSD people, where did MkLinux come from? How about Darwin? It just doesn't make sense.
---
They are hacked OSs.
---
MkLinux wasn't hacked. It was done with Apple's blessing and with help by paid Apple engineers. Darwin is not a hacked OS, it's the core of MacOS X.
And for a hacked OS, LinuxPPC works pretty damn well.
Seriously, though - what has Apple got to lose by letting Be sell an OS for their hardware? If you were an Apple stockholder, which would be best?
1. BeOS + Intel hardware = 0% profit
2. BeOS + (MacOS + Mac hardware) = 100% profit
3. MacOS + Mac hardware = 100% profit
I'd say #2 and #3 are far better than #1. Apple simply doesn't have any reason to block Be out. They make their cash from the hardware, and it's not like they're going to stock bundling the MacOS any time soon. At worst it'll lose them upgrade sales and maybe some 3rd party developers, but that's better than losing it all to the 'other' platform, no?
Think about it. Apple is more rational now than it has ever been. They wouldn't turn down a good thing, even if it isn't the best thing.
---
Well, we'll see. Right now there are literally hundreds of thousands of people trying out BeOS.
---
I hope they do well. The BeOS is simply too good to die - then again, the same has been said before of great technology...
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
What is Darwin OS?
Darwin is a complete operating system based on the
foundation technologies in Mac OS X Server. It is an advanced BSD Unix system which offers advanced
networking, services such as the Apache web server,
and support for both Macintosh and Unix filesystems.
That's a direct snippet from: Apples Darwin page.
Forgive the copy & paste, but since there don't appear to be any links to this yet, here it is.
You make a lot of good points, but some of them only make sense if they were said two years ago. The Mac is gaining in marketshare. When they hit bottom back in January of '97 or so, they were down to around 3-5% (I'm not sure of the numbers offhand). Now, the iMac line has become the best-selling computer model in history, and their marketshare has climbed back up to around 12-13%.
My university has a similar situation, where few people use the Macs. However, our IT department is smart in this area, and continues to support them and upgrade them. There are some areas of campus where they are used heavily, such as in the Art department, but even in other areas some users appreciate them. Most people I've come across gravitate to the PCs not because of software (both sides are generally outfitted with the same things, MS Office, browsers, and the like) but because it's what they're used to. When asked why they don't use the Macs, they respond that they don't like them, and can't say why.
Apple tried to take over the world once, and failed. Some would say that Microsoft beat them to it. In any case, I think they have learned from that experience. Now they aspire to be the luxury car manufacturer of the computing world. They realize they don't need to take over or be everything for everybody. They simply make a damned good product, and their twelve percent is just fine.
Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
Cocoa is not an abstraction layer, it's an application development framework (i.e. collection of core classes) much like JDK, only worlds better.
I don't work for apple, so everything you read here is conjecture. I think the original choice to go with BSD was based partly on the license. The BSD license has no REQUIREMENT to share source code, so if they decided to keep it closed they had the option.
Also, it's my understanding, that OpenBSD has one of the tightest and most secure TCP stacks around. That's why CISCO uses it in their routers.
Just my $.02
Don't believe that Apple has changed it's tune. BeOS had to abandon Mac hardware PPC support because Apple refuses to release documentation on their hardware--even under NDA!
You don't think Be's decision to drop PPC support could have anything to do with Intel's major investment in Be? Are you sure you know who's "bullsh*ttng" you?
BeOS has the cleanest and most intuitive UI available for any OS. BeOS ease of use cuts into Apples core market.
What a joke. Apple's real core market (the one Apple actually makes most of the money off of that is), is pro graphics. BeOS is not serious competition in this market; Adobe owns this market, and doesn't seem to care about Be.
If Be Can't succeed on Intel, how do you expect it to succeed on a platform 1/10 as popular? A platform that people buy for its hardware software integration (and thus are less likely to install a 3rd party OS on)? Be's problems have very little to do with Apple.
In any case, just because Apple won't give things away to competing companies doesn't mean Apple isn't serious about open source for the benefit of developers and users.
--
This space unintentionally left unblank.
A Microsoft OS
A Unix
Consider:
FreeBSD
NetBSD
OpenBSD
Linux
BeOS (Which certainly has a lot of userland stuff fron Unix)
Solaris for Intel
And now Darwin.
As a sad old Unix hacker, this makes me happy. But is there no other architecture out there? How about MVS for Intel? VMS? OS/400?
Or is it just that Unix is so far technically superior that it is the only realistic option?
1. Apple has provided two open-sourced operating systems. Be is 99% proprietary (the only open part being what they had to open-source due to licensing conflicts).
/boot/apps on a 80 gig BFS partition. There's nothing to stop you from doing that. It also seems to me that you can just use Installer once it is loaded and install into the 80 gig drive from there. There are probably some things that could have been done better, but it is hardly crippled. And when Linux can edit digital video in realtime as well as my "toaster" OS, I'll think about switching.
>>>>>>>
Why release the source to BeOS? So they can put it into Linux? Face it, Darwin is not an Open Source OS. It is simply the Open Source Mach kernel with the Open Source BSD code around it. The only thing Apple did was to not take advantage of the BSD license and released the code. Open Sourcing MacOS X is nothing. Nobody will use it in its current form, people will use MacOS X for the GUI apple chooses to keep closed.
2. BeOS 5.0 is crippled, and just an attempt to get people interested so people will code for these supposed Be-powered toasters and set-top boxes. It's obvious Be is giving up on the OS front. Threat? Not likely.
>>>>>
Would you please get your info before you speak out your ass. BeOS is just about as uncrippled as a free commercial OS can be. 1) There is no SMP support if you boot from the file. That is not due to any technical limitation, just a limitation on how Windows leaves the system. 2) Some of the commercial stuff does not come with it. Why should it? Show me a free Linux distro that comes with RealPlayerG2. The stuff that is taken out is propriotory stuff that COULDN'T be released because of license costs. In all other respects, its the same OS. As for the diskfile, you can mount any partition you want. Install the OS to a 512 meg file, and mount
3. JLG, head of Be, is largely responsible for Apple having been so closed in the past. He was one of the biggest critics of cloning back when he was at Apple. Read up on his history - he's a smart guy, but he's not perfect.
>>>>
Yea, true. There were a lot of harsh relations between the two.
4. Be realistic. Jobs doesn't care about the BeOS one way or the other - he just knew that it wasn't Apple's job to subsidize Be's development. Should Apple pay Be's dev costs? Not now, and esp. not back when they were practically dead (ie. around when Be started backing away from PPC, coincidentally).
>>>>
Wanna bet? Jobs is scared. Why do people use the MacOS? Newbies use it, and media professionals use it. If they can get it done better on BeOS (quite a few media apps are being ported) why stick with apple OSs? In the end, if a large media app base moves to BeOS, Intel would get a major part of those because its hardware is cheaper (and for 3D)faster and more available. Why did they help out Linux development (MkLinux) and not BeOS? Its not like Be is asking them to write code for them. All they want is an official manual with the specs.
5. If the Mac platform is so closed, explain: LinuxPPC, MkLinux, Yellow Dog Linux, BSD, and Darwin. I'll wait.
>>>>>>>
They are hacked OSs. Face it, all of those OS reverse-engineered the system specs. BeOS doesn't want (or doesn't have the manpower) to reverse engineer stuff. Remember, they are a real company with investors to answer to. You can bet that if they did they'ed get hit with a lawsuit pretty fast.
6. Conveniently timed Intel investment? Hmm...
7. ROM in RAM architecture, move to industry standard components, etc. This is a platform being opened-up, not closed.
>>>>
A lot of stuff is still closed. Why did the LinuxPPC team have to reverse engineer the G3 then?
All the while, Be has been switching business focus repeatedly, meaning (to me) that they just can't do it. Be is not a threat to anyone - if it was only judged on its technical merits, it'd be sharing the market with the MacOS and Linux, and Windows would not exist.
>>>>>
Well, we'll see. Right now there are literally hundreds of thousands of people trying out BeOS. 30K in one german server alone.
A deep unwavering belief is a sure sign you're missing something...
alright, so now that all of Darwin is open, and Be just recently opened their UI and tracker, can i be the first to try to port the BeOS component ontop of Darwin and finally be able to run "Be" on my G3? :)
hah.
- j
The GPL is stricter than the BSD License. The BSD License lets you do anything you want. The GPL is almost anti-commercial and definitely makes it hard on proprietary software coexisting with non-proprietary software. The GPL forces your product to remain open and restricts what you can do with it, reducing a companies flexibility in the future. Don't get me wrong, I'm not complaining about any of this... just stating the facts. They aren't "bad" or "good", but they come into play when a company deciedes whether they should use one or the other.
The announcement was that it had cross-compiled... (on PPC). In fact, all user utilites (except emacs) are cross-compiled nightly. support for x86 devices is limited right now, so AFAIK, nobody has *used* it on x86. Someday soon, though...
Neat, eh?
Wow, it almost seems like Open Source... ;)
BTW, my source? Ernest Prabhakar himself (Head Honcho for CoreOS aka Darwin) on the darwin-developer@public.lists.apple.com mailing list, Feb 15, 2000:
> How much of what happens with Darwin between now and the release of OS X client in summer (keep the fingers crossed) will actually end up in OS X client.
Our goal is to make (most of) the CVS repository "live", so that (external) Darwin developers and Apple engineers are working on the exact same code base. Obviously at some point we'd "freeze" a version for our bake cycle, but the goal is that the vast majority of the time *all* external Darwin modifications go directly into Mac OS X.
We're actually pretty far along with this, if you look closely at the repository. The problem is that the current Darwin OS 0.3 release is NOT synced up with the CVS repository. We're trying to fix this as soon as we can.
Good enough for you all?
This is the point that you turn off your little 'network appliance' and think things through.
1. Apple has provided two open-sourced operating systems. Be is 99% proprietary (the only open part being what they had to open-source due to licensing conflicts).
2. BeOS 5.0 is crippled, and just an attempt to get people interested so people will code for these supposed Be-powered toasters and set-top boxes. It's obvious Be is giving up on the OS front. Threat? Not likely.
3. JLG, head of Be, is largely responsible for Apple having been so closed in the past. He was one of the biggest critics of cloning back when he was at Apple. Read up on his history - he's a smart guy, but he's not perfect.
4. Be realistic. Jobs doesn't care about the BeOS one way or the other - he just knew that it wasn't Apple's job to subsidize Be's development. Should Apple pay Be's dev costs? Not now, and esp. not back when they were practically dead (ie. around when Be started backing away from PPC, coincidentally).
5. If the Mac platform is so closed, explain: LinuxPPC, MkLinux, Yellow Dog Linux, BSD, and Darwin. I'll wait.
6. Conveniently timed Intel investment? Hmm...
7. ROM in RAM architecture, move to industry standard components, etc. This is a platform being opened-up, not closed.
8. BeOS is very easy to use, and a great OS overall. But Be's whining about Apple has gotten very old, esp. as Apple has made their platform MORE open. It just doesn't stick.
All the while, Be has been switching business focus repeatedly, meaning (to me) that they just can't do it. Be is not a threat to anyone - if it was only judged on its technical merits, it'd be sharing the market with the MacOS and Linux, and Windows would not exist.
Face it: Be was tempted by the size of the Intel market, and bolted. Now, they've realized that they're screwed going that route, and are jumping into yet another market (so-called 'Internet Appliances'). Good luck, but I just don't see it happening...
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
Will run classic MacOS and Rhapsody apps through abstraction layers (carbon and cocoa)
This isn't quite right. Mac OS X will support three API's (4 if you count Java) Classic, Carbon, and Coacoa.
Classic is basically Mac OS 9 running as a single process inside the Unix environment. It has a number of enhancements that make it work nicer with non-classic apps, but basically it's just a Mac OS emulator. It will allow users to run their old apps right out of the box, but without the benefits of protected memory and preemptive multitasking.
Carbon is a subset of the existing Mac OS API that allows developers to quickly "tune up" their apps to take advantage of the modern OS features. It provides a gentle migration path for existing users, and is designed to allow developers to make minimal code changes. Each Carbon app is a full Unix process, with all the advantages of preemptive multitasking and protected memory.
Coacoa is the Next-derived API that is based on OpenStep and Objective C and was originally slated to be the only API offered in Rapsody. This is an object-oriented API that I've read is one of the best development environments ever created. Apple presumably sees it as the future of the platform, and will be encouraging developers of new products to use it rather than carbon.
So Coacoa and carbon are not simply abstraction layers to an underlying API. They are themselves full-blown API's.
Most likely because MacOS X is based on NextStep/OpenStep and OpenStep uses Mach & BSD kernel. Also, Apple probably wants some control over their code. Their custom license gives them control; GPL doesn't.
...should be ready soon.
2 -14.01.html
The OS X Server version is already running - http://www.stepwise.com/Articles/Workbench/2000-0
With the GPL there would have been ACs all over them from day one to release their unworkable alpha code (cf Corel). Anything they derived from Darwin (the rest of Mac) would need to be sourced as well, but I suspect they have NDAs with other companies that prohibit this.
I could go on an on, but I'll stop. In short, a BSD or MIT license allows a company to go Open Source without inadvertantly running afoul of someone else's copyright.
A Government Is a Body of People, Usually Notably Ungoverned
Apple is exposing (correct me if i'm wrong here) three APIs-- one for Darwin, which is most of the BSD/Unix api's, one for "Carbon"-- halfway between old-style mac stuff and the newest-coolest, and "Cocoa", which aside from being a lame reference to Java, should provide real advantages in speed, and of course stability. Did I get that right?
anyway, it looks like lots of Linux stuff should now be trivial to port to mac, and THIS IS GOOD FOR EVERYONE because it means that Windows will have less software than Mac or Linux. cool.