Slashdot Mirror


Google Introduces Freon, a Replacement For X11 On Chrome OS

An anonymous reader writes With this week's release of Chrome OS M41, there is the new Freon graphics stack to replace X11 on some platforms. Freon is a very limited graphics stack to replace Chrome OS usage of X11/X.Org by having the Chrome browser communicate directly with the Linux kernel's KMS/DRM API and OpenGL ES interfaces for drawing. This design is much simpler and yields various power and performance improvements though it's not based on Wayland nor Mir (though Chrome plans to support these display server models).

35 of 166 comments (clear)

  1. Chrome by Anonymous Coward · · Score: 4, Insightful

    If Chome browser IS the OS, then what they have is an embedded video driver. It's not a X11 replacement anymore than FB interface is a replacement for X11.

    1. Re:Chrome by Anonymous Coward · · Score: 2, Insightful

      It's a replacement for X11 on ChromeOS. Not a replacement for X11 in general. Also, since X11 is getting removed from ChromeOS in favor of Freon, it is, by definition a replacement. If you don't need all of the functionality of X, you can replace it with something simpler.

  2. DRM stands for by tepples · · Score: 5, Informative

    Here I'm assuming that "KMS/DRM" refers to "kernel mode setting and direct rendering manager", not anything to do with "digital restrictions management" such as establishing a protected video path for use with the Content Decryption Module draft stuff in HTML5.

    1. Re:DRM stands for by linuxrocks123 · · Score: 2

      Correct. Not the first time that acronym has been confusing.

      --
      vi ~/.emacs # I'm probably going to Hell for this.
  3. YANIH by NotInHere · · Score: 2

    yet another not invented here.

    At least they are not as bad as Canonical, which not just have mir, but also bzr.

    1. Re:YANIH by dmbasso · · Score: 3, Insightful

      I don't think Bazaar can be included in the NIH set, as upstart and mir can. When they started working on Bazaar, there was no distributed VCS that was as simple and intuitive as what they had implemented. I've used Darcs before switching to Bazaar, and though I don't remember specifics, I remember feeling much more comfortable using bzr. In the end, git is the clear winner of the DVCS race (Mercurial folks might disagree with me), but you can't blame Canonical for investing in their solution (a very good one, imho). Btw, bzr was first released two weeks before git's first release.

      --
      `echo $[0x853204FA81]|tr 0-9 ionbsdeaml`@gmail.com
    2. Re:YANIH by serviscope_minor · · Score: 3, Insightful

      Screw idealism, you'll take X and it's fifty million extensions from my cold dead hands!

      I love how X is the only system that people complain about when it gets API updates while remaining backwards compatible. Are you going to stop using Wayland when it progresses on from the 1.0.0 release or are you fine because it doesn't call new API calls "extensions"?

      And I like my start up scripts like I like my Egyptian tombs, hard to understand and full of things to trap and destroy you!

      I prefer hard to understand over impossible to understand. And before you claim that systemd is easier to understand, please make the ACPI sleep key send my laptop to sleep under systemd. So far many people have told me how systemd is "simpler" but no one has been able to help me fix this really simple problem. It worked just fine under the old system.

      Oh yeah and to boot, my system boots slower!

      So, um yay?

      --
      SJW n. One who posts facts.
    3. Re:YANIH by andydread · · Score: 2

      The constant whining about NIH in open source/free software is a bullhshit red herring. It is an attempt to legitimize one's hatred for the entity that is trying to create something new that suits their own needs. Not every damn upstream project is going to accept your patches to change the direction from where upstream want's to go. And the freedesktop.org guys are notorious for telling downstream submitters to go fuck off and WONT_FIX. So your argument is a total straw man argument and lacks credibility in the face of reality.

    4. Re: YANIH by serviscope_minor · · Score: 2

      I really don't know what your point is.

      An init system which breaks perfectly working behaviour and has not yet introduced a single feature which makes my experience better in any way is not progress, it's churn and there's a huge difference.

      I have nothing against a new init system. I have got something against one which (a) doesn't work and (b) is such a complex hairball that no one can tell me how to fix a really basic problem.

      Invent something better, help the cause, or go hide away in your retirement home

      There is something better: The old RC scripts on arch both booted faster on my machine and were simple enough to fix. So systemd fails on one of the things it was supposed to be better at AND is too complex to be fixable. Besides why would I take the time to invent something better? systemd is being strongly pushed by entrenched interests and it's got to the stage where it touches so many parts of critical ifrastructure that one needs a vast effort to unpick the tendrils.

      I can tell when something would be a waste of my time.

      It is going to suck at version 1.0, that's life.

      Well if PulseAudio is anyting to go by, it will continue to suck for a lot longer. Yes I'm still having persistent PA problems on one machine. It sometimes flips to headphones out on loud bits. And rarely it loses its shit completely and oscillates between the two. No, it's not a hardware problem because it never, ever, ever happens under ALSA, and besides a restart of PA kills the oscillation.

      I look forwards to systemd just losing it's shit every so often.

      --
      SJW n. One who posts facts.
    5. Re:YANIH by serviscope_minor · · Score: 2

      So, just run a similar process today. Or, get whoever provided the acpid solution to provide a comparable systemd one. Normally end users aren't expected to tweak this kind of stuff.

      systemd has subsumed acpid. It deals with and processes ACPI key events. Except it's eating the event and I can't figure out where it's going. It doesn't run any of the triggers it's meant to. And therefore won't run the shell script. So far not one systemd proponent has given me even the slightest clue how I'm meant to go and debug it short of hacking the C code, sticking in logging entries!

      And end users not tweaking it? That's the thing it seems to be designed as a black box for "end users" where the "end users" are a bunch of hackers.

      --
      SJW n. One who posts facts.
  4. I am going to fork it. by funwithBSD · · Score: 4, Funny

    and develop R22 as a replacement.

    --
    Never answer an anonymous letter. - Yogi Berra
    1. Re: I am going to fork it. by rkcth · · Score: 2

      I'm leapfrogging that and doing straight to R410A

  5. The Browser is NOT the OS by duckintheface · · Score: 5, Insightful

    Marketing gibberish aside, the Chrome browser is not the OS. The OS also happens to be called Chrome but it is just a variant of Linux. And the Chrome browser is a browser, not an operating system. Google wants to limit your applications to those that run in the browser to sort of simulate the "browser is the OS" look and feel, but that's not really what's going on. The confusion is intentional.

    --
    "He took a duck in the face at 250 knots." -- William Gibson, Pattern Recognition
    1. Re:The Browser is NOT the OS by The+MAZZTer · · Score: 4, Informative

      "Just a variant of Linux" is a little understatement I think. It would be more accurate to say it's Linux with everything NOT needed to run the Chrome browser ripped out or trimmed down... this Freon is another improvement in that area.

    2. Re: The Browser is NOT the OS by the_humeister · · Score: 4, Interesting

      How does this affect people using Crouton? Will X still work or will we actually have to dual boot a real Linux distribution rather than run it in a chroot?

    3. Re: The Browser is NOT the OS by muirhead · · Score: 2, Informative

      Really kinda wanna know this, too, as I'm still considering a Chromebook Pixel, but it this breaks Crouton, I'll pass.

      Looks like they've got it covered. https://www.openhub.net/p/crouton/commits/367012555

    4. Re:The Browser is NOT the OS by jedidiah · · Score: 2, Insightful

      Relative to Google's own requirements for Chrome, it's an improvement. Relative to someone interested in a real OS or Linux in particular, Chrome already jumped the shark anyways.

      --
      A Pirate and a Puritan look the same on a balance sheet.
  6. Freon? You gotta be kidding: by Hartree · · Score: 2, Insightful

    You mean Freon as in R-11 or R-12 which increase the ozone hole and were banned? (It's Dupont's trademark. Wonder if they asked first.)

    Is the next release gonna be named Thalidomide? Or maybe Dimethyl Mercury?

    1. Re:Freon? You gotta be kidding: by Lije+Baley · · Score: 2

      If it's as effective as those, then it's synonymous with "the good stuff". Next one might be "High-Flow Toilet", or "Nuclear Thermal Rocket".

      --
      Strange things are afoot at the Circle-K.
    2. Re:Freon? You gotta be kidding: by El_Muerte_TDS · · Score: 2

      I guess Google needs to put this project back in the fridge and think about it a bit more.

    3. Re:Freon? You gotta be kidding: by Rei · · Score: 2

      I'm betting that Freon leaks. And that it destroys its operating environment.

      --
      "Are you hungry? I haven't eaten since later this afternoon." -- Primer
  7. Re:Let me guess by NotInHere · · Score: 2

    From an X11 developer: "Stop saying that because its rubbish"

  8. Re:Let me guess by RightwingNutjob · · Score: 4, Insightful

    And my reply is always the same: if you make a change, improve the whole system; don't make compromises to core functionality for the sake of cosmetic improvments. Bells and whistles in the window manager are cosmetic. Being able to display output (from a single window, mostly text and line art graphs, not the whole damn desktop) to a different machine across the building is not cosmetic, it is why I use Linux instead of Windows. Maybe X11 doesn't let you do some things that really are better (I wouldn't know, the only annoyance I have ever found with X11 code is that its error handler calls exit(-1) if it panics without letting you deal with it in the calling program, meaning you have to split display and core logic into two processes instead of being able to keep everything in one address space), but network transparency (what else do you call being able to say DISPLAY=whatever:X.Y my_program) is a core capability that people do use, and you won't get them on board if you turn it into an afterthought.

  9. Re:Isnt freon by Anonymous Coward · · Score: 3, Informative

    Freon is an organic chemical, not a noble gas. Actually, it's freons (plural) because the name is a trademarked trade name for a class of hydrocarbon products produced by DuPont.

  10. Re:Obligatory XKCD comic by BronsCon · · Score: 2

    Highlight, right click, click, that's two extra steps that everyone has to do, just to save one person one extra step. You're not, by chance, a shade efficiency consultant, are you?

    --
    APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
  11. Re:The Penislicker Is Not Smart by BronsCon · · Score: 3, Funny

    I worked in fast food for 3 years (not a point of pride, just a fact) and I can tell you they don't clean those things...

    --
    APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
  12. Re:The Penislicker Is Not Smart by Zontar+The+Mindless · · Score: 3, Informative

    I worked breakfast time at a Hardee's while at school, and we had to suck out all the oil, run it through a filter, and scrub the inside of the fryer every morning at the end of the shift. Of course this was back in the 80s, things might have changed since then.

    --
    Il n'y a pas de Planet B.
  13. Re:Let me guess by thegarbz · · Score: 2

    Just to play devils advocate:

    1. Are you suggesting to never release software unless it's 100% feature complete and comparable with software that has 20+ years of development behind it?
    2. What happens if part of the core functionality was one of the biggest performance issues and complaints on the design of the prior system you are trying to replace? Just like the core component of a car is the internal combustion engine sometimes core components are not considered as afterthoughts, but rather are consciously excluded from design (such as network transparency in Mir and Wayland which both projects have not only excluded from the core protocol but subsequently showed proof of concepts of how the features will continue to work anyway when programmed in a different way)

  14. Linux is not an OS by aNonnyMouseCowered · · Score: 3, Informative

    " The OS also happens to be called Chrome but it is just a variant of Linux."

    WTF is this modded insightful. Linux is just the kernel, maybe the heart of the operating system, but not the OS itself. The OS is the kernel and the whole bunch of other stuff that allows you to run the program you click, type or tap at. See: Ubuntu can be called an OS, a variant of what some free software advocates call GNU/Linux (but actually a little bit more). Android is an OS, mostly without GNU components, also based on the Linux kernel. OpenWRT is an embedded Linux-based OS for routers and other network devices. Chrome OS is another OS that runs on top of the Linux kernel.

    1. Re:Linux is not an OS by Dragonslicer · · Score: 3, Insightful

      Linux is just the kernel, maybe the heart of the operating system, but not the OS itself. The OS is the kernel and the whole bunch of other stuff that allows you to run the program you click, type or tap at.

      That depends on exactly how you want to define "operating system". You can make the argument that the "operating system" really is just the kernel, and that everything else, including the X server, are user-level programs. In particular, this is true in Linux, where many system services that some people would consider part of the operating system are just normal processes.

  15. Re:Let me guess by raxx7 · · Score: 4, Insightful

    99% of people don't want X11 style network transparency. They want "ssh -X" and friends to work. They want to be able to remotely run individual graphical applications.
    But X11-style network transparency isn't the only way. And it's not the best way.

    Despite all the features available in X, application developers give limited effort to making applications work well over high latency limited bandwidth. An increasing number of applications work poorly over this links. Qt4 applications with the default raster backend work poorly sometimes even my workplace's GbE LAN (Qt5 doesn't even give you the option). Let's not even think of running Kate from home.
    No application I actually use supports detaching and re-attaching to a different X server.

    People have been pushed to replace "ssh -X" with NX and Xpra (or, in despair, VNC) because of these limitations (Google about them).
    Similar solutions can be implemented in Wayland and they don't need the protocol to become networks transparent.

    Supporting X11-style network transparency in the Wayland protocol is a futile exercise which compromises the simplicity required by the Wayland model.

    Not to mention, if "ssh -X " and friends suits you... then it will work for a long time. As long as your Wayland session includes XWayland (which it will, probably for ever) and your applications retain a X11 backend, this will still work.
    It's not going to die tomorrow just because we switch to Wayland compositors.

  16. Re:Isnt freon by drinkypoo · · Score: 2

    You could however die if enough freon leaked into a room and it displaced the oxygen. But you would smother (lack of oxygen) not be poisoned.

    It doesn't even take that. You can just get it into your lungs. Because it's heavier than air, you have to do some really heavy breathing to expel enough of it to restore normal breathing function. It's also a big part of the reason why we don't use pits for automotive maintenance any more. Besides the risk of driving into them (heh heh) there's also the risk of refrigerant leaking out of a vehicle, settling in the pit, and killing mechanics. CO and CO2 are also heavier-than-air, though, so they're just bad things. You don't want a blower in there in case of fire...

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  17. Re:Let me guess by Uecker · · Score: 3, Insightful

    You can't "improve" X11 without making it not X11. e.g. make IPC async and it's not X any more.

    First, one can extend X11 fairly easily, this has been done in the past. Second, X11 already has asynchronous IPC. Wayland copies this model exactly: Async IPC over a UNIX domain socket (locally). There is no fundamental difference or improvement here.

    And at that point you may as well ditch the lot and write it properly, taking advantage of the hardware that every modern PC has to render a desktop decently locally first (the common use case) and taking advantage of existing remoting tech to take care of the uncommon use case.

    Again: bullshit. X11 can do take advantage of the hardware in exactly the same way as Wayland. So this whole argument is build around the misconception that X11 is slow because of something it does to support remoting. This is not true: 1. X11 is not slow (Valve found OpenGL on X11 to be faster than on Windows). 2. Direct rendering essentially works in the same way as Wayland (atleast with DRI3).

    And that's what Wayland does - it describes a protocol for a client application to talk directly with a window manager that cuts X11 out of the picture.

    So maybe combining the compositing manager and the server into one piece has a small advantages. I doubt this. But if this is the case, this could be done with X11 as well. No need to ditch a protocol with decades of compatibility.

    Weston already demonstrates built in RDP support.

    I don't want RDP. RDP is not compatible with X. RDP is also a propriertary protocol fron Microsoft with a core standardized by the ITU. I sure hell to not want this as a replacement for X.

    It wouldn't be a stretch to imagine VNC or other protocols appearing in time to serve different remoting scenarios.

    Yes, implement X. Then come back.

    I'm sure that unless you're expecting to play video or games in realtime they would suffice and if you are expecting to play video or games in realtime there are better ways to do those things already.

    I am not playing games. I want my new applications to work with old display servers and old applications to work with new servers. I also want to have perfect integration of remote applications. This is not really about shuffling bits.

  18. Re:Let me guess by raxx7 · · Score: 2

    If you insist in asking the wrong question, you'll always get non-sense as an answer.

    The server isn't being bloated with new button styles and widgets. X11 server side rendering is accomplished with a a relatively small number of power primitives which haven't been changed in years.

    The reason why applications are doing less server side rendering, however, has to do with much more than fancy buttons and widgets.
    For example, the Qt4 folks came to the conclusion that their raster backend was quite a bit faster (for local applications, of course) than their X11 backend.
    This matters little for drawing the buttons and widgets of an application. But it does matter a lot for the main application area, specially when it's something a bit more complex than a text editor.
    It matters when you're navigating a PDF in Okular on a not-so-fast laptop. It matters when you're navigating through the mess of wires in an integrated circuit layout application.

    For someone who chastises others for bell and whistles, you can't actually see under the surface.

  19. Re:Let me guess by Uecker · · Score: 2

    Redirecting X11 applications over a network doesn't work well if the application sends a ton of commands synchronously, unless the network is low latency (eg, local LAN).
    Redirecting X11 applications over the network doesn't work well if the application sends the entire graphics window as a single pixmap, untless it's a high bandwith network (eg, local GbE LAN).

    True, application (or toolkits) are getting worse in this respect. This is sad and just one of the many areas where Linux is regressing. But still, many work well and for those who don't work well over high latency or low bandwidth networks, it is always possible to use a proxy and this would be no worse than with Wayland.

    Wayland works over a Unix socket too. And you can set which socket the application will attach to with WAYLAND_DISPLAY.

    Yes, wayland basically has the same design as X - exept it removes a lot of features. This is not progress.

    The first problem is that the protocol assumes shared memory but it would have not complicated things that much to make it work without requiring shared memory.

    Yes, then it would be basically an incompatible version of X.

    But the real problem is that the only method Wayland applications have to draw is by sending the entire window (surface) as a single pixmap. Works wonderfully over shared memory, works like crap over my cell phone's 3G connection.

    This is not really true. Wayland applications indicate which part of the buffer has changed - so only the changed area would need to be copied. The problem is for cases like scrolling where X applications can copy screen content on the server without transmitting pixel data over the network. Wayland applications cannot really do this, because the protocol is much less flexible (you can do everything you could to with Wayland also with X but not vice versa).

    Adding to Wayland the rich set of server-side rendering features would complicate things too much for Wayland to be possible.

    This is a surprising statement. Why would it not be possible? X demonstrates that this is possible!

    And it would be a somewhat futile exercise because, increasingly, X11 applications are doing less server side rendering and more pushing of large pixmaps.

    Most X applications (as of today) use Xrender to compose pixmaps on the server. This is still efficient. The main problem with performance on X over the network is latency caused by applications essentially using the protocol in a synchronous way. But it would be much more useful to fix this than to replace everything with a fundamentally less capable graphics layer - which does provide NO functional advantage.