Microsoft-Paul Allen

Jim Manley jim.manley at gmail.com
Tue Oct 23 17:30:23 CDT 2018


On Tue, Oct 23, 2018 at 12:55 PM Guy Sotomayor Jr <ggs at shiresoft.com> wrote:

> On Mon, Oct 22, 2018 at 3:59 PM Guy Sotomayor Jr <ggs at 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


More information about the cctech mailing list