IBM Archive

IBM, dominance, and big tech

Recently, popular Apple blogger John Gruber has been on a mission to explain why, exactly, tech companies like Apple don’t need any stricter government oversight or be subjected to stricter rules and regulations. He does so by pointing to technology companies that were once dominant, but have since fallen by the wayside a little bit. His most recent example is IBM, once dominant among computer users, but now a very different company, focused on enterprise, servers, and very high-end computing. Gruber’s argument: It wasn’t too long ago — 20, 25 years? — when a leadership story like this at IBM would have been all anyone in tech talked about for weeks to come. They’ve been diminished not because the government broke them up or curbed their behavior through regulations, but simply because they faded away. It is extremely difficult to become dominant in tech, but it’s just as difficult to stay dominant for longer than a short run. Setting aside the fact that having to dig 40 years into the past of the fast-changing technology industry to find an example of a company losing its dominance among general consumers and try to apply that to vastly different tech industry of today is highly questionable, IBM specifically is an exceptionally terrible example to begin with. I don’t think the average OSNews reader needs a history lesson when it comes to IBM, but for the sake of completeness – IBM developed the IBM Personal Computer in the early ’80s, and it became a massive success. Almost overnight, it became the personal computer, and with IBM opting for a relatively open architecture – especially compared to its competitors at the time – it was inevitable that clones would appear. The first few clones that came onto the market, however, ran into a problem. While IBM opted for an open architecture to foster other companies making software and add-in cards and peripherals, what they most certainly did not want was other companies making computers that were 100% compatible with the IBM Personal Computer. In order to make a 100% IBM compatible, you’d need to have IBM’s BIOS – and IBM wasn’t intent on licensing it to anyone. And so, the first clones that entered the market simply copied IBM’s BIOS hook, line, and sinker, or wrote a new BIOS using IBM’s incredibly detailed manual. Both methods were gross violations of IBM’s copyrights, and as such, IBM successfully sued them out of existence. So, if you want to make an IBM Personal Computer compatible computer, but you can’t use IBM’s own BIOS, and you can’t re-implement IBM’s BIOS using IBM’s detailed manual, what are your options? Well, it turns out there was an option, and the company to figure that out was Compaq. Compaq realised they needed to work around IBM’s copyrights, so they set up a “clean room”. Developers who had never seen IBM’s manuals, and who had never seen the BIOS code, studied how software written for the IBM PC worked, and from that, reverse-engineered a very compatible BIOS (about 95%). Since IBM wasn’t going to just hand over control over their platform that easily, they sued Compaq – and managed to find one among the 9000 copyrights IBM owned that Compaq violated (Compaq ended up buying said copyright from IBM). But IBM wasn’t done quite yet. They realised the clone makers were taking away valuable profits from IBM, and after their Compaq lawsuit largely failed to stop clone makers from clean-room reverse-engineering the BIOS, IBM decided to do something incredibly stupid: they developed an entirely new architecture that was entirely incompatible with the IBM PC: MCA, or the Microchannel Architecure, most famously used in IBM’s PS/2. In the short run, IBM sold a lot of MCA-based machines due to the company’s large market share and dominance, but customers weren’t exactly happy. Software written for MCA-based machines would not work on IBM PC machines, and vice versa; existing investment in IBM PC software and hardware became useless, and investing in MCA would mean leaving behind a large, established customer base. The real problem for IBM, however, came in the long run. Nine of the most prominent clone manufacturers realised the danger MCA could pose, and banded together to turn the IBM PC into a standard not controlled by IBM, the Extended Industry Standard Architecture (with IBM’s PC-AT of the IBM PC renamed to ISA), later superseded by Vesa Local Bus and PCI. Making MCA machines and hardware required paying hefty royalties to IBM, while making EISA/VLB/PCI machines was much cheaper, and didn’t tie you down to a single, large controlling competitor. In the end, we all know what happened – MCA lost out big time, and IBM lost control over the market it helped create entirely. The clone makers and their successful struggle to break it free from IBM’s control has arguably contributed more to the massive amounts of innovation, rapid expansion of the market, and popularity and affordability of computers than anything else in computing history. If the dice of history had come up differently, and IBM had managed to retain or regain control over the IBM PC platform, we would have missed out on one of the biggest computing explosions prior to the arrival of the modern smartphone. To circle back to the beginning of this article – using IBM’s fall from dominance in the market for consumer computers as proof that the market will take care of the abusive tech monopolists of today, at best betrays a deep lack of understanding of history, and at worst is an intentional attempt at misdirection to mislead readers. Yes, IBM lost out in the marketplace because its competitors managed to produce better, faster, and cheaper machines – but the sole reason this competition could even unfold in the first place is because IBM inadvertently lost the control it had over the market. And this illustrates exactly why the abusive tech giants of today need to be strictly controlled, regulated, and possibly even broken up. IBM could only dream of

IBM COBOL for Linux on x86 1.1 brings COBOL capabilities to Linux

COBOL for Linux on x86 1.1 is the latest addition to the IBM COBOL compiler family, which includes Enterprise COBOL for z/OS and COBOL for AIX. COBOL for Linux on x86 is a productive and powerful development environment for building and modernizing COBOL applications. It includes an optimizing COBOL compiler and a COBOL runtime library. COBOL for Linux on x86 is based on the same advanced optimization technology as Enterprise COBOL for z/OS. It offers both performance and programming capabilities for developing business critical COBOL applications for Linux on x86 systems. COBOL for Linux on x86 is designed to support clients on their journey to the cloud. It enables clients to strategically deploy business-critical applications written in COBOL to a hybrid cloud environment or best-fit platforms, which includes IBM Z (z/OS), IBM Power Systems (AIX), and x86 (Linux) platforms. As I understand it, there’s still a lot of COBOL code all over the industry, so it makes sense for IBM to make its COBOL technologies available to more people.

Preview: IBM z/OS V2.5

By leveraging the strengths of the IBM Z platform’s computing power and resources, IBM z/OS(R) plays an important role in providing a secure, scalable environment for the underlying transformation process on which organizations are embarking to deliver swift innovation. IBM z/OS V2.5 is designed to enable and drive innovative development to support new hybrid cloud and AI business applications. This is accomplished by enabling next-generation systems operators and developers to have easy access and a simplified experience with IBM z/OS, all while relying on the most optimal usage of computing power and resources of IBM Z servers for scale, security, and business continuity. This is far beyond my comfort level.

Booting the IBM 1401: how a 1959 punch-card computer loads a program

How do you boot a computer from punch cards when the computer has no operating system and no ROM? To make things worse, this computer requires special metadata called “word marks” that can’t be represented on a card. In this blog post, I describe the interesting hardware and software techniques used in the vintage IBM 1401 computer to load software from a deck of punch cards. (Among other things, half of each card contains loader code that runs as each card is read.) I go through some IBM 1401 machine code in detail, which illustrates the strangeness of the 1401’s architecture and instruction set compared to a modern machine. I simply cannot imagine what wizardry these newfangled computers must’ve felt like to the people of the ’50s, when computers first started to truly cement themselves in the public consciousness. Even though they’ve been around for twice as long, I find a world without cars far, far easier to imagine and grasp than a world without computers.

MIOS: IBM 5150 BIOS replacement project

This webpage describes the MIOS Project. MIOS is a chip-for-chip replacement of the BIOS (Basic Input Output System) on the IBM 5150 Personal Computer. On the IBM PC the BIOS is contained in a ROM IC Chip located on the motherboard at socket location U33. The IC is socketed and can be replaced with a custom ROM containing custom code.  The purpose of this project is to explore controlling the IBM PC hardware in non-standard ways. The purpose is not to replace the BIOS with another BIOS that does exactly the same thing! We are going to describe how MIOS works by describing the path we took for development. Amazingly cool project. I’m not entirely sure for how long it’s been around, but that doesn’t make it any less awesome.

IBM to break up 109-year old company to focus on cloud growth

International Business Machines Corp is splitting itself into two public companies, capping a years-long effort by the world’s first big computing firm to diversify away from its legacy businesses to focus on high-margin cloud computing. IBM will list its IT infrastructure services unit, which provides technical support for 4,600 clients in 115 countries and has a backlog of $60 billion, as a separate company with a new name by the end of 2021. The new company will have 90,000 employees and its leadership structure will be decided in a few months, Chief Financial Officer James Kavanaugh told Reuters. I have no idea what to say about this. IBM is so far out of my comfort zone these days.

Max thread room

For a lot of organizations that buy servers and create systems out of them, the overall throughput of each single machine is the most important performance metric they care about. But for a lot of IBM i shops and indeed even System z mainframe shops, the performance of a single core is the most important metric because most IBM i customers do not have very many cores at all. Some have only one, others have two, three, or four, and most do not have more than that although there are some very large Power Systems running IBM i. But that is on the order of thousands of customers against a base of 120,000 unique customers. We are, therefore, particularly interested in how the performance of the future Power10 processors will stack up against the prior generations of Power processors at the single core level. It is hard to figure this out with any precision, but in its presentation in August at the Hot Chips conference, Big Blue gave us some clues that help us make a pretty good estimate of where the Power10 socket performance will be and we can work backwards from there to get a sense of where the Power10 cores could end up in terms of the Commercial Performance Workload (CPW) benchmark ratings that IBM uses to gauge the relative performance of IBM i systems. ARM, RISC-V, POWERx – there’s definitely renewed interest in non-x86 architectures, and that makes me very, very happy.

IBM open sources its A2O POWER processor core through the OpenPOWER Foundation

The A2O core is an out-of-order, multi-threaded, 64-bit POWER ISA core that was developed as a processor for customization and embedded use in system-on-chip (SoC) devices. It’s most suitable for single thread performance optimization. A follow-up to its parent high-streaming throughput A2I predecessor, it maintains the same modular design approach and fabric structure. The Auxiliary Execution Unit (AXU) is tightly-coupled to the core, enabling many possibilities for special-purpose designs for new markets tackling the challenges of modern workloads. Intel’s current troubles and the rise in popularity of alternatives is creating a very rare and ever so small opportunity for smaller ISAs to gain some traction. I’ll take what I can get in our current stratified technology market.

IBM names Arvind Krishna CEO, replacing Ginni Rometty

IBM named Arvind Krishna as chief executive officer, replacing longtime CEO Virginia Rometty. Krishna is currently the head of IBM’s cloud and cognitive software unit and was a principal architect of the company’s purchase of Red Hat, which was completed last year. Rometty, 62, will continue as executive chairman and serve through the end of the year, when she will retire after almost 40 years with the company, IBM said in a statement Thursday. Good luck to the man, I guess. IBM isn’t exactly the most exciting company in the world.

PC keyboard: the first five years

The vast majority of PC users today have no memory of what PC keyboards looked like before the standard 101/102-key layout arrived, even though various OEMs do their best to mangle the standard layout in order to minimize usability, especially on laptops. OEM-specific modifications aside, the basic layout of the main block of alphanumeric keys has not changed in over 30 years, since 1986. However, up until that point the PC keyboard layout and the keyboard hardware changed quite a bit, and looking at the 1981-1986 IBM Technical References is key to understanding a) why the standard keyboard scan codes are so complex, and b) why there are so many seemingly odd vendor-specific modifications of the standard layout. With our modern operating systems and crazy fast processors, it’s easy to forget that the PC as a platform is almost 40 years old, and many of the PC standards we don’t even think of as standards have roots that date back that far – and the keyboard is no exception.

My father was IBM’s first black software engineer

John Stanley Ford, my father, was the first black software engineer in America, hired by IBM in 1946. Passed over for promotions, discriminated against in pay, with many inside IBM working to ensure his failure, he still viewed his job as an opportunity of a lifetime. He refused to give up. Minority underrepresentation in high tech has been present since the earliest days of the industry. In reflecting upon my father’s career for a new memoir I wrote about him, I saw important lessons about the history and nature of racism in high tech, and about the steps that corporations and individuals can take to bring about much-needed change. An important and fascinating story – especially since it involves IBM, a company with a long and deep roots in racism, eugenics, and genocide.

IBM open sources Power chip instruction set

It has been a long time coming, and it might have been better if this had been done a decade ago. But with a big injection of open source spirit from its acquisition of Red Hat, IBM is finally taking the next step and open sourcing the instruction set architecture of its Power family of processors. Opening up architectures that have fallen out of favour seems to be all the rage these days. Good news, of course, but a tad late.

The hard way to recover the IBM 5100 non-executable ROS

The few times I’ve had the lid off of my 5100 have all been anxious moments, as I have no idea where I’d find replacements for any of the ICs or SLT modules inside the machine. I resolved early on that my recovery of the 5100’s non-executable ROS – the ROS that contains the programming for the 5100’s BASIC and APL interpreters – would be as minimally-invasive as possible. In accomplishing this recovery I may have used more compute than all the IBM 5100s ever built have carried out over the past 44 years.

IBM 360 Model 20 rescue and restoration

In late April of 2019 Adam Bradley and Chris Blackburn were sitting in a pub on a Monday night when Chris happened across a somewhat unusual eBay listing for an IBM 360 Model 20. This eBay listing was unusual mainly because it didn’t actually list the computer as an IBM 360, but rather as an “seltene Anlage “Puma Computer IBM 2020” which roughly translates from German into “rare plant “Puma Computer IBM 2020”. Amazing story.

Iconic consoles of the IBM System/360 mainframes

The IBM System/360 was a groundbreaking family of mainframe computers announced on April 7, 1964. Designing the System/360 was an extremely risky “bet-the-company” project for IBM, costing over $5 billion. Although the project ran into severe problems, especially with the software, it was a huge success, one of the top three business accomplishments of all time. System/360 set the direction of the computer industry for decades and popularized features such as the byte, 32-bit words, microcode, and standardized interfaces. The S/360 architecture was so successful that it is still supported by IBM’s latest z/Architecture mainframes, 55 years later. Although the S/360 models shared a common architecture, internally they were completely different to support the wide range of cost and performance levels. Low-end models used simple hardware and an 8-bit datapath while advanced models used features such as wide datapaths, fast semiconductor registers, out-of-order instruction execution, and caches. These differences were reflected in the distinctive front panels of these computers, covered with lights and switches. This article describes the various S/360 models and how to identify them from the front panels. I’ll start with the Model 30, a popular low-end system, and then go through the remaining models in order. Conveniently IBM assigned model numbers rationally, with the size and performance increasing with the model number, from the stripped-down but popular Model 20 to the high-performance Model 195. This is an incredibly detailed article on this – relatively speaking – arcane topic, filled with beautiful photography. A delight to read.

Decoding photographs of the IBM 5100’s Executable ROS

Use elementary image processing and machine learning techniques to decode images of a computer screen showing hexadecimal digits. The data in these images are ROM contents from an interesting old computer. The IBM 5100 is an early personal computer (ostensibly portable at 24 kg). Depending on customer-selected options, a 5100 could have interactive programming environments for APL and BASIC built into its ROM. Or, if you prefer, its ROS (“read-only storage”), which seems to have been the IBM-favoured term. The youngest 5100s are a bit over 40 at time of writing, and some accounts online suggest that the ROS devices are no longer dependable. This notebook is part of an effort to back up the entire IBM 5100 ROS to modern media. Specifically, this notebook contains code that analyses screenshots (that is, photographs taken with a camera) containing 512-byte portions of the “Executable ROS”—the ROS containing the native PALM code. That sure is one way to perform computer archeology and keep an old technology alive for posterity.

How IBM became the poster child of operating system failure during the ’90s

In the early 1990s, we had no idea where the computer industry was going, what the next generation would look like, or even what the driving factor would be. All the developers back then knew is that the operating systems available in server rooms or on desktop computers simply weren’t good enough, and that the next generation needed to be better—a lot better. This was easier said than done, but this problem for some reason seemed to rack the brains of one company more than any other: IBM. Throughout the decade, the company was associated with more overwrought thinking about operating systems than any other, with little to show for it in the end. The problem? It might have gotten caught up in kernel madness. Today’s Tedium explains IBM’s odd operating system fixation, and the belly flops it created. I personally really loved using OS/2 over the past ten years or so. There’s something quite elegant and appealing about the operating system, and I consider it the best way to run Windows 3.x software there is – it’s entirely built-in. The world would’ve been a very different place had IBM managed to take the operating system crown for the PC industry – or the Mac, for that matter, through Talingent.

Getting an IBM AS/400 midrange computer on the internet

Recently I’ve gotten a hold of an old IBM mid-range computer, an AS/400 150. This is an 1997 server very much aimed at businesses, pay-rolling, inventory management and such. It can be used as a multi user system, with users logging in via a terminal. The operating system it runs is OS/400 and that is also the only OS it can run, no Linux available for this system. Of course it comes with all the fun programming languages like COBOL and RPG, all the business classics. It’s compatible with the IBM system/36, so any programs made for an 80’s S/36 machine run without problems on the AS/400 machines. It also looks very much 90s, though I personally like the cover at the back, hiding all ports. Stories like these are always great reads. This is the kind of hardware I eventually want to collect and play around with once I have the space to do so.

The IBM z14 microprocessor and system control design

Archaic to most people, IBM mainframes play a pivotal role in our everyday life. Behind the scenes, these state-of-the-art machines process billions of transactions every day. Announced in July of last year, IBM's latest mainframe is the z14, succeeding the z13 which launched back in 2015.

Earlier this year at the 65th International Solid-State Circuits Conference (ISSCC) in San Francisco IBM presented some of the architectural changes between the z13 and z14. The paper was presented by Christopher Berry, a Senior Technical Staff Member for the IBM Systems Hardware Development Team. Mr. Berry led the z14 physical design execution.