[HN Gopher] IBM AS/400: Databases all the way down [video] (2019)
___________________________________________________________________
IBM AS/400: Databases all the way down [video] (2019)
Author : twoodfin
Score : 99 points
Date : 2023-05-02 14:02 UTC (8 hours ago)
(HTM) web link (www.youtube.com)
(TXT) w3m dump (www.youtube.com)
| [deleted]
| zokier wrote:
| Not only AS/400 itself is pretty alien, even the terminals are
| unusual from modern viewpoint; they were not just dumb character
| grids or text lines, but had some logic for handling forms etc on
| the terminal side
| PaulHoule wrote:
| AS/400 had a terminal that was similar to but not compatible
| with the 3270 used on the 360 mainframes. Applications like
| either one are a lot like web applications from 1999, that is,
| the mainframe draws a screen with a form in it, the user fills
| out the form, hits a button, and it get submitted.
|
| The programming model for transaction managers like CICS on the
| 360 was similar in some ways to back end web frameworks, they
| even had clever code generation systems (see "X macros") for
| writing serialization/deserialization in assembly language.
| poo-yie wrote:
| AS/400 terminal is 5250. Like you said, it's similar to 3270
| but different.
| citizenkeen wrote:
| We have 2.5 RPG/AS400 devs in my department keeping our old
| legacy system alive and trucking. They're great devs and they do
| good work, but every time I get roped into their side of things I
| feel lost and confused.
| robotnikman wrote:
| Interesting tidbit I found the other day, apparently there was a
| collaboration between Nintendo and IBM to promote AS/400, which
| resulted in the online game "Mario Net Quest"
|
| https://www.reddit.com/r/UnreleasedGames/comments/133ukrl/co...
| sillywalk wrote:
| That seems really a really weird combo, I wonder what the
| thinking was.
| jordemort wrote:
| I had a class in community college that was taught on one of
| these. It was not what I was expecting from a programming class.
| I had a real bad time of it.
|
| Later on, I briefly came to be in possession of an AS/400 that
| allegedly originally belonged to WKQX Chicago. I held on to it
| for a couple months but I didn't even have the slightest idea
| about how to go about hooking it up, let alone the proper cables,
| so I eventually let it go to another scraphound.
| bullen wrote:
| Reminds me of this: https://en.wikipedia.org/wiki/Intel_iAPX_432
| hsnewman wrote:
| Yup, in the late 80's, and 90's I worked on several AS/400's. The
| video doesn't mention that not only is SQL a part of the OS, the
| hardware (microcoded) actually has instructions for SQL. It's
| part of the CPU!
| ch_123 wrote:
| On the original CISC AS/400 systems, there were two layers of
| "microcode" - horizontal and vertical. The vertical "microcode"
| was not really microcode, but was essentially the OS kernel
| (including the database and the native code generator), mostly
| implemented in a PL/I dialect. The horizontal microcode was the
| actual microcode - it implemented the CPU instruction set which
| the vertical microcode's PL/I code compiled down to. While the
| horizontal microcode implemented some rather high level things
| such as processor scheduling, I am almost certain that the
| database logic was implemented in the vertical microcode layer.
|
| Once IBM i was ported to PowerPC, the vertical microcode was
| mostly rewritten in C++ and became known as the "Licensed
| Internal Code" and the PPC instruction set essentially replaced
| the role of the horizontal microcode.
| sillywalk wrote:
| This [0] is a pretty good intro to the AS/400 etc.
|
| [0]
| https://www.scss.tcd.ie/SCSSTreasuresCatalog/hardware/TCD-
| SC...
| rbanffy wrote:
| Kind of.
|
| Not sure about the CISC-based AS/400, but current ones have
| bytecode translation (AOT compilation, IIRC) and run on POWER.
| In hardware terms, a pSeries and an iSeries are the same, with
| different microcode customizations loaded into the processors.
| I think it's even possible to run AIX partitions side by side
| with IBM i ones, if the processors (or TPM's, not sure) have a
| valid license.
| thequux wrote:
| It is absolutely possible to run AIX and IBM i in separate
| LPARs on the same machine (as of Power 7, at least), as long
| as you have the appropriate hardware entitlement to run IBM
| i.
| ch_123 wrote:
| pSeries and iSeries were consolidated down to "IBM Power
| Systems" back in 2008. I think they may install different
| firmware onto the systems, but the differences are more
| related to licensing than anything specific to the hardware.
| kps wrote:
| I think they always did AOT compilation from the AS/400
| instruction set to the actual hardware. In the '90s I worked
| for an external company that did some compiler work on a
| horizontally-microcoded implementation that didn't get close
| to shipping. (I don't remember many details, and if I did, I
| expect they'd still be under NDA.)
| tannhaeuser wrote:
| RPG, though ...
| orthoxerox wrote:
| It's like functional programming in that everything useful an
| RPG program does is a side effect. A side effect of creating a
| report, in its case.
| mberning wrote:
| Man what a nightmare. I work at a place that still to this day
| runs on a mainframe with programs mostly written in assembly.
| It's the pure essence of the boomer mentality manifest in
| software. All the people involved got theirs and retired and left
| a steaming pile of shit for everyone else to deal with.
| hlandau wrote:
| The AS/400 is, indeed, a truly weird system. Nowadays it runs as
| a VM guest on an IBM POWER system. Interestingly, it makes use of
| hardware tagged memory functionality in the IBM POWER CPUs. You
| can tinker with this stuff yourself if you have a Talos/Blackbird
| (or other POWER9) system, as I wrote about previously [1] [2].
|
| [1] https://www.devever.net/~hl/power9tags
|
| [1] https://www.devever.net/~hl/ppcas
| rbanffy wrote:
| I like to joke there are platforms that were so ahead of their
| time they are still ahead of ours. The AS/400 is one such thing.
| It concerns me IBM doesn't seem to provide enough entry-level
| resources (and I believe nobody would do a green field project on
| IBMi that required a company to invest on the platform unless it
| already had a sizeable investment on it). For all three of their
| crown jewels, AIX, Z and i, IBM is doing a terrible job in
| onboarding new clients.
|
| BTW, I've been trying to set up a small AIX box to do some
| software testing (and not make the mistake of making a Unix app
| dependent on linuxisms) on IBM cloud and, even when you navigate
| the confusing UI and metaphors (there is no "give me a POWER10
| AIX VM with this many vCPUS, this much memory and this much disk"
| option), it's failing for me for unfathomable reasons while
| trying to create a storage volume with the default options. On a
| side note, I can create a Linux VM running on s390x from the same
| flow I create x86 ones, but I can't select a z/OS disk image, or
| a POWER processor. If I want a z/OS machine, I have to go through
| an entirely different workflow (one I went through, only to never
| be able to figure out the IP addresses I could ssh to).
| [deleted]
| msla wrote:
| I don't know why AIX would be compelling. Isn't it just another
| proprietary Unix?
| rbanffy wrote:
| It all depends on performance per dollar - POWER and AIX,
| POWER and Linux, x86 and Linux, ARM and Linux, SPARC and
| Solaris... It's all about what gets you more work done per
| unit of money until you retire the box. Is it compelling? Not
| sure - depends on licensing terms, co-location costs, what
| are you doing, energy costs, AND compute power. As compelling
| x86 and ARM with Linux seem to be now, I wouldn't rule out
| other platforms without an assessment based on the workload.
|
| Once I managed to bring a couple Itanium boxes we had from
| retirement because their then humongous caches were perfect
| fits for our working dataset and, therefore, _for that
| specific workload_ they were 10x faster than our Xeons.
| msla wrote:
| > Is it compelling? Not sure - depends on licensing terms,
| co-location costs, what are you doing, energy costs, AND
| compute power.
|
| It seems like Linux always wins in terms of licensing, so
| does it currently lose in any of those metrics?
|
| Also, since Linux runs on IBM POWER systems, it looks a lot
| like IBM's AIX has very little place to stand: Even if the
| hardware is better (which, judging from experience with
| other proprietary workstation vendors like Sun, I'd be
| surprised about) the value proposition of running Linux as
| opposed to a proprietary OS with less effective support and
| expensive licensing appears insurmountable.
|
| https://en.wikipedia.org/wiki/PowerLinux
|
| So, I'd be willing to believe that IBM's hardware is better
| in some ways, but I'm more skeptical about IBM's software
| in a realm where an apples-to-apples comparison is
| possible.
| Spooky23 wrote:
| You run the IBM power stuff mostly because it is the most
| cost effective way to run Oracle and other CPU licensed
| workloads. You can't use VMWare partitioning to avoid
| paying. But the IBM hardware based stuff allows you to
| segment the workloads.
|
| The other thing is that like mainframe, you can lease CPU
| on demand. So if your business is cyclical, it may be
| better to increase CPU November-January by 20%.
| rbanffy wrote:
| I would expect AIX to be finely tuned to IBM's hardware
| and able to exploit the exotic hardware that's bundled
| with the machine.
| msla wrote:
| I mean, you'd have expected that of Solaris and Sun's
| hardware, too, but that didn't make Solaris on Sun
| workstations compelling enough to actually survive. That
| argument seems like a variation on one of the myths
| mentioned in these posts:
|
| https://utcc.utoronto.ca/~cks/space/blog/unix/PCsAreUnixW
| ork...
|
| https://utcc.utoronto.ca/~cks/space/blog/unix/Workstation
| Myt...
|
| In short, I'm not sure IBM Power machines _have_ any
| special hardware, and if they do, I 'm reasonably sure
| Linux supports it. It is, after all, a smaller and more
| stationary target than the weird crap that ended up
| inside and hooked to commodity PCs that Linux ended up
| supporting.
| rbanffy wrote:
| Sun abandoned the workstation space well before Oracle
| finished abandoning SPARC and Solaris.
|
| As for special hardware, the processor drawer of an E1080
| looks a lot like the one of a z16 (without the
| distributed virtual cache of the Telum, or the insane
| water cooling blocks):
|
| https://power10-ar-experience.com/
| formerly_proven wrote:
| My company still runs a lot of stuff on AIX (also
| mainframes for that matter) and the reason is that it was
| set up that way in the 90s and no one feels like
| investing the sizeable amount to move these business-
| critical applications over to Linux just for the sake of
| it. Unlike all the other unices that were formerly used
| here (HP UX, IRIX, Solaris, Super-UX and others) you can
| still get AIX support so there is nothing forcing the
| hand of this migration. I expect them to still run some
| stuff on AIX in 10 or 20 years. Nothing new will ever be
| deployed to AIX and probably hasn't been in 20 years. At
| some point the AIX systems will only be around for a
| handful of niche things and at that point the cost of
| migrating those over might become lower than the cost of
| paying IBM off.
| dilippkumar wrote:
| Generalizing the question a little in case someone passes
| through with an answer:
|
| Why should a couple of hackers working out of the proverbial
| garage building the next unicorn consider IBM as their
| infrastructure vendor?
|
| What are their offerings? How do those stack up against the
| defaults of aws/Azure + Linux + Postgres/MySql?
|
| Assume said hackers are broke.
| mixmastamyk wrote:
| They wouldn't. These are "deep pockets" platforms. Ramen
| eaters need not apply.
| rbanffy wrote:
| This is the point - IBM doesn't seem willing to help. I'd
| love to be able to use LinuxONE machines as VM hosts
| (single thread performance and IO throughput are
| absolutely ludicrous) but there seems to be no entry-
| level machine that doesn't imply in a very sizeable
| investment. And I suspect LinuxONE and POWER10 machines
| would very cost effective ways for IBM to provide Linux
| VMs for public cloud environments at better
| price/performance points that it could be achieved with
| x86 or ARM.
|
| To me, it's absolutely nuts they don't have entry paths
| to their crown jewels. What will IBM's competitive
| advantage if everyone migrates from AIX and IBMi to
| Linux? While there is no IBMi emulator, there are
| commercial environments that can compile and run COBOL
| and PL/1 code made for i on x86 Linux machines.
| easton wrote:
| I think that was the point of the Red Hat acquisition.
| "See all those Linux boxes you run? Do you want to have
| someone to yell at when they blow up? It's either us or
| Canonical.".
|
| There's no way z/OS is going to be free or open-source
| (if for no other reason than if they open sourced it,
| you'd still need a mainframe, which means you're going to
| pay IBM for cloud time), so if hobbyists are going to
| start with something they'll probably start with Linux.
| Once they are no longer a hobbyist, IBM will be there to
| help.
| rbanffy wrote:
| > There's no way z/OS is going to be free or open-source
|
| I never said that.
|
| What I said is that there aren't any onboarding routes to
| z/OS (or AIX, or IBMi). You either already are running
| one or more z/OS boxes, or you'll just deploy to cloud,
| CentOS, Kubernetes, OpenShift, on commodity CPUs (x86 and
| ARM), or any of the other stack that rivals a mainframe
| in some capabilities (and carefully avoid business
| requirements only a mainframe can fulfill)
| msla wrote:
| > There's no way z/OS is going to be free or open-source
| (if for no other reason than if they open sourced it,
| you'd still need a mainframe, which means you're going to
| pay IBM for cloud time)
|
| This is probably why IBM mainframe OSes until the 1980s
| are public domain: You can't run MVS without an IBM
| mainframe, so why bother even copyrighting the source
| code? The Hercules people are grateful for that bit of
| pragmatism.
|
| http://www.hercules-390.org/hercfaq.html
|
| https://www.ibiblio.org/jmaynard/
|
| https://wotho.ethz.ch/tk4-/
|
| https://cbttape.org/~jmorrison/mvs38j/index.html
| hlandau wrote:
| I believe the actual reason old IBM mainframe OSes is
| that computer programs originally weren't copyrightable.
| When the law was changed to make them copyrightable, this
| wasn't retroactive.
| Spooky23 wrote:
| You wouldn't. Most customers tolerate IBM, they aren't
| investing.
|
| The only exception is in the defense space, there are some
| things from a segmentation perspective that are cheaper to
| achieve on mainframes. But that isn't a startup scenario,
| and those advantages are eroding as well.
|
| IBM has huge margins on this stuff, so the typical play is
| use margin on the mainframe to win software and services
| deals. Startups need fast time to market, so it makes sense
| to overpay AWS by the drink than to overpay for a feast
| from IBM.
| PaulHoule wrote:
| The closest system that hit it big was Java.
|
| AS/400 was based on the System/38 which had a capabilities-
| based OS and persistence built into the system from day one. (I
| remember the bad old days of JDK 1.0 before there was
| serialization which was awful for writing applets because more
| than half of your applet might be serDes code. I think Sun
| panicked when Netscape came out with a serialization library
| before they did.)
|
| In the 1980s there was a fad for complex architectures like the
| Lisp machines, stack machines, the iAPX 432, etc. Common Lisp
| and the JVM put those to rest showing you could implement a
| featureful virtual machine in a mainstream CPU. My
| understanding is that was what System/38 was from the
| beginning.
| yellowapple wrote:
| > It concerns me IBM doesn't seem to provide enough entry-level
| resources
|
| Hell, at one point I worked for IBM and even _I_ couldn 't get
| access to any decent entry-level resources (let alone beyond!).
| bluepizza wrote:
| IBM is doing a terrible job onboarding because they are all
| focused on offboarding.
|
| This hardware is expensive and not as performant as any modern
| competitor. The software is arcane, confusing, and it is a pain
| for IBM themselves to keep supporting it. AS/400 is a costly
| legacy. AIX has no reason to be in a world that Linux and BSD
| exists - IBM owns Red Hat after all.
|
| It was a cool technology. But it's definitely a thing of the
| past.
| eddieroger wrote:
| That all may be true for the actual implementation, but the
| idea of the ability to write an application with a built-in
| relational database that would be available to all my users
| relatively instantly is still a great idea, and the closest
| thing we get to that today is the web, but the web comes with
| it's own whole thing, least of which being a dev stack with
| so many moving parts by comparison.
| rbanffy wrote:
| You don't need to build on Kubernetes when an ECS cluster
| and an RDS instance will do the job. It _is_ possible to
| build simple things in the cloud.
| PaulHoule wrote:
| z is up to the minute in terms of clock speed, CPU process
| and such. They have a RAIM system which is like a RAID array
| for RAM which must cost something in latency but lets you
| replace failing RAM sticks when the machine is running. The
| rest of the industry will have something like that soon based
| on CXL.
| bluepizza wrote:
| Being up to the minute in terms of clock speed doesn't
| matter that much when, for example, DB2 on the
| AS/400/iSystem has a much higher latency and handle much
| less requests per second than an equivalent Xeon.
|
| Replacing failing RAM sticks live are also something that,
| while quite cool and impressive, it happens to be quite
| pointless in today's world of clusters.
|
| Current AS/400 is almost retrofuturistic in both its cool
| factor and disconnection from current actual needs.
| PaulHoule wrote:
| I'll maintain that Kubernetes makes Parallel Sysplex look
| user friendly.
| rbanffy wrote:
| This is one of the mainframe's key selling points. Not
| that I am implying z/VM is user friendly.
|
| But instead of managing a fleet of x86 servers, switches,
| routers, storage boxes (you may need a few of those), all
| liable to fail without warning, you have an exquisitely
| built datacenter that fits in half-a-dozen 19" racks
| (counting 2 for storage) where redundancy, failover, and
| easy maintenance are built-in at the hardware level.
| speed_spread wrote:
| IBM still makes boatloads of money providing support and
| upgrade paths to it's legacy customers. They aren't
| _actively_ offboarding because it wouldn't make sense to lose
| that institutional market that they effectively own by the
| balls and that nobody will fight them for. It'd be hard to
| sell that tech to new customers though and it would also
| invite comparison to modern solutions, which would not please
| their current customers. It's like IBM is running a island
| prison / amusement park for rich old people. Just keep them
| happy and they'll keep paying.
| bluepizza wrote:
| My anecdata involves a foreign market. Maybe IBM USA is
| more keen on keeping this rolling, but in Japan we got
| strong pushback and were led to cloud solutions every time
| we discussed acquiring new hardware. They were very
| proactively trying to get us out of AS/400 and into their
| cloud platform.
| speed_spread wrote:
| Interesting, maybe they feel that they have a strong
| enough grip on their customers that they can move them
| away from proprietary hardware to higher-margins
| proprietary cloud solutions.
| rbanffy wrote:
| Or maybe someone's KPIs are aligned towards cloud growth.
| bluepizza wrote:
| That's true and it really is a major factor in dying
| technologies: where there is no growth, there is no
| investment.
| LeftHandPath wrote:
| I have worked with these extensively - my employer uses one for
| work, and I have written software both in the greenscreen / ILE
| languages and in the PASE environment / IFS to accomplish certain
| tasks (e.g. setting up an intranet site with PHP to present
| pretty-fied reports of what's in the databases).
|
| I think one of my favorite things about it is actually IBM's Data
| Description Specification (DDS) [0]. You use it for the same
| reason you'd use a `CREATE TABLE` statement in SQL, but the
| syntax is much more legible / suited for that purpose, and the
| file is stored permanently (and used to spool up a "physical
| file" with the given format, where the data is actually stored).
|
| Definitely encourage anyone who is curious about these / esoteric
| OS's in general to look into them - you can get hands on through
| IBM's "Cloud for Co-Creation and Enablement" (I believe it's been
| renamed) or PUB400 [1].
|
| [0]: https://www.ibm.com/docs/en/i/7.3?topic=files-describing-
| usi...
|
| [1]: https://www.pub400.com/
| debacle wrote:
| The AS/400 OS is one of the most arcane systems I've ever used.
| Power users can do some incredible things, but I think long-term
| use results in strange things.
| rbanffy wrote:
| To me, before I met Unisys' MCP, it was the epitome of user-
| hostile OS. Not because it's particularly difficult to
| navigate, but that everything is deeply alien (same feeling as
| z/OS, BTW).
|
| Then I met MCP, where everything is both hard to navigate AND
| deeply alien. ;-)
|
| I'm sure Alan Kay is on my side on that one.
| tivert wrote:
| > To me, before I met Unisys' MCP, it was the epitome of
| user-hostile OS. Not because it's particularly difficult to
| navigate, but that everything is deeply alien (same feeling
| as z/OS, BTW).
|
| Nit, but you're not describing something that's "user-
| hostile," just something that's unfamiliar to the user that
| is you.
|
| Alien could actually be very good and user-friendly, since a
| lot of the stuff we're used to frankly sucks, and we're stuck
| as at an inferior local maxima that's very hard to get out
| of.
| rbanffy wrote:
| > something that's unfamiliar
|
| True, but unfamiliar and hard to learn combine to make it
| forbidding to newcomers.
|
| Case in point: https://retrocomputing.stackexchange.com/que
| stions/26398/how...
| watersb wrote:
| Perhaps it's bad PR?
|
| The TRON MCP was definitely hostile. Not sure if its victims
| could have been considered "users", though.
|
| https://www.google.com/search?q=tron+mcp
|
| Master Control Program
| rbanffy wrote:
| It really didn't like users though. It tried to kill Flynn
| a couple times.
| gr33nq wrote:
| We still work with an AS/400 (IBM iSeries) on a daily basis for
| legacy data, and it's impressive to watch how quickly our older
| staff members navigate the interface and get work done with it.
| It's several orders of magnitude faster than our newer web-
| based ERP, and I don't think I can be convinced that any modern
| browser UI will ever match the efficiencies offered by a
| terminal-based interface. That's not to discount the numerous
| technical benefits you reap by moving to a modern software
| stack, but strictly from an end-user usability standpoint, the
| AS/400 still wins in my book.
| unixhero wrote:
| A friend of mine got a job as a junior developer at an insurance
| company whom rely solely on IBMi and RPG programs running on it.
|
| It is not dead.
| nivethan wrote:
| This is also very much like the pick operating system, currently
| the biggest multivalue operating systems are UniVerse, UniData
| and D3. If you want to try them out, look into scarletdme. The
| multivalue style is a total mind bend at the beginning!
| Mister_Snuggles wrote:
| My first job was supporting an in-house system built in
| UniVerse. My second job was supporting a commercial ERP that
| ram on top of UniData.
|
| I like the more modern stuff I work with now, but I truly miss
| the multivalue world some days.
|
| Every once in a while I install the UniVerse personal edition
| and build something for fun. I will definitely check out
| scarletdme!
| nivethan wrote:
| Because I'm just a straight nerd for BASIC here are some
| links!
|
| A quick guide to getting started with scarletdme:
| https://nivethan.dev/devlog/scarletdme.html
|
| Unfortunately I never ported my editor and shell to
| scarletdme so this will be UniVerse/UD/D3 specific:
|
| An editor like vim: https://github.com/Krowemoh/eva
|
| A fish like shell: https://github.com/Krowemoh/nsh
|
| scarletdme in the browser(this will be a 500mb download as it
| runs debian under v86.js):
| https://nivethan.dev/projects/v86/scarlet.html
| zabzonk wrote:
| ibm 4381 running vm/cms - best platform ever. beautiful hardware,
| wonderful operating system, brilliant documentation.
| justanother wrote:
| One of my first ("borrowed") internet accounts was on VM/XA SP
| around 1991. Yeah you had to hit CTRL-Z to clear your screen,
| but I was actually amazed at how friendly this machine was (and
| it would happily spit out pages and pages of helpful
| documentation), given that it was an "IBM mainframe." It was
| quite the experience learning to navigate the nascent internet
| and BITNet of the time on that thing.
| jefc1111 wrote:
| I worked with AS/400s. Very fond memories of changing the backup
| tapes, in particular. I loved the server room! Meanwhile on the
| software side I was mostly dealing with EDI messages and it was
| all about critically precise placement of characters (including
| whitespace). It was ... weird. Nice machines though. The whole
| company's back office systems for around 300 shops ran on two of
| them in head office. Ah nostalgia...
| nkw wrote:
| That terminal is beautiful. The colors, typeface, and sparse
| layout make it incredibly readable for me.
| chrisstanchak wrote:
| pwrdwnsys *immed
| racingmars wrote:
| I always feel bad not giving it two minutes just in case!
| `pwrdwnsys delay(120)` for good luck. ha
| isUserAMonkey wrote:
| About 25 years ago I was trying to just stop a http server but
| instead issued ENDTCPSVR (ommitting which type of tcp server),
| everyone in my department lost their connection and the
| sysadmin walked over to my desk saying this is why devs should
| not have any admin access.
|
| I did a walk of shame around each desk apologizing profusely.
| cyberge99 wrote:
| REQUIRES QSECOFR
| sillywalk wrote:
| IBM i (AS/400) is ( I think) the last of the
| midrange/minicomputers still being developed by the original
| company. vs OpenVMS/VAX, HP 3000 - MPE/IX, etc.
___________________________________________________________________
(page generated 2023-05-02 23:00 UTC)