This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.
Subject: Re: Lurkers question From: Joe Brenner <doom@kzsu.stanford.edu> Date: Wed, 20 Dec 2000 12:38:42 -0800 Rick Moen <rick@linuxmafia.com> wrote: > That graphics engine is a "server" in the sense that it serves up to > applications its ability to image using your video card. The Netscape > browser for X11/Linux, for example, has no idea how to draw anything; it > doesn't have to know. It's an X11 client: As such, when it need > something displayed to the user, it invokes the services of the user's > local X server. I have to say that I think the easiest way to understand the X server/client jargon is just to say that they got it backwards. Everone else calls the backend the server and the frontend the client, except for X. I can believe that there's some deeper understanding where this backwards terminology makes sense, but I'd rather be insulated from those particular depths Anyway, I think that this is the main point: > We call X11 a _networked_ graphics model because X11 client applications > can be running on remote machines, sending their X11-drawing requests > across a LAN (or across the Internet) to where the user and his local X > server are. You and your X server might be in California, where you're > looking at the screen output of a copy of the Netscape browser that is > actually running on a machine in New York. Coming from the Windows world, you're not usually used to thinking about an application seperated into frontends and backends, since they're both pretty much welded together. In the world of X, this isn't the case, and on occasion you may actually want to run an app on a remote machine, with the display on the console in front of you, as Rick describes here. === Subject: Re: Lurkers question From: Nick Moffitt <nick@zork.net> Date: Wed, 20 Dec 2000 12:53:09 -0800 begin Joe Brenner quotation: > I have to say that I think the easiest way to understand the X > server/client jargon is just to say that they got it backwards. > Everone else calls the backend the server and the frontend the > client, except for X. I can believe that there's some deeper > understanding where this backwards terminology makes sense, but I'd > rather be insulated from those particular depths Maybe X broke my brain, but it makes perfect sense. A Web server serves up its hard drive to you, shoving out files and such. An X server serves up its video card and mouse to you, taking in requests to draw and shoving back keyboard and mouse input. > Coming from the Windows world, you're not usually used to thinking > about an application seperated into frontends and backends, since > they're both pretty much welded together. They call it "integration" and they sell it as a "feature". In the Unix world, functional decomposition is a "feature". The less each program does, the more powerful it is, as per the three rules: 1: A program should Do One Thing and Do It Well 2: Portability is more important than performance 3: Power and flexibility come from the interactions among components. #1 seems counterintuitive to most, until you read #3. #2 shocks many people; but given the long-term development lifecycles of most complex systems, the ability to port to a faster machine is more of a win than optimizing for obsolete equipment. === Subject: Re: Lurkers question From: Nick Moffitt <nick@zork.net> Date: Wed, 20 Dec 2000 13:56:38 -0800 begin Joe Brenner quotation: > (I usually just try and say "frontend" and "backend" and avoid the > terms "client" and "server"). Two equally nebulous terms. === Subject: Re: Lurkers question From: Rick Moen <rick@linuxmafia.com> Date: Wed, 20 Dec 2000 14:09:06 -0800 begin Joe Brenner quotation: > I suspect that it's just a relative thing... you have a > bunch of things talking to each other, and which one is in > some sense subservient to the other is a matter of > perspective. The quality of A serving something up to B does _not_ require A to be subservient to B. In the case of X11, the X server -- quite simply -- serves up the ability to draw graphics primitives, on an output device, to X11-client processes. Nobody (but you) said iota about subservience. If you're having a difficult time grasping that, my condolences, but that is not a BALUG-list concern. === Subject: Re: Lurkers question From: kmself@ix.netcom.com Date: Wed, 20 Dec 2000 14:13:19 -0800 on Wed, Dec 20, 2000 at 01:56:38PM -0800, Nick Moffitt (nick@zork.net) wrot= e: > begin Joe Brenner quotation: > > (I usually just try and say "frontend" and "backend" and avoid the > > terms "client" and "server"). > Two equally nebulous terms. =20 That depends on what you're doing, Nick. === Subject: Re: Lurkers question From: Nick Moffitt <nick@zork.net> Date: Wed, 20 Dec 2000 14:25:43 -0800 begin Rick Moen Lives Three Hours from Nowhere quotation: > There are no native Framemaker or Netscape Communicator binaries for > your local box, but X11 lets you run both those applications on > their respective, nearby binary platforms, and image them onto your > Alpha's X server display. As a bonus, the load on all three systems is lighter. Beaujolais to distributed processing! === Subject: Re: Lurkers question From: Joe Brenner <doom@kzsu.stanford.edu> Date: Wed, 20 Dec 2000 14:32:26 -0800 Rick Moen <rick@linuxmafia.com> wrote: > begin Joe Brenner quotation: > > > I have to say that I think the easiest way to understand the X > > server/client jargon is just to say that they got it backwards. > > OK: > > -- Your solution is to tell people the terminology is wrong. > -- My solution is to explain the terminology, so it makes sense. > > I like my solution better. Much. As might be expected. The way I look at it is that it's sometimes easier to just say "this probably doesn't make any sense", (or at the very least "this terminology might seem obscure"). === Subject: Re: Lurkers question From: Joe Brenner <doom@kzsu.stanford.edu> Date: Wed, 20 Dec 2000 14:40:30 -0800 Rick Moen <rick@linuxmafia.com> wrote: > begin Joe Brenner quotation: > > > I suspect that it's just a relative thing... you have a > > bunch of things talking to each other, and which one is in > > some sense subservient to the other is a matter of > > perspective. > > The quality of A serving something up to B does _not_ require A to be > subservient to B. > > In the case of X11, the X server -- quite simply -- serves up the > ability to draw graphics primitives, on an output device, to X11-client > processes. Nobody (but you) said iota about subservience. Ok, okay, so it makes no sense to say that the server serves the client. Silly me. > If you're having a difficult time grasping that, my condolences, but > that is not a BALUG-list concern. Oops, there I go, cluttering up the list again. I better let you intelligent people get on with your business. === Subject: Re: Lurkers question From: Rick Moen <rick@linuxmafia.com> Date: Wed, 20 Dec 2000 14:58:26 -0800 begin Joe Brenner quotation: > The way I look at it is that it's sometimes easier to just say "this > probably doesn't make any sense", (or at the very least "this > terminology might seem obscure"). I aim at understanding the model. Which requires only understanding _what_ is being served. Successive waves of people "explained" X to me by telling me that the terminology is messed up and that I shouldn't try to understand why the graphics engine is called a server. Once I figured out for myself the terminology's internal logic (its model), understanding dawned for the first time. So, that's why I give that answer to others -- and why I get annoyed when other people cut in to "help" by advising the questioner to disregard what I said. > Sorry, didn't mean to be obscure. Apologies for being irritable, then. > When I first started reading things like this it left me going "But > what *is* it? A window manager? A widget set? And a floor wax! === Subject: Re: Lurkers question From: Rick Moen <rick@linuxmafia.com> Date: Wed, 20 Dec 2000 16:16:33 -0800 begin Joe Brenner quotation: > I had difficulty getting into the literature on X (but not > too much trouble in actually using it, e.g. to run a unix > app with an NT box as an Xterm) until it was pointed out to > me that in the X world (unlike everywhere else) the "client" > is not the thing in front of you. Again, the key is to understand _what is being served up_. It's really not difficult. === Subject: X Topology: As X Consortium seems to See It From: Brian Sroufek <brian_sroufek@msdesigninc.com> Date: Wed, 20 Dec 2000 20:07:47 -0800 I can see that the viewpoints are becoming viewports without a server... In any case, the way that the X Consortium, et. al., see it is something like this: XLib API -------------- --- Window Manager1 --- XClient1/Window1 ------- / \ XServer0 ---XDisplayMgr1 --- Window Manager 2 --- XClient2/Window2 ------- User (Host A) | / \ / | | | --- XClient3/Window3 -| | | | / | | | / XServer1 --- XDisplayMgr2 --- | -- Window Manager3 (Host B) | ++ | ++| | | | | XServer2 --- XDisplayMgrN --- (Host N) This is actually a kind of Multi-Server, Mid-Tier (2 Tiers), Client System. So, one should declare his/her viewpoint as the Client or Server so as to reduce the confusion. ===