徐继哲

徐继哲的分享

他的个人主页  他的分享

Apple’s Operating System Guru Goes Back to His Roots

徐继哲   2013年08月10日 星期六 14:41 | 0条评论


Image: Flickr/Tiger Pixel

 

That iPad in your hand? It feels like the most modern of computers. But like the iPhone and the Macintosh, the Apple tablet revolves around a core piece of software that can trace its roots all the way back to the early 1970s. It was built atop UNIX, the operating system originally created over 30 years ago by researchers at AT&T’s Bell Labs.

UNIX is the same software that gave rise to Linux, the open source OS that drives Google Android phones and underpins so much of the modern internet. Apple founder and CEO Steve Jobs once tried to hire Linus Torvalds, the irrepressible Finnish coder who created Linux and gave the thing its name.

But Torvalds said “No,” and not long after that, Apple hired Jordan Hubbard, the creator of FreeBSD, a lesser known, but still thriving, open source operating system based on UNIX. It was a better fit: Mac OS X shares conceptual roots with Linux, but it shares honest-to-goodness code with FreeBSD.

Hubbard left Apple last month to return to the world of open source UNIX, taking the chief technology officer post at a iXsystems, a company that offers servers and other data center hardware that runs FreeBSD. Apple was quite an education, and now, he wants to bring the “Apple approach” back to the open source game.

The trick with Apple is that the software it builds is so polished. Its operating systems don’t feel like “tool kits.” They feel like the finished article. Hubbard believes open source OSes should feel the same. “Most open source people make tool kits,” he says. “They’re good tool kits that have been used in everything from Tivos to phones, but they’re still just tool kits.”

It’s telling that during his 12 years at Apple, Hubbard didn’t contribute code to the open source project he himself had founded. In many ways, the sort of commercial software built by Apple is a step beyond the OS code that’s shared with the world at large through open source projects — especially in terms of the user interface — and Apple is loath to give away its advantages.

But there’s also a certain kinship between Apple and the world of open source operating systems.

Straight Outta Berkeley

The code at the heart of Mac OS X was born in the mid-1980s at NeXt Computer, the company Steve Jobs founded after his first stint at Apple. NeXt built a operating system based on two existing UNIX projects: Mach, from Carnegie Melon University, and BSD, created at the University of California at Berkeley. But on this base, they added their own, private code — such as the Cocoa programming framework and a graphical user interface — hoping to provide the sort of slick software environment pioneered by the Apple Macintosh.

Apple acquired NeXt in 1996, bringing Jobs back to the company. It was soon announced that the NeXt operating system would become the basis for the new Mac. Mac OS X, in turn, gave rise to the mobile iOS. Both Apple operating systems still include code files tagged with the NeXt name — and both are directly descended from a version of UNIX called the Berkeley System Distribution, or BSD, created at the University of California, Berkeley in 1977.

‘FreeBSD was born out of frustration because we had so many different versions of UNIX. Every one of them was different. It drove me crazy.’

 

— Jordan Hubbard

The same goes for Hubbard’s FreeBSD, as the name implies. Hubbard got his start with BSD in the early ’80s as a high school student, and later went on to become a professional UNIX programmer. In 1993, together with fellow coders Nate Williams and Rodney W. Grimes, Hubbard created FreeBSD as a way of unifying the UNIX world, roping in code from the original BSD and a successor called 386BSD, created by a Berkeley alum. He and his partners wanted a single open source version of UNIX that would run on standard machines equipped with standard Intel chips.

“FreeBSD was born out of frustration because we had so many different versions of UNIX,” Hubbard says. “Every one of them was different. It drove me crazy. I said: ‘I could just develop my own and then make sure everything worked and was polished to some degree.’”

FreeBSD wasn’t meant for desktops or laptops, though it could run on them. It was meant for servers and devices embedded in things like network switches and routers, and by the late ’90s, it had found its place in the world. Cisco used it to power some of its networking gear, and web companies like Yahoo and Hotmail (before it was acquired by Microsoft) ran FreeBSD on thousands of servers.

Along with Linux and the Apache web server, it became one of the defining open source projects of the 1990s. “Jordan did a good job of helping the open source community step it up a notch,” says Dug Song, a veteran open source coder who worked through that period.

But Hubbard wanted more. He wanted to put FreeBSD on the desktop. And that’s why he went to Apple.

Jordan Hubbard. Photo: Xsystems

The NeXt Step

Apple released a preview version of Mac OS X in September 2000, and Hubbard went out and bought his first Mac just to try it out. He was more than impressed. The most interesting thing about the new OS, he says, was that it provided polished developers tools that made it so easy for coders and software companies to build their own applications for the platform. It was a far cry from the world of BSD and Linux.

“There’s a reason you don’t see Photoshop and those types of applications on open source UNIX,” he says. “It’s a considerable amount of work if you’re a company like Adobe and you want to build something.”

But at the same time, he felt right at home. Darwin, the core of Mac OS X, was open source and included quite a bit of code from FreeBSD. He called a friend who worked at Apple and went to work for the company the next year. At first, he oversaw the company’s BSD work and focused on modernizing the UNIX code for the desktop, but he eventually moved up the chain of command, handling security and energy efficiency efforts for Apple’s operating systems, including iOS as well as Mac OS X.

The rub was that he couldn’t continue work on FreeBSD. And although much of Hubbard’s work for Apple was released as part of Darwin, much of it was kept behind Apple’s closed doors.

“We had to do a lot of things the open source UNIX developers didn’t have to think about — like figuring out how to put UNIX on a phone but make sure that you can still make a 911 call or how to keep the battery from dying in one hour,” he says.

Return to the Source

Then, earlier this year, he got the itch. After 12 years on desktop and mobile, he wanted to get back to servers — and FreeBSD. “It was just time,” he says. “Twelve years is a long time to do anything, particularly in tech. You need to rotate your tires.”

Linux has eclipsed FreeBSD as the poster child for open source operating systems, but FreeBSD is still widely used. Google uses the OS and contributes to the open source project, according to the company’s open source guru, Chris DiBona. And Hubbard believes FreeBSD can still hold its own against Linux.

“It has greater provenance,” he says. “If I’m going to buy a car, I want to buy one from someone well established.” He also says the project is more transparent and holistic than most Linux distributions. “You want a single source tree with everything that goes into the system? You have that with FreeBSD. It’s clear what parts go into it.”

‘FreeBSD has greater provenance. If I’m going to buy a car, I want to buy one from someone well established.’

 

— Jordan Hubbard

While thinking about what to do next, his attention quickly turned to iXsystems, a company that sells FreeBSD servers and consulting services. In 2002, iXsystems once acquired the server business of one of Hubbard’s previous employers, BSDi, and three years before he left Apple, he purchased a iXsystems file server that runs the FreeBSD-based FreeNAS system.

“I could have gone to another Fortune 500 company,” he says, “but I wanted to do something different. I didn’t want to be a small fish in a larger pond.” As CTO, Hubbard will oversee the company’s tech strategy, and he’s particularly interested in bringing the Apple approach to the company’s storage hardware. Yes, its storage hardware, the appliances use to hold massive amounts of data inside businesses and web giants.

What does his departure mean for BSD at Apple? Apple didn’t respond to our request for comment, but Hubbard says that BSD and Apple aren’t parting anytime soon. “I certainly left a lot of believers behind. I was by no means the only advocate,” he says. “I probably wouldn’t have left if I didn’t think it was in good hands, if I hadn’t had years to groom successors.”

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !

暂时没有评论

Zeuux © 2024

京ICP备05028076号