4 ms·
I think he understands that X will crash sometimes (he admits that Aero does), but what he wants is to not lose his running apps. I don't think that's unreason
by tsuraan 17y ago
I think he understands that X will crash sometimes (he admits that Aero does), but what he wants is to not lose his running apps. I don't think that's unreasonable or whiny. Separating out a state representation server that's stable from the rendering server that's pretty likely to crash would be cool. It could also allow for *nix users to have something like RDP, which is one of the _very_ few things I actually admire about windows.
I don't know enough about X to have any idea how much effort that would take, and from being on the X list for the past year, I know that a suggestion like that would be ignored without having code to back it up, but I still don't think it's a bad idea.
- _pi 17y ago>It could also allow for *nix users to have something like RDP, which is one of the _very_ few things I actually admire about windows. I HATE RDP. X.org was created to be net capable, you can do full desktop and window forwarding, we don't need this functionality it exists! (Especially because X.org window forwarding doesn't take screenshots)
- tsuraan 17y agoX does window forwarding, and I love it, but it doesn't do remote session resuming. For that, you have to fall to things like VNC, which really isn't much more than streaming video. I'm fairly certain that RDP doesn't do that. Its performance on pan-pacific connections is completely acceptable, much better than clever video streaming systems like gotomeeting or webex. I've never had the chance to try VNC across the ocean, but I'm guessing it wouldn't be as nice as RDP either. Why do you think RDP does work by screenshot forwarding? I'm pretty certain it works by forwarding win API calls over a network, but I've never dug into the rdesktop source, so I could be completely mistaken.
- nailer 17y agoThere is a X proxy thingy that allows you to do session resuming just using the X protocol, but as you note it's an afterthought and not baked into the regular software an interface.
- rbanffy 17y agoX clients can handle disconnect and reconnect rather easily. It's up to the toolkits, usually, to enable this kind of functionality. Now that you say, it would be wonderful to have something that does for X clients what screen does for text terminals.
- andrew_k 17y agoYou can try FreeNX or Google's Neatx server for session resuming.
- _pi 17y agoIt certainly does both, but doesn't work as well enough as it should. Some of the corruption and image problems I've had on VNC also are on RDP.
- apotheon 17y agoI agree -- it would be nice if X didn't take the state for most of my apps with it when it crashed (not that it crashes with any regularity). On the other hand, the guy's complaints regarding X crashing and comparisons to Aero are apples and oranges, from what I can see (though I wasn't there to read error messages, so of course there's no way to be sure). It seems like his problem with X crashing was one of the GUI itself crashing, in its entirety, whereas Aero crashed when there was specifically a driver issue not directly related to Aero itself. Aero is able to get around it by having a secondary "legacy" GUI system to back it up, and by having multiple drivers so a "lesser" driver can kick in. X has lesser drivers available to it, but there's no backup GUI system to back it up. Now, imagine that the fundamental interface between the kernel and the GUI actually crashed (sorry about the hand-wavy way I phrased that -- since Unix/Linux systems and MS Windows systems do it differently, I can't get more specific). What would Unix with X do? Well, it'd fall back to the command line. What would MS Windows with Aero do? It would fall back to whatever passes for a blue screen of death in the Windows 7 world, because MS Windows basically doesn't have an OS without the GUI. The command line interface is part of the damned GUI in MS Windows. I'm not saying X is perfect. It does indeed need a lot of fixing. I actually think we'd be better of replacing it from scratch, if we could get everyone on board. I do not, however, think that MS Windows is the model to use. In fact, I think that on a good day, MS Windows is only nearly as good as X. In short, X and the MS Windows GUI stack both suck, but at least the way X works with the OS is marginally less stupid than the way MS Windows works with its GUI systems.
- tsuraan 17y agoI think you're right about X versus Aero being apples to oranges, but that's sort of the problem. In windows, it looks like the state of an application's GUI is separate from the state of the rendering system. In X, the two things are in the same process space. In windows, when the renderer crashes, GUI state isn't lost, a new renderer is started, and the user continues his day, slightly irritated. In X, the renderer crashes, and all applications crash as well. The user is somewhat more irritated. If X were split into a renderer and an application state tracker (like, I assume, windows does), then the renderer could crash all day, and the applications wouldn't ever notice. In windows, if the application state tracker crashes, you're screwed, but that since the state tracker doesn't seem to depend on any third-party drivers, it's easier to verify its functionality and try to ensure its stability. As for a rewrite, I'm not really sure how much of old XFree is still around. X has been modified in the past few years to no longer require configuration for its input (or, technically its video, but I still don't trust that). It supports multiple pointers, and in Linux on Intel, it doesn't even have to do initialize and exert low-level control over the video card. Things really are looking up for X, and I think your rewrite might actually be happening as we speak. It's just incremental, and with constant releases :)
- noonespecial 17y agoIf you want an RDP like thing for X, try nomachine. http://www.nomachine.com/ http://www.nomachine.com/ Its free and more or less duplicates RDP on *nix. It even allows multiple persistent sessions.