IBM i (OS/400) the Database Operating System
osadmins.com36 points by naves 7 hours ago
36 points by naves 7 hours ago
> Here we reach a point that is simultaneously the platform’s greatest advantage and heaviest burden. Due to such deep integration with dedicated and expensive hardware, IBM i is an “elite” system, in the less positive sense. A mere mortal, computer science student, or enthusiast has no chance to “touch” this system in the comfort of their home. You cannot download an ISO image from the internet, install it on a virtual machine in VirtualBox, or run it on your laptop. The barrier to entry is set at the price level of an IBM Power server, which effectively cuts off the supply of “fresh blood” and makes knowledge of this fascinating architecture passed down almost like guild knowledge, only within large organizations.
I took a course about these back in college. I thought it would be mind-expanding to see how computing could be outside of conventional Windows/Unix/Linux inspired environments, and use something with a very different design. The instructor had a desktop of one of these in his office. I remember logging into an official IBM educational system with a terminal emulator for an assignment.
Unfortunately, the instructor left about a month in, and I switched to a course involving UML modeling for programming Lego Mindstorm robots. Being hands-on with Mindstorms was cool, but I wonder what could have been had I finished the other course.
You can get IBM i (OS/400) running at home, but the hurdles are many. You need to have one of a specific set of PowerPC servers and need to "acquire" an operating system image. Which will be running in unlicensed demo mode. This YouTuber did it.
https://www.youtube.com/watch?v=mUwJk81YatA
It's long been said that the biggest obstacle to wider adoption of the AS/400 is IBM itself. They offer classes, but don't make it easy - you have to join COMMON (their user group) and/or be enrolled in a university.
Amusingly, however - IBM did produce - or worked on - a Laptop AS/400, based on PowerPC for purely internal use. I believe it was designed for sales/marketing types to take on the road for demos
It likely would have been based on the PowerPC-based ThinkPad like laptop they produced which also ran AIX (IBM's version of Unix). like these https://en.wikipedia.org/wiki/ThinkPad_Power_Series
The article makes me feel the author doesn’t have a deep understanding of some of the mechanisms. TIMI, iirc, is similar to Java (or Smalltalk) bytecode. I’m not sure it’s translated to native instructions on install or on module load, but the native code is kept so that the compilation doesn’t need to happen again. It’s as if the JVM saved a .nativeclass file when a .class file is loaded (kind of one level lower than what Python does, turning a .py file into a .pyc, or .pyo).
The concept of a flat object space we saw in Smalltalk and Lisps (the “system image”) would be seen again, kind of, in the Newton, the Palm, and, IIRC, in Taligent’s Pink. It’s a shame the IBMi is so poorly documented (in sharp contrast with its Z big brother) that no emulator capable of booting OS/400 images exists.
It’s not that this approach is perfect though - it’s really hard to bootstrap a Smalltalk image from scratch. I assume making an IBMi image without a running IBMi system would be similarly challenging.
Actually all modern JVM implementations, and Android, do exactly that, JIT caches that survive across executions. On Android it is additionally used to guide AOT compilation when the device is idle or charging.
TIMI is compiled to native code on installation, or explicitly, either by the admin, or on updates that render the overall compilation invalid.
I'd recommend people read "Inside the AS400" by Frank G. Soltis, as the concepts behind the OS are quite strange and unlike anything else I've ever seen. Unfortunately paper copies are pretty expensive, but there's a high quality PDF floating around on Bittorrent.
IBM i was k8s before k8s, with fewer yaml files and better backwards compat
Some of my first exposure to enterprise IT was via the AS/400 and served as a fantastic basis for the cloud stack and agents of today.
We live in the shattered remains, badly reconstructed, of what a true operating system could be - we have some of the pieces (zfs, k8s, virtualization, scaling, failover, nixos, qubes) but imagine it all put together, orchestrated, carefully documented and tested by immense number of engineers. Ah, what could have been.
The problem is license costs. IBM makes a great system but almost all their customers have been working hard to replace it, not because of issues with the quality but the high license costs.
IBM AS/400 lineup was fully designed to optimize customer segmentation and threfore capture better the customer value. For example, there were cheaper models where the hardware was exactly the same as more expensive models except for additional hardware loops to make things run slower. That’s why they had so many models, they wanted to have a price point available for every company size.
There's really only one acceptable price for an OS, and it's the same as the only acceptable price for a browser or DB - $0.00. The precedent has been pretty solidly set (Linux, FreeBSD, MySQL, Postgres, Chrome, Firefox...) at this point, hence all the pivots to charging for service and support and suchlike.
This is what it feels like to look in at Linux from the outside as a Windows admin used to corporate-enforced consistency.
Sure, Microsoft has stumbled a bit recently, but around the 2010s it was a glorious era of PowerShell and Windows Server releases that were still improving.
I remember being quite young and proud that I had built something using Samba and Kerberos that mimicked an NT domain controller, and how powerful it was for our little LAN in the dorm, and why would anyone pay M$ for this, and then barely a few years later using small business server and being like "oh, that's why".
Turns out it's far easier to do stuff if you are in control of every single level.
The main database of the company i work for is DB2 on a very recent IBM System. In terms of sql there’s nothing i miss that postgresql has.
If only the company for the software which runs on top of the DB2 would have used single column primary keys (some go over 7 columns) and not decimal for dates…
Wow, from the site looks like aix is still alive, as is PowerPC
The PowerPC name is still around although it's mostly around in the form of the POWER ISA used in systems that run AIX and, I believe OS/400. IBM i used to be a largely distinct product line that grew from older IBM minicomputers but a lot of the hardware is now shared with POWER systems running AIX (and Linux?) I've been largely out of this space for a while so I may have some details wrong.
TF is even this
>Thanks to this, an administrator seeing the string 123456/QUSER/QZDASOINIT immediately knows who and what launched it, without having to map mysterious PID numbers to service names.
did old UNIXes didn't have process names or something ? Those are exactly same information (pid/user/process name) UNIX derivatives or hell, windows get
Author seems to be blindsided by the "different" enough to not have any useful insight in it