24 comments

[ 2.8 ms ] story [ 72.7 ms ] thread
The machine was "designed, built, and placed in operation in only two years"

... impressive!

I remember the time when modifying running programs were a big rage. Now seems many OSs are going in the opposite direction with OpenBSD leading the race.
It's a security vulnerability tbh
Is OpenBSD moving away from program loading and dynamic linking? Even many embedded systems allow software updates these days…
What I am referring to is not dynamic linking, but something else. My memory of that is rather faded and I only remember seeing in in various docs something like 40 years ago
Dynamic linking is by far the dominant use of self-modifying code these days, followed shortly by JIT code generation.
Persnickety but also curious comment: wasn't the System/360 the first mainframe?
By the time the S/360 was announced, IBM had already been producing top-of-the-line systems with the main processor sharing memory with several I/O "channels" for several years -- which would be "mainframes" by any reasonable definition I can think of other than "S/360 and derivatives" (which, by the way, excludes competing mainframe systems from Univac and Burroughs, among others).
The UNIVAC, in 1951, was probably the first mainframe recognizable as such. Big boxes, tape drives, lots of I/O. For a brief time, "Univac" was synonymous with "computer". IBM quickly put a stop to that, of course.

https://en.wikipedia.org/wiki/UNIVAC

Hence Asimov's “The Last Question” referring to the computer as Multivac and variations thereof, culminating in “Universal AC”.
As others have said, the System/360 line wasn't even IBM's first generation of mainframes, but it was the first line of computers with an ISA as we understand the term: A document describing an environment for software to be written for independent of any specific machine, such that the machines would be implementations of that ISA and multiple different machines could all run the same software. IBM used this to make a whole line of different mainframes at different price points that could all run (mostly) the same software, to the limits of different machines having different amounts of RAM and some machines not having disk drives and some opcodes not being implemented on certain low-end models, just like how it works these days.

But that came about in the mid 1960s, and IBM had been making commercial mainframes for over a decade by then.

System/360 was the attempt by IBM to unify its existing computing systems (1401, 700 series, 7030, 1620, etc). All were "mainframes" by our current definition.
(comment deleted)
SPICE, the integrated circuit simulation software, used to "compile" at run time an optimal chunk of machine code specific to the matrix to be solved. This was only for CDC machines. There was actually a parameter called LVLCOD that the user could use to specify that custom machine code was generated at runtime or not.
Just in case anyone wants to see the rather delightful cartoon referenced in the article, which is now a dead link[0]:

[0] https://web.archive.org/web/20050305233206/https://www.colum...

Now at http://www.columbia.edu/cu/computinghistory/newyorker-720-lo... (the Columbia article links do redirect).

Edit: perhaps that image is not hotlinkable.

I get "Object Not Found!"
Odd. I had visited the Columbia page¹ first, so it may be an anti-hotlinking measure.

¹ http://www.columbia.edu/cu/computinghistory/ssec.html

I get the same 404 error in both a browser (manually entering the URL, not following the link) and curl:

* Trying 128.59.105.24... * TCP_NODELAY set * Connected to www.columbia.edu (128.59.105.24) port 443 (#0) * ALPN, offering h2 * ALPN, offering http/1.1 * successfully set certificate verify locations: * CAfile: /etc/ssl/cert.pem CApath: none * TLSv1.2 (OUT), TLS handshake, Client hello (1): * TLSv1.2 (IN), TLS handshake, Server hello (2): * TLSv1.2 (IN), TLS handshake, Certificate (11): * TLSv1.2 (IN), TLS handshake, Server key exchange (12): * TLSv1.2 (IN), TLS handshake, Server finished (14): * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1): * TLSv1.2 (OUT), TLS handshake, Finished (20): * TLSv1.2 (IN), TLS change cipher, Change cipher spec (1): * TLSv1.2 (IN), TLS handshake, Finished (20): * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256 * ALPN, server did not agree to a protocol * Server certificate: * subject: C=US; ST=New York; O=Columbia University; CN=.columbia.edu start date: Jan 21 00:00:00 2023 GMT * expire date: Feb 21 23:59:59 2024 GMT * subjectAltName: host "www.columbia.edu" matched cert's ".columbia.edu" issuer: C=US; ST=MI; L=Ann Arbor; O=Internet2; OU=InCommon; CN=InCommon RSA Server CA * SSL certificate verify ok. > GET /cu/computinghistory/ssec.html HTTP/1.1 > Host: www.columbia.edu > User-Agent: curl/7.64.1 > Accept: / > < HTTP/1.1 404 Not Found

Ah. It seems the site doesn't support https.