Announcement

Collapse
No announcement yet.

A Run Down Of VT Switching On Linux

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Originally posted by curaga View Post
    Direct rendering by definition is not, but indirect rendering is. However I mainly meant 2d apps, as for 3d it usually is more bandwidth-efficient to send the image; for 2d text is much more efficient than image.
    And what modern application uses the X indirect rendering API?

    All the modern toolkits use client-side rendering on X. So tell me, what exactly is so special about X that makes it so good over the network?

    Comment


    • #32
      Originally posted by curaga View Post
      Well, I continue to think that throwing away one of the X platform's biggest advantages, networking for all apps, is a huge mistake.
      ...then we have nothing to talk about here, because that topic has been covered many times already. X is not network transparent, and the display server has nothing to do with sending text and instructions over the net!

      Originally posted by curaga View Post
      But there's quite a difference in scale here, the X codebase may be 1000 times that of the VT codebase, which means different solutions would work for them.
      The scale doesn't matter. The design time does.

      Originally posted by curaga View Post
      Making VTs multi-seat aware, and adding revoke() or alternatives, is a much saner choice than yet another daemon.
      No it isn't, it would be adding workarounds to legacy cruft. That's not the solution.

      Originally posted by curaga View Post
      That's systemd think, init should have nothing to do with that (of course depending on the definition of "manage" - starting and stopping them is quite different from what systemd does).
      It could be done by udev or something, but event that is part of systemd, so it really doesn't matter. There is no better place to do that. The kernel is not the place for that by far.

      Comment


      • #33
        well to fix some misunderstanding in this thread:

        Facts:
        1.) Xorg is not network transparent, XFree86 is
        2.) X11 network rendering is an bandwith murderer and it works only with pixmaps unless your are running CDE or Motif based DE bacause all modern toolkits and compositors bypass X almost entirely and the compositor just push an finalized pixmap back to X for screening, so there is nothing to stream until the pixmap arrive from the compositor
        3.) VT is an horrible messy huge massive kitten-killer 20 years old piece of cruft in the kernel designed to handle sessions in the best state of the art 80s multi serial terminal mainframes but for modern desktop in the 21st century is a royal grade pain in the ass, ask a session in VT is like run 20 blocks then press 10 buttons in a random panel for no reason at all and the run back to your house in 1 foot while singing to activate your house door, and you have to do that everytime you wanna open a door in your house
        4.) for the current "console" and "Virtual terminal" functionality and more is way better to use KMScon
        5.) killing VT will allow many many advanced features but for user the most important will be OS X like clean session management, proper multiseat, proper resources sharing, proper event routing, enhanced security, easiness of integration with more complex security frameworks, etc.
        6.) for now systemd is the only init manager capable of becoming a system compositor doesn't mean it will only be systemd

        Comment


        • #34
          Originally posted by dee. View Post
          And what modern application uses the X indirect rendering API?

          All the modern toolkits use client-side rendering on X. So tell me, what exactly is so special about X that makes it so good over the network?
          We've had this discussion already in other threads. Not going to repeat here. In short, X may have been outdated, but the solution is to update the network protocol to modern needs, not to kick it out entirely.

          Also, lol @ all the branching to unrelated topics.

          The scale doesn't matter. The design time does.
          Of course it does! You really don't see how?

          A couple hundred or even thousand lines is easily extended, rewritten in pieces, changed; million is not.

          No it isn't, it would be adding workarounds to legacy cruft. That's not the solution.
          You've been blinded by the *new and shiny*. And I'm apparently the old crank. It's not nearly as bad as you make it sound, nor is the new and shiny as great as it's being made sound.

          Comment


          • #35
            VT's just work and don't need systemd

            And because of this, they must be replaced.

            *barf*

            Comment


            • #36
              jrch2k8, does your android need 'seats'? Or a network transparent X11?
              Does your workstation do?

              No to all of them.

              And for everything else: X11 worked with the bandwidth of the early 90s - but today it is too heavy... yeah.. and it is not like there are solutions for this... who don't need to butcher VT's or force systemd's crap.

              Comment


              • #37
                Originally posted by energyman View Post
                jrch2k8, does your android need 'seats'? Or a network transparent X11?
                Does your workstation do?

                No to all of them.

                And for everything else: X11 worked with the bandwidth of the early 90s - but today it is too heavy... yeah.. and it is not like there are solutions for this... who don't need to butcher VT's or force systemd's crap.
                You have no idea what you are talking about.
                X11 worked with the bandwidth of the early 90s because at that time software used rendering through X11, meaning that X11 was the toolkit. Today applications use more modern toolkits with accelerated (or at least internal) rendering, and because of this X11 does not render anything anymore.
                We are not in the 90s anymore.
                But feel free to use software from that time, it should still work

                Comment


                • #38
                  Originally posted by energyman View Post
                  VT's just work and don't need systemd

                  And because of this, they must be replaced.

                  *barf*
                  VT's DONT "just work" they are hacks upon hacks upon hacks and are being replaced to finally FIX their inherit problems.

                  Comment


                  • #39
                    Originally posted by curaga View Post
                    We've had this discussion already in other threads. Not going to repeat here. In short, X may have been outdated, but the solution is to update the network protocol to modern needs, not to kick it out entirely.
                    You should read the post the Wayland devs wrote for Phoronix a while back. They (and do note that some of them are very experienced (former) Xorg devs, some of the few people who actually understand how Xorg really works) outlined several examples of how X is broken, and not only broken as in "let's go fix this with a patch" broken, but "the entire software and protocol is built so badly and is such a huge mess of extensions, kludges and band-aid solutions that fixing this small thing is literally impossible" broken.

                    Examples of this kind of thing include glitchy subwindow syncing (scroll any youtube page and the video won't scroll in sync), and the thing where a popup-window blocks the screensaver from activating. Both of these are things that are literally impossible to fix in X, because of the way it's built. Not to mention that it's a huge load of spaghetti code, millions of lines, a lot of it useless overhead that isn't being used anymore.

                    So for these reasons, the best solution is not to update X. X is broken, good riddance, the faster we can all move to Wayland the better. And as for the X network protocol, Wayland already has a network protocol under development, and remoting is going to work even better on Wayland than it currently does on X. So yes, the network protocol is being updated to modern needs, just like the entire graphics stack is also being updated to modern needs.

                    Also, lol @ all the branching to unrelated topics.
                    Par for the course.

                    Comment


                    • #40
                      Originally posted by energyman View Post
                      jrch2k8, does your android need 'seats'? Or a network transparent X11?
                      Does your workstation do?

                      No to all of them.
                      Nice cherrypicking. I can do the same, watch:

                      Does your wheelbarrow need gasoline? Does your bathtub need gasoline? Does your refridgerator need it? No to all of them, so what use are gas stations?

                      Comment


                      • #41
                        Originally posted by curaga View Post
                        We've had this discussion already in other threads. Not going to repeat here. In short, X may have been outdated, but the solution is to update the network protocol to modern needs, not to kick it out entirely.

                        You've been blinded by the *new and shiny*. And I'm apparently the old crank. It's not nearly as bad as you make it sound, nor is the new and shiny as great as it's being made sound.
                        Curaga are you a troll or are you just thick? X. IS. BROKEN. FUNDAMENTALLY broken. You don't fix that with a patch or new module. You throw the entire thing out the window and you take the TWENTY YEARS of knowledge and experience you've gained to write the version PROPERLY. Network transparency in X is a HACK on modern day systems. You know what it looks like? Really poorly done synchronous VNC. You PHYSICALLY can't do networking WORSE than X did. Maybe it "worked" but it wasn't because it was great, it was because your standards for "working" were THAT low.

                        You really are an old crank at this point, not because WE are blinded by the new and shiny but you've been so jaded by age that you have the mentality of "Well this is how it was in my day! Just as good now!" Guess what, the world didnt stay still while you aged. The world is different. What worked for you "in your day" may not work anymore in the modern world. ESPECIALLY in computing. Adapt or die.

                        Comment


                        • #42
                          Originally posted by curaga View Post
                          Of course it does! You really don't see how?

                          A couple hundred or even thousand lines is easily extended, rewritten in pieces, changed; million is not.
                          Except that part of the problem is VTs being in the kernel, where they aren't supposed to be. You can extend that out of the kernel, by moving the thing to userland, and while you're at it, you can improve it to meet today's standards (which don't involve using ttys!). Now why are VTs in the kernel at the moment? Due to the age: back when it was implemented, all you needed was a text terminal, you couldn't use Linux with anything else because it didn't work with the X server yet at that point. Heck, there was barely even a split between kernel and userland to speak of!

                          Comment


                          • #43
                            Originally posted by energyman View Post
                            jrch2k8, does your android need 'seats'? Or a network transparent X11?
                            Does your workstation do?

                            No to all of them.

                            And for everything else: X11 worked with the bandwidth of the early 90s - but today it is too heavy... yeah.. and it is not like there are solutions for this... who don't need to butcher VT's or force systemd's crap.
                            i really don't get your point at all, but as i said today's X11 network is just a very very crappy VNC since Xorg don't render anything beyond pixmap since years ago and it has nothing to do with wayland or systemd.

                            in the 90's UI you basically only had text, shape and solid colors with very occasional 8bit pixmaps and gradients aka was extremely ugly but small enough to pass through reduced raw bandwith, in today standards that is simply not possible and since decades ago there are way better and efficient protocols that works with today standards like RDP/VNC/nomachine, etc. An even so when i needed to administrate Unix servers through X in the 90's it was not pretty or realtime like you make it sound, in fact an top 3com 56k modem[uber expensive in those days] was barely able to maintain the delay at 2 or 3 secs.

                            you ovbiously don't understand what are you talking about, VT is an error that turned into a mistake and became a bug that became a million hacks that grow to be a security hole and matured to be an eternal hell, basically everything a linux desktop miss that windows and OS X have and you ask "why linux can't do this, it should be trivial" goes down to X,GLX and VT pooping the party, basically everything related to rootkits or privilege scalation issues you may suffer end up being fault of one the trillion hacks needed to keep VT "working"/compiling, all the multiseat hell always goesback to VT, etc.

                            i can understand you like X don't understand why but i can accept it but if you defend VT then my friend i can say with 100% certainty that you don't know that the hell you are talking about

                            Comment


                            • #44
                              Originally posted by GreatEmerald View Post
                              Except that part of the problem is VTs being in the kernel, where they aren't supposed to be. You can extend that out of the kernel, by moving the thing to userland, and while you're at it, you can improve it to meet today's standards (which don't involve using ttys!). Now why are VTs in the kernel at the moment? Due to the age: back when it was implemented, all you needed was a text terminal, you couldn't use Linux with anything else because it didn't work with the X server yet at that point. Heck, there was barely even a split between kernel and userland to speak of!
                              well the problem is not this "OMG VT is awesome but it need a overhaul to be efficient for new hardware/software" but this "OMG VT is horrid i need to remove it to be efficient for the new hardware/software", the point is like X, VT is totally outdated and i mean design,concept,functionality, the whole lot of it to the point his only work is to make your life a living hell.

                              my point is by today standards we don't need an session manager or virtual terminals or session switch or hardware tied to seat0/VTX at all, we need an session authetication[pam,kerberos,radius,through logind or similar], we need hardware resource routing[drm render nodes] and a proper window system api that can handle the switches seamlessly[wayland/egl] and we need a way to assign and route multiple events and renders targets [egl/wayland/drm render nodes/evdev/systemd], etc. as you can see this means ditch 99.99% of VT code anyway

                              Comment


                              • #45
                                Originally posted by Ericg View Post
                                VT's DONT "just work" they are hacks upon hacks upon hacks and are being replaced to finally FIX their inherit problems.
                                Ericg, you claim to be objective and often point out when you believe others do FUD. But it's getting hard to ignore that you're doing the same just from the other side of the fence.

                                Have you, or have you not actually read the VT code?

                                Comment

                                Working...
                                X