Hi Alan,
And they now run AIX native binary OS on the same metal guts as they
do the the i5/OS, right? (As a non-AIX or Linux guy, me) And AIX and
Linux already have source and binaries that can render graphics on an
ASCII "dumb terminal", right?
Err.. Yes, basically. Personally, I don't think of an X terminal as a
"dumb terminal", rather I think of a dumb terminal as being a pure ASCII
terminal (i.e. no graphics)
But, yes, you're right... an X terminal just displays what another
system sends to it to be displayed. The actual code that runs the
software is on a server.
Would they have "C-type libraries" on the AIX that support such
rendering of graphics output to those terminals?
Yes, they do. In fact, those same "C-type libraries" can be run on
i5/OS under PASE. Java uses them to render it's GUI screens. IBM
always tells you to use VNC to view the output -- but technically in
that case, they're using the X11 protocol (the one that X Terminals use)
to send the graphics to a VNC Server running on the same system, and
then running VNC's protocol to send it over the network. A bit
convoluted if you ask me -- but that's just the way IBM tells you to use it.
It's perfectly possible (easy, in fact) to set up an X desktop on your
PC and have Java (or PASE programs) write their output directly via the
X protocol.
In fact, I have Cygwin X (a free, open source, X server for Windows)
running on my PC. I'm able to run graphical programs on my iSeries 270
in PASE, and they output their displays to my PC. You can't tell the
difference between the Windows programs and the ones running on i5/OS,
they all interact together on the same display. To someone who doesn't
know better, they all look like "Windows programs". In my mind, it
works 1000 times better than VNC.
Java programs running natively on i5/OS have the same capability... they
can run on the '400 and write to the display on my PC.
RPG, C, COBOL, CL... none of these have that capability. Since the
actual X11 rendering libraries run in PASE, it's not easy to make them
work, either. I'd have to write a C program, compile it to an AIX
binary, then communicate with it via sockets (or similar) to tell it
which APIs to call from my RPG program. Not easy by any stretch.
Of course, I could call the Java routines directly from RPG using RPG's
support for calling Java methods -- I've been thinking about doing that,
but haven't tried it yet. The overhead of Java always frustrates me.
Could someone build one to throughput to some graphics output or
output/input device, like Export Ventures?
Export Ventures has already done so... they've ported the X11 stuff to
pure native i5/OS (no need for PASE), but last I heard, there weren't
too many people using it.
To me, one of the strengths of our platform is integration. The tools
need to be deeply integrated. A complex set of APIs that's not
integrated into a language is okay, but it's throwing away some of the
advatnages of the system. I'd like them to be deeply integrated.. RPG
needs to know that it's working with X11, and needs to make it as easy
as possible to do so. WDSC needs the facility to design GUI screens
displayed via X11. The technology is certainly there, it's just not all
integrated together and easy for us to use.
Same thing with HTML interfaces. IBM could make a screen designer in
WDSC that makes it easy to lay out a screen, and knows about input and
output fields that will come from a program. They could give RPG the
ability to easily display those screens. Right now the closest thing we
have is CGIDEV2 -- which is very good, but not as integrated. You still
have to design the HTML separately, then go back and modify it to have
the sections and variables, then call extra APIs to get the input, etc.
Plus the extra work of creating your own session keys, storing session
variables, etc. Tell IBM you want this stuff, they tell you to use
WebSphere or PHP or something like that. "Use the right tool for the job."
As an Amazon Associate we earn from qualifying purchases.