On Tue, Oct 23, 2018 at 12:55 PM Guy Sotomayor Jr <g...@shiresoft.com> wrote:
> On Mon, Oct 22, 2018 at 3:59 PM Guy Sotomayor Jr <g...@shiresoft.com> > wrote: > >> An (optional) X server (and clients) can be added to the OS (I use them >> all the time) but is not part of the base install ... >> > > Apple has been using self-customized, optimized-for their-hardware > supersets of the VNC protocol (which is X based) for Screen Sharing since > early versions of OS X, if not from the beginning, and It's (still) In > There (per Prego spaghetti sauce ads) in the latest versions of OS X. > > That’s distinct from the X server and apps that are available as a > separate download (and I believe that now they point to Xorg). > No, it's not. You don't need any third-party X components to use Screen Sharing, and it works across all platforms, in both directions, that have a VNC-compatible client and/or server (depending on which direction you're looking from, remotely). I could show you in the source, but, then I'd have to kill you, if Apple didn't get to both of us first. There's what's in the public docs and especially marketing (including technical) material, and then there's what's actually In There. It's the sort of stuff marked with "COMPANY PROPRIETARY" watermarks that, if you try to scan or run it through a photocopier, produces black output due to opto-molecular chemical overlays. > BTW, the X server on OS X, interfaces not to the bit-map but instead to the >> native OS X display rendering framework. >> > > That's not possible, at least when communicating cross-platform, where > bitmaps are the only representation. > > *sigh* > Believe me, after developing graphics hardware and software for the past 46 years, I'm starting to think Apple would have the right idea with you, as noted above. My first graphics "workstation" was a Tektronix 4014 vector-based display hooked up to a PDP-11/70 (the high-voltage green flashes that cleared the capacitive display "memory" probably explain the lack of kids ... as far as I know!). My second (actual) workstation was an Evans & Sutherland (yes, Dave and Ivan) Picture System 1 (PS/1), which was dual-port mind-melded to one MB of static RAM in a box 3 x 3 x 3 feet, that cost a million bucks all by itself. The other RAM port connected to the Mass Bus on yet-another PDP-11/70 that connected to a network from which my user account files were accessible, from which 3-D vertex-and-edge model coordinates were loaded into the mega-RAM. The PS-1 then sucked in the coordinates and performed translation, scaling, and rotation in custom 3-D optimized floating-point hardware. However, it could only display wireframes in real time on a very short-persistence 23-inch diagonal, absolutely flat CRT (that cost somewhere in the six-figure range). It was a completely vector-based display in any two colors you wanted, as long as it was white strokes on a black background. There was no frame rate, as there were no frames - it just kept drawing line segments as commanded all day and night (which is what it took to get things working as intended, not as stated to the machine!). My third and fourth graphics workstations were a pair of $50,000 (each) SGI 2400s, delivering a whopping 30,000 Gouraud-shaded polygons/second. My $5.00 Raspberry Pi Zeroes can each deliver 40,000,000 Gouraud-shaded polygons/second ... in 1040p60. Where, oh where, did I park that pesky time machine, so I could take what's in my pocket now and buy the entire federal government from three-to-four decades ago??? There are a few more decades of those sorts of things on my ledger. Let's just say that "There are more things in Heaven and Earth, Horatio, than are dreamt of in your philosophy." As far as OS X is concerned, X is just another OS X application that wants > to render to the screen. I use it all the time and it works well along > side the normal OS X applications which wouldn’t be possible if the X > server wrote directly to the HW. > That's the case for your add-on X components - that's not how it can be done under the covers, but you apparently don't have access to that level. Screen Sharing isn't the only function that has this sort of capability, as also do 3-D graphics and video - they aren't constrained to the low-speed 2-D world for which Display Postscript/PDF, Quartz, etc., were developed. Performance is everything in these technologies, and they have their own APIs through which the hardware is accessed (the GPU), because going through the gobbledy-gook stack that's fine for documents and other high-drag data structures is a non-starter for them. All the Best, Jim