Slashdot Mirror


FreeBSD Vows to Compete with Desktop Linux

AlanS2002 writes "FreeBSD developer Scott Long is being reported as saying that FreeBSD is quickly approaching feature parity with Linux. Apparently this is being achieved through efforts to more tightly integrate GNOME with FreeBSD, with one of the priorities being to 'GNOME's hardware abstraction layer--which handles hardware-specific code--working with FreeBSD'."

29 of 370 comments (clear)

  1. didnt they have a completely goal? by Foktip · · Score: 5, Interesting

    Wasnt the goal of BSD to be secure and reliable, like debian, only moreso? How come now they're "competing with desktop Linux" ?

    1. Re:didnt they have a completely goal? by debilo · · Score: 5, Insightful

      I couldn't find a single example of Scott's "vow to compete" with Linux in the article. All he did was express his hopes of feature parity within a year or so. The "vow to compete" is a useless and sensationalist addition by the author, so let's keep it civil and avoid flame wars.

    2. Re:didnt they have a completely goal? by SillyNickName4me · · Score: 4, Informative

      Specially considering that what really matters for desktop is gnome, kde,x.org...not the kernel.

      X and a desktop environment matter the most for sure.. but I think you are quite seriously underestimating the role of a kernel in this..

      The kernel is involved in things hardware support, device and power management (suspend) etc, but what really matters is gnome and kde, nothing else. Gnome is not more usable under freebsd than in linux, neither the reverse.

      You see.. audio/video support sortof matters for desktop use.. so does plug and play hardware support (just plugin that camera and it works..), which are indeed hardware related but specifically, usb, drm/dri and sound support are extremely important for a desktop.

      Then, the scheduler can make quite a difference (optimized for throiughput versus responsiveness for example makes a big difference in how 'snappy' your desktop feels)

      Then, if you open a folder in say the kde or gnome file/directory browsers, there are 3 things you desktop can do:
      1. not notice changes to the directory untill you manually refresh the view
      2. poll the filesystem for changes and display them once they got noticed
      3. ask the kernel to send a notification when a file changes

      1. is no longer an acceptable option nowadays
      2. becomes very expensive when you have a lot of files in said directory, and it is always 'too late'
      3. requires kernel support (it is supported in slightly different ways in Linux and FreeBSD now) but is low overhead and virtually inmediate.

      As you can see, the kernel does in fact play an important role in simple things like browsing a directory already...

      So, yes, it does definitely matter for both gnome and kde what kernel they are running on. A year ago the difference between Linux and FreeBSD was substantial, esp. with regards to the scheduler and support for things like fam (without having to poll for changes).. nowadays the difference is far less big.

    3. Re:didnt they have a completely goal? by SeaFox · · Score: 3, Insightful

      Wasnt the goal of BSD to be secure and reliable, like debian, only moreso? How come now they're "competing with desktop Linux" ?

      Because security and reliability aren't sexy. They don't gain you new users like features do. Same reason Microsoft keeps adding features to Windows rather than fixing security problems, and keeps adding features to Word instead of making the interface better so the features it has become more useful.

  2. This isn't about the FreeBSD base system. by cperciva · · Score: 4, Informative

    To head off some confusion: This isn't about the FreeBSD base system; it's about third party code (like GNOME and KDE) in the FreeBSD ports tree. The FreeBSD base system already has feature parity with Linux (ok, there are a few things Linux has which we don't, but there are also things we have and Linux doesn't) -- the problem now is to get groups like GNOME and KDE to use the features we're making available to them.

    1. Re:This isn't about the FreeBSD base system. by JanneM · · Score: 5, Insightful

      the problem now is to get groups like GNOME and KDE to use the features we're making available to them.

      The obvious problem for large projects like GNOME is of course that they need to make a good experience on a pretty wide variety of platforms. To use any platform-specific feature it will need to be either emulated, replicated, worked around or otherwise made available on all platforms; or it could only go in as an optional extra that nothing else is actually depending on. So, making advanced FS logging capabilities a cornerstone of the desktop, for example, would be out since far from all platforms will have the requisite framework. "You can only run desktop X if you also use filesystem Y" is likely to go over like a lead balloon.

      Fortunately, good ideas in the OS space tends to be picked up by everybody sooner or later. Over time there just aren't that many good ideas that will not be available everywhere as time goes on.

      --
      Trust the Computer. The Computer is your friend.
  3. Re:Did they alreay win? by Bruenor · · Score: 5, Interesting
    getting most of the development effort in useless eye-candy and only minimum development in important features for desktop users like easy hardware detection for a wide variety of hardware, Brainless software installation, excellent wireless support

    I don't know what Linux distributions you've been using recently but I have recently installed Fedora Core 5 on my laptop and my experience was the opposite: that they must have been primarily focused on important features for desktop users. FC5 supported suspend and resuming my laptop, where FC4 didn't. FC5 supported my Centrino wireless with autodetection and configuration for both open access and WEP and WPA PSK protected networks right from the GNOME Desktop. FC5 automatically detected my USB-attached smart UPS on my desktop at work and can report the remaining run-time. It was the least-hassle desktop Linux install I've done yet.

    As far as software installation, I don't use it but you can go to Applications->Add/Remove software and graphically browse thousands of software packages that are a click and a download away from being installed.

  4. Compete for Market Share? by denissmith · · Score: 5, Funny

    Compete with DESKTOP Linux? Shouldn't they aim a little higher, compete with OS/2???

    --
    I have nothing to hide. So, why are you spying on me?
  5. Re:Did they alreay win? by i_should_be_working · · Score: 4, Insightful

    I don't think FreeBSD devs care who's using OSX. They are not the same even if they do use similar kernels.

    Can you point out the study or survey which shows that most Linux devs spend their time on useless eye-candy? Because I don't think that is the case.

  6. Re:Did they alreay win? by afd8856 · · Score: 3, Insightful

    If by beating Linux to the market you understand having the code taken by a company, and not seeing anything really valuable back in return, then yeah, you can praise OSX as much as you want.

    --
    I'll do the stupid thing first and then you shy people follow...
  7. Re:What about KDE? by Carewolf · · Score: 4, Informative

    In ports. KDE have been tightly integrated with FreeBSD for years.

  8. Re:Did they alreay win? by gsnedders · · Score: 3, Insightful

    They aren't using similar kernels: Darwin uses XNU, a hybrid kernel. Many of the things running on higher levels are shared by both, though.

  9. Forgive Me I May Know Not What I Do by Quirk · · Score: 4, Interesting
    I loath the worn, tired :), computer/automobile anology as much as anyone (I'm guessing it got its start from the Information Highway idea), but I'm going to try wring a few last drops from it.

    In 1908, the Ford company released the Ford Model T. The first Model Ts were built at the Piquette Manufacturing Plant. The company moved production to the much larger Highland Park Plant to keep up with the demand for the Model T, and by 1913 had developed all of the basic techniques of the assembly line and mass production. Ford introduced the world's first moving assembly line that year, which reduced chassis assembly time from 12½ hours in October to 2 hours, 40 minutes. However these innovations were not popular and turnover of workers was very high. Turnover meant delays and extra costs of training, and use of slow workers. In January 1914 solved the problem by doubling pay to $5 a day, cutting shifts from nine hours to an eight hour day, and instituting hiring practices that identified the best workers. Productivity soared and employee turnover plunged, as the cost per vehicle plummeted. Ford cut prices again and again and invented the system of franchised dealers who were loyal to his brand name.

    By the end of 1913, Ford was producing 50% of all cars in the United States, and by 1918 half of all cars in the country were Model T's. Henry Ford is reported to have said that "any customer can have a car painted any color that he wants so long as it is black." This was because black paint was quickest to dry; earlier models had been available in a variety of colors. But most were black."

    What the Model T was to the automobile DOS/Windows is to computer software. People faced with new technology that manages to takeoff tend to choice a brand that they gravitate toward in order to provide them with a base from which a general learning curve can be traced. As with the Model T, once a general concensus is arrived at as to what the new technology can do for the masses then competing models come into play and bells and whistles are taken in hand after the basics have been learnt. The computer industry has achieved a saturation level and the basics have been put in place. Now there is a chance for more competition. It's likely that Linux on the desktop is coming soon.

    That freeBSD has chosen to announce its competition with Linux is more supplemental support to show that the basics of the desktop have been put in place. Competition between Linux and freeBSD is great and will foster competition between F/OSS alternatives that will soon provide greater incentive for the general computer population to move from Windows to alternatives.

    I suspect the initial gauge of this movement will be a greater market share taken by Apple.

    Just my loose change

    --
    "Academicians are more likely to share each other's toothbrush than each other's nomenclature."
    Cohen
  10. Re:Windows eats Linux and poops FreeBSD by debilo · · Score: 5, Funny

    Windows eats Linux and poops FreeBSD

    I am confused - are you trying to depict Windows as a gourmet or rather as an entity with a magic colon?

  11. FreeBSD VS's GNU/Linux on the desktop by FudRucker · · Score: 3, Interesting

    from personal experience i have to say i am biased towards GNU/Linux with Slackware being my favorite, i recently tryed both DesktopBSD & PC-BSD on my first primary partition, they were both decent KDE desktops and i was familier with CUPS so setting up my printer was not a problem, but with GNU/Linux when i tried ubuntu breezy it made setting up a GNU/Linux desktop a total "no brainer" (including printer, scanner & digital camera) that should help non-techies setup a GNU/Linux desktop a lot easier, the two BSD desktop flavors (DesktopBSD & PC-BSD) stand a good chance to give the GNU/Linux desktop camp some competition which is a good thing :)

    --
    Politics is Treachery, Religion is Brainwashing
  12. Re:How On Earth Is This Offtopic?? by cos(x) · · Score: 4, Informative

    There are separate teams working on KDE and GNOME integration. It just so happens that the interview was conducted with a GNOME on FreeBSD developer, so the focus was on GNOME. Be assured that FreeBSD's KDE integration is very good and will be even further improved on in the future. DesktopBSD, for example, features KDE as the default desktop.

    Also, KDE is officially a cross-platform environment, with KDE4 being developed not only on Linux and FreeBSD but also on MS Windows. I don't know what the officiall position is for GNOME, but from what I hear they are a pretty Linux-centric project.

  13. Re:Did they alreay win? by Bastian · · Score: 5, Informative

    Ack. When is this rumor going to die?

    OS X, back when it was called NEXTSTEP, forked off of BSD 8 years before FreeBSD did, even before 4.4lite came on the scene. You can trace its lineage yourself, if you'd like. Since then, there's been a lot of code borrowing but everyone borrows from FreeBSD and FreeBSD is far from the only OS whose code Darwin has borrowed. Using just that to say that Darwin is based on FreeBSD would make little more sense than using the same fact to claim that GNU/Linux and Windows XP are based on FreeBSD.

    But as to your point about BSD in general beating Linux to the desktop with OS X, yeah, you're right. I think Apple showed how it really needs to be done, too. In my experience with trying to teach people to use Linux, the thing that consistently hurts Linux on the desktop is what I'd call its unixyness - stuff like complicated directory hierarchies based on abbreviated names only serves to intimidate the non-geek; even if you tell them they don't need to care about anything outside their home directory, they still know it's there. A lot of Linux's celebrated choices are bad; too. The moment a user ever has to care about QT vs GTK+ and figure out why they are behaving a bit differently, or what the heck CUPS is, or any of that, Linux starts to feel like a border town on the edge of the Wild.

  14. Re:How On Earth Is This Offtopic?? by houseofzeus · · Score: 3, Insightful

    He is exactly right! Consistently, users choose KDE...

    I would love to see that backed up with some actual facts? I'd say the users are pretty evenly divided (this is definitely what I see at work).

  15. Re:Did they alreay win? by SillyNickName4me · · Score: 4, Insightful

    Linux will always be ahead on cutting edge hardware because of the nature of the licences.

    History shows that the 'always' part in there is seriously wrong..

    BSD gets a driver, linux will have in after a quick port.
    Linux gets a driver, BSD has to wait and re-impliment.


    That is how it seems to a person who has absolutely no idea about kernels and drivers and the different BSD distributions.

    First, there are quite a few BSD variations all with their own set of rules for integrating drivers, where some see no problem in using gpl code, others see no problem in using closed source drivers in cases, and yet others swear that everything must be free and open.

    Second, differences between a BSD style kernel and the linux kernel are substantial enough that a 'quick port' is seldom an option for technical reasons alone.

  16. I don't understand! by Godji · · Score: 5, Funny

    Can we please have a car analogy?

  17. Major Problems from a FreeBSD User by Breaker_1 · · Score: 4, Interesting

    I use FreeBSD on a daily basis, I have FreeBSD servers, a FreeBSD development machine, and a FreeBSD daily use desktop (irc, email, web browsing, im, etc.) As it stands now yes, FreeBSD has both the newest versions of KDE and Gnome, and as far as I know the newest version of all the bigger window managers. However, as it stands now FreeBSD is not really a viable desktop in the same way that Linux is. This is because of the two major 3rd party softwares, neither of which are open source. Flash on FreeBSD is rather a joke, which is not to say that the people who work on the flash ports aren't doing well, but going to any flash site is a gamble. Pandora and Google Video, both sites that I go to regularly, lock up Firefox completely. And then there's Java. Java is marked restricted in the ports because of licensing issues, is non-redistributable (hope I spelled that right). Java is a real pain in the arse on FreeBSD. In my experience, the chances of a successful build are about 50/50 at best. You have to download several larger files and move them into the distfiles directory, start the build and cross your fingers and wait.. many hours.. There are other problems as well, for FreeBSD as a desktop os like Linux, but these are the major two... everybody expects to be able to browse the web on a desktop OS with little to no trouble. And as it stands now FreeBSD is unable to deliver an easy to use, out-of-the-box solution for desktop use. I hope this doesn't start a flame war, just adding my two cents.

    1. Re:Major Problems from a FreeBSD User by Teckla · · Score: 4, Informative
      And then there's Java. Java is marked restricted in the ports because of licensing issues, is non-redistributable (hope I spelled that right). Java is a real pain in the arse on FreeBSD.

      From the FreeBSD web site:

      The FreeBSD Foundation has negotiated a license with Sun Microsystems to distribute FreeBSD binaries for the Java Runtime Environment (JRE(TM)) and Java Development Kit (JDK(TM)).

      Enjoy!

    2. Re:Major Problems from a FreeBSD User by Anonymous Coward · · Score: 3, Informative

      I use flash with linux-opera and it works fine. Java has been dead on the desktop for almost 8 years, so who cares.

  18. Re:Did they alreay win? by SillyNickName4me · · Score: 4, Informative

    OS X, back when it was called NEXTSTEP, forked off of BSD 8 years before FreeBSD did, even before 4.4lite came on the scene. You can trace its lineage yourself, if you'd like. Since then, there's been a lot of code borrowing but everyone borrows from FreeBSD and FreeBSD is far from the only OS whose code Darwin has borrowed. Using just that to say that Darwin is based on FreeBSD would make little more sense than using the same fact to claim that GNU/Linux and Windows XP are based on FreeBSD.

    Referenced from the site you mention yourself is the BSD family tree.

    If you had bothered to look at it, you'd have noticed that:

    Darwin is based on Rhapsody, NetBSD 1.4 and FreeBSD 3.2
    OS X 10.2 imported code from FreeBSD 4.4
    OS X 10.3 imported code from FreeBSD 5.1

    If you had ever bothered to use a FreeBSD 5.x machine for a while, and used a machine with OS X for a while from the shell, you'd have noticed how the userland is virtually identical, to a level way beyond how some linux distributions are similar..

    Where OS X really did not derive from FreeBSD at all is at the kernel level and of course the gui.

  19. No one wants this by dirtyhippie · · Score: 5, Insightful

    I realize this article is about the ports tree, but FreeBSD's main source *has* been moving at a blistering rate of development the past few years. Recently there was an article about linux 2.6 getting buggier - and unfortunately the same is true of FreeBSD 5.x and 6.x ... Some things to consider:

    * 6.x came out shockingly fast after 5.x
    * 4.x was orphaned correspondingly quickly (despite being arguably the only stable freebsd branch left)
    * vinum (software raid) support, among other things, was broken thanks to the introduction of geom around 5.1, and gvinum is finally beginning to approach stability as of 6.1
    * The new scheduler, ULE, was introduced in one 5.x release and then abandoned when it proved to be completely unstable.
    * As a reaction, one of the lead developers forked dragonflybsd off of the last truly stable freebsd release, the 4.x branch. Others have just given up.
    * Bugfixes are getting left on the floor in favor of adding features ( just look at a relatively old release such as freebsd 5.3's TODO list: http://www.freebsd.org/releases/5.3R/todo.html - note that most of these problems are *still* not fixed in 6.1 )

    People choose the BSD's for stability - or at least, they used to. FreeBSD has been going down a features at all cost route in some kind of effort to play catchup with their perceived rival linux for some time. In doing so, it is losing what makes it unique, and it needs to stop, or else people will abandon FreeBSD for other BSDs, linux (which is now more stable IMO), and even mac os.

    -DH

  20. Re:Did they alreay win? by IamTheRealMike · · Score: 3, Insightful
    The moment a user ever has to care about QT vs GTK+ and figure out why they are behaving a bit differently

    They don't behave differently. At least, the differences are no worse than on the Mac or Windows where apps frequently reinvent the standard toolkit (*cough*Aperture).

    or what the heck CUPS is

    The only time a Linux user would have to care about this is if their printer isn't supported. And most are (albiet with varying degrees of driver quality).

  21. I see a connection here: by kshade · · Score: 5, Funny

    12 Dec 2005 - Linus Torvalds states that "only idiots will use [Gnome]".
    20 Apr 2006 - Linus claims "that [...] FreeBSD [People] are incompetent idiots."
    12 May 2006 - The FreeBSD folks announce a tightly integratin of GNOME with FreeBSD.*

    * You didn't click that link, did you?

  22. Re:That's just BULLSHIT! by Overly+Critical+Guy · · Score: 3, Interesting

    Thanks to ALSA Linux can be used in recording studios nowadays.

    Name a studio using Linux in any meaningful way for audio recording.

    --
    "Sufferin' succotash."
  23. KSE was not implemented to design by tlambert · · Score: 3, Insightful

    KSE was not implemented to design

    When I first proposed KSE, my proposal was that all system calls become asynchronous - you dispatch the system call. Then, if you wanted POSIX semantics, you suspended yourself until the result was available.

    The intent was to implement all of the POSIX blocking semantics at the Libc layer, and all the operational semantics at the kernel layer, and to permit any number of dispatches to occur concurrently.

    The way you implement multithreading in this environment is to use call-conversion scheduling: you trade a normally blocking system call for a non-blocking system call plus a context switch. This basically gets you multithreading for free.

    The intent of this approach is to utilize your full process quantum, rather than giving it away and suffering an unnecessary context switch overhead, while you still had work pending that could be done in user space within the same process.

    In one posting, I put it like this: "If a kernel gives me a quantum, it's *my* damn quantum, and I'll use as much of it as I can, and if I can't use any more,*then* I will yield to a voluntary context switch".

    The way you obtain SMP scalability (which was *NOT* the original reason threads were invented in the first place, BTW, since they predated commercially viable SMP system by a long ways) is by permitting multiple processors to return to user space on completed async system calls.

    Intelligent readers will not that by not giving away the quantum you were given, you basically get a form of CPU affinity thrown in for free, without any modification to the kernel scheduler, up to the point where you would context switch to a process other than yourself, and cache-bust/TLB-shootdown anyway. This was not a bad idea.

    -

    What happened instead was an implementation of SA (Scheduler Activations). They kept the KSE name. I came up with it initially - "Kernel Schedulable Entitites" - because I didn't want people to be thinking about solving the problems we intended to solve in a way that was constrained by the ideas that would carry over from using words like "activations" or "threads" or whatever. Semantic loading constrains free thought on technical issues a heck of a lot more than people give it credit for.

    But SAs fell far short of my intended vision for the original implementation, a vision I could not implement on my own without buy in from the rest of the FreeBSD community.

    -

    Once we got buy-in that we were going to do *something* in this area, we had a big meeting. It was hosted at Whistle Communications, where Julian and I and others worked, and where we tended to host BAFUG meetings. Jason Evans and others attended.

    I was unfortunately unable to sell my async call gate approach to the problem ("too many changes"), and a compromise was worked on scheduler activations, and a user space thread scheduler that would cooperate with the kernel scheduler.

    Compared to what we ended up with, the changes required for the async call gates would have been a lot less code. But I fully admit: my suggested approach would have been impossible to implement incrementally - it would have been all or nothing, and stepping over that threshold would have cost a lot. I failed to sell it adequately, and can only fault myself.

    -

    Realize that this was not a bad compromise, given the technology at the time: context switches were murder, and crossing the user/kernel protection domain was a heck of a lot more expensive than it is on todays hardware. Also, the vast majority of SMP Intel boxes available in 1996/1997 were at best 2 processor boxes (I still have my dual P90 ASUS box).

    Later, the expense of scheduler activations became plain, but it was still not too bad, until things like TLS - "Thread Local Storage" - and other POSIX semantics changes started to make things more painful.

    -

    Meanwhile, FreeBSD got thread reentrancy work done in its kernel, and a separation of address spaces and contexts, that it would have needed to have, no matter what threading approach was used. So KSE's, even implements as the were, instead of how I had originally envisioned them, was well worth it.

    -- Terry