Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

Glyn Moody writes "Today is the birthday of Linus. Just under 19 years ago, on the first day the shops in Helsinki were open after the holidays, Linus rushed out and spent all his Christmas and birthday money on his first PC: a DX33 80386, with 4 Megs of RAM, no co-processor, and a 40 Megabyte hard disc. Today, the kernel he wrote on that system powers 90% of the fastest supercomputers, and is starting to find its way into more and more smartphones — not to mention everything in between. What would the world look like had he spent his money on something else?"

The 386SX was a 32 bit processor internally but had a 16 bit data bus. The 386DX was a straight 32bit processor all the way through. There was a third flawed varient that had a problem switching between real and protected mode that could lock up the system. Those chips would be stamped that they were only certified for 16 bit apps. The ones that tested good had a double sigma stamp on them. Neither the 386sx nor 386dx had math coprocessors. The 486 however was a different story. The 486DX had a coprocessor but the 486SX did not.

The point about Linus's machine having no coprocessor is actually true. This made development a little iffy since floating point math had to be done in software. The i386DX actually did not have an FPU, and the coprocessor was the i387 which was not all that popular but was compatible with both the DX and SX models. It was not until the introduction of the i486 that the SX had no coprocessor and the DX had a built-in coprocessor.

I would counter that, while it inevitably would have happened at some point, it's not a given that the resulting OS would have been GPLed, and subsequently things could've turned out very differently. Happy Birthday, Linus!

There's also at least a small chance that many of the kernel hackers who work on Linux today would have been working on the Hurd kernel.

I doubt it would have happened. The Hurd hackers wanted to do fundamental OS research, and everyone else wanted a "Unix" kernel that they could just use and hack around with, and which didn't cost a lot.

I can remember that the biggest factor in our little group of hackers moving to Linux (from 386BSD) was that it had working shared libraries. OK, they sucked in many (many!) ways, but it still meant that you didn't need to have loads of copies of libc in memory or on disk at once. On the small machines of the time, that was a massive saving.

The lawsuit slowed development of the free-software descendants of BSD for nearly two years while their legal status was in question, and as a result systems based on the Linux kernel, which did not have such legal ambiguity, gained greater support. Although not released until 1992, development of 386BSD predated that of Linux. Linus Torvalds has said that if 386BSD had been available at the time, he probably would not have created Linux.

BSD 4.4 was only released in '94, due to the lawsuit, and Linux had already gained popularity.

Partly - commercial BSD derivatives and the BSD networking stack ending up in Windows 95 put off some developers - who wants to see their work being co-opted by Microsoft and other corporations in closed source products? Some people no doubt, but not the majority. Another effect of the licensing was that BSD splintered into different, slightly incompatible commercial forks. The GPL protected Linux from that fate - the free distributions were shipping more-or-less exactly the same kernel code as the commercial distributions - the general perception was that with Linux free didn't mean "less", it just meant "no telephone support". In BSD land, "free" (to many) meant "not as good as what Sun and IBM are selling".

Another factor was that BSD was seen by some Europeans as being controlled by some American labs and American universities. This made it seem less approachable - and harder to get your code into. Linus, in contrast, welcomed good patches with open arms. Linus was highly enthusiastic about people developing code for his kernel. The same enthusiasm for outsiders was not visible within the BSD community.

Yet another factor was the number of Linux distributions that sprung up. Competition is good - Debian, Slackware, Red Hat, etc. were all competing to make the best Linux distribution, and there were numerous other distributions trying to push them from the top. In contrast, BSD was more centrally controlled, and whilst there was some competition between distributions, there wasn't a great amount. Plus the licensing made forks more likely - with GPL and Linux, if someone wrote a good patch, it was highly likely that patch would end up in all Linux distributions fairly rapidly. The same could not be said of BSD and its various commercial forks.