Hot answers tagged

44

FILES-11 on DEC minicomputers was a versioned file system -- RSX-11M, IAS (on PDP-11), VMS (on VAX, Alpha). Version numbers are very user-visible; they are part of the syntax for specifying a file. And programs are designed to behave appropriately for a versioned file system. When creating a file, the normal way was to not specify a version number, and the ...


42

These tricks are usually done to increase speed or reduce space. For most (especially Microsoft) BASIC, constants are stored within a tokenized line as ASCII (as entered), and converted to a floating point number every time they are evaluated. This is a time consuming process. Assigning the number once to a variable to be used thereafter will skip this part ...


37

Was not the "B = byte, b = bit" standard established even back in the day, in the 1970s/early 1980s? Not really. It existed (I think at least as far back as 1979's JEP100, but I don't have good sources), but even through the 90s I would say that it wasn't that strictly adhered to. There was a lot of variability all over the place, especially in consumer-...


36

I’m assuming you’re asking about x86 processors, not the older 8-bit CPUs. Real mode is always segmented, and everything (CPU, operating system, programs, even peripherals on the CPU bus) has access to all the system’s address space up to just over 1 MiB (1 MiB strictly before the 286). You can write programs without paying attention to segments, and you’ll ...


28

If you can ensure a reliable connection, synchronous, atomic operations can indeed be implemented using various techniques that also work for remote connections, much in the same way as they can be implemented on local multi-processor systems. The quoted claim doesn't make any statement about the distance of the separate computers or the quality of their ...


28

Section 1.3.1 of The Art of Computer Programming says the following: MIX is the world's first polyunsaturated computer. Like most machines, it has an identifying number—the 1009. This number was found by taking 16 actual computers very similar to MIX and on which MIX could easily simulated, then averaging their numbers with equal weight: ⌊(360+650+709+7070+...


24

There were quite a few operating systems that had file versioning in the same era as unix. Many file systems that we are familiar with today just have some components of a file name, such as: Name.type They might have a path: \folder\folder\Name.type They might have a server (UNC as an example): \\server.domain\folder\folder\name.type In many current ...


21

I am not personally aware of any operating system in the entire history of computing ever having had this feature. Siemens BS2000 of the early 1970s may be an example here (*1) with a feature they called file generations. A new file could be marked in the catalogue as having generations, setting a base generation number and how many generations are to be ...


21

The answer by Raffzahn is very good, except that I disagree that ZX80/81 background is all that important and I also feel he missed one important trick. I personally know most of these tricks from studying BASIC loaders for ZX Spectrum games. You see, yes, Spectrum has more memory, but when the machine code program is loaded, it was absolutely not uncommon ...


19

Pirsig's title (ZatAMM) is a quote from "Zen in the Art of Archery, by Herrigel, from 1948. Many programmers, artists, and writers (myself included) find that their best work comes when they are in a state of complete un-self-consciousness, their mind fully engaged with the task. No ego, no id, just a mental model that goes from mind to hand. Surfacing, ...


15

Many PC pinball games use Mode X, notably Pinball Fantasies, Pinball Illusions and Epic Pinball. Nerdly Pleasures also has a comprehensive post on games using “unofficial” resolutions, which includes a number of other games which support 320×240: Quake, Earthworm Jim, The Lost Vikings, Norse by Norse West, and Scorched Earth. On Moby Games, such games are ...


14

As Ross Ridge already mentioned, it's a stream of titles started with Robert Pirsig's book Zen and the Art of Motorcycle Maintenance of 1974. This book was a rather unique mixture of fiction, autobiography and philosophy focusing on what quality might be, how it's defined and what it means to people. It was quite influential to the generation that later ...


14

In his book The Silicon Jungle David Rothman mentions several times the term "modifying" or "customizing" a software program. Just like today, usage of generic products have always needed customisation to be used: forms in word processors, queries in DB products and so on. And then the consultant didn’t even supply instructions to operate and modify the ...


12

In addition to what others wrote: ITS, TENEX, TOPS-20. In ITS, files are named by two strings each at most six characters. The second file name can be a number to specify a version. If you open a file for reading, > will access the latest version. When writing, it creates a new version. < refers to the oldest version. Moby edit. Let's make a ...


10

The physical address in the IVT associated with INT31H should be: 13H * 4H = 4CH True But a book I was referring to says that [...] According to them, Physical Address of INT13H is 34H ( 13*4 = 52 ) Not true, but read close: But the point is the number system used in the given solution. They use int 13, i.e. 13 decimal, not int 13h. So 13 * 4 -> 52 -&...


10

Although on page 124 / Section 1.3.1 of Volume 1 of TAOCP, Knuth only gives the numbers (360+650+…), recall that his indexing is exhaustive. Accordingly, searching for page 124 in the index (easier with the PDF edition) gives all 16 computers whose model numbers are averaged. In alphabetical order, these index entries are: Bendix G20, Burroughs B220, CDC ...


10

Not really, as the IMP implementation was done by a single company (Bolt Beranek and Newman Inc.) at a single location in Cambridge, USA. The contract was awarded to them in April 1969.


9

All software sees the full 20bit address space, since there is no distinction between kernel and user land. Flat mode is simply all segment descriptors set to maximum length and base offset 0. This is not feasible in 16 bit protected mode (80286), but most 80386 operating systems will use this mode in protected mode. There are other alternatives supported ...


9

Not really an answer to whether there were such systems, but a comment on that section of the Unix-haters Handbook. In the mid 1980s I implemented a (non-Unix, non-SMTP) mail sending agent that had the same "responsibility" (non-)issue: the sender required the final status from the receiver, else it would resend later, thus a window existed for potential ...


9

This answers your question by suggesting some avenues of further research. This is one of those cases where just knowing the right buzzwords helps with the search. You could start by doing some research on Fernando Corbato and the Compatible Time Sharing System (CTSS) for the IBM 7090/7094. This was one of the pioneering projects in timesharing. You could ...


8

Malvino's approach is pretty much a child of its time. I'm not aware of any modern textbook that will spend much time on 74xx / MSI logic, because anything more complicated than a gate or two will be synthesized into a CPLD / FPGA / ASIC these days. CPU design, too, has become a topic too specialised and complex to be treated in detail in an introductory ...


8

Was not the "B = byte, b = bit" standard established even back in the day, in the 1970s/early 1980s? Sure, it was, but magazines and the like were not only consumer publications, but as well made by only partially educated people. Everyone wrote like he thought it would fit. More so, I don't think any country ever invoked a spelling police for computer ...


8

Weinberg had worked as one of the engineers in the design and implementation of a ground tracking network during project Mercury in the us space effort. It's not too much of a stretch that he might have referred to this project without naming it in a book written years later. Mercury computing


7

Could it be this one? Byte's Mac Programmer's Cookbook Paperback – May 1994 by Rob Terrell (Author) I once had (and enjoyed) it when I still had a Macintosh. Just like the Mac, my issue has unfortunately long gone the path of all obsolete. And, as an added service: Apple Rescue of Denver still seems to sell new copies for a whopping $15.


7

On a related note, I clearly remember The Tao of Programming making the rounds on BBS in the late 80's and early 90's. According to Wikipedia, it was written in 1987 as a bit of a spoof. A year later the same author wrote The Zen of Programming. https://en.m.wikipedia.org/wiki/The_Tao_of_Programming Thus spake the master programmer: "Let the programmers ...


7

My experience is with the VAX and VMS. It had versioned files. Back in the day, it was not uncommon for some programs, like editors, to create a backup copy of the file you were working on. In the end you'd have, for example, file.txt and file.bak. The versioned file system is simply that concept writ large. Instead of file.txt and file.bak, you had file....


7

TL;DR; Where did this SELECT command come from? PC-DOS What did it do? Install DOS on a blank drive as a complete bootdrive including language/country specific files. Was this a real command at all? Yes. Long story: SELECT was essentially like a FORMAT /S, which also copies necessary files like KEYBGR for German keyboard or COUNTRY.SYS and creates ...


6

The key to making problems like the Two Generals Problem solvable is to categorize some failure modes as annoying but tolerable. For example, a variation analogous to a mutex would have a goal of attacking the enemy with only one general's army, and regard the possibility of both generals' armies attacking at once as unacceptable (e.g. because they'd be ...


6

It’s available directly from the publisher (the author’s own publishing company), including in electronic format (e-pub and Mobi).


6

SELECT was introduced in IBM PC DOS 3.0, along with internationalisation support, and made available in MS-DOS starting with version 3.3. Its purpose is to create a bootable disk with support for a given country code and keyboard layout. The syntax, starting with version 3.2, is SELECT [[drive1:] drive2:[path]] country keyboard where drive1 is the source ...


Only top voted, non community-wiki answers of a minimum length are eligible