Bob Eager
2024-03-08 21:11:01 UTC
Crashing the system by editing a file
-------------------------------------
This happened again on the ICL 4130 running KOS.
I was doing research on software portability, in which I had been
interested for some time. I had obtained a portable editor from a
postgraduate at the University of Essex, and had implemented it on KOS. It
worked in very limited memory (essential on KOS) but had advanced looping
and decision constructs which made it very powerful. A select group of
people (including me, of course) used it a lot.
KOS was simply a layer on top of the manufacturer's operating system; as
such, it had to deal with unexpected error returns from the system. I
general, these did not happen very much at all. For development purposes
(and KOS was being developed continually), any unexpected error would
cause KOS to stop scheduling its timeshared users, print the message
LOGICAL ERROR on the operator's console, and pause for operator input. A
simple command would allow it to continue, but of course the error had to
be investigated first.
My portable editor just occasionally caused a logical error. I tried my
best but could never find the fault. Then, one morning, I managed to cause
four logical errors within a few minutes. The system manager wasn't happy,
and he printed an octal dump of the entire KOS slave (we would call it a
virtual machine these days). This was on 11 inch by 8 inch paper, quite
thin, and a pile about a foot thick. He dumped it on my desk, with the
order "Fix it!"
I took the pile back to my college study bedroom, and left it on the floor
for several days. On the Saturday evening, I and several other postgrads
gathered in the college bar, and I had quite a lot to drink. At closing
time, I staggered back to my room, not at all sleepy. I assume I said to
myself, no doubt in a slurred voice: "Ah, fix the editor!"
Apparently, I did so. I have no more recollection of that night, but I
woke up the next morning to find paper all over the floor. On the top
sheet was written "Uninitialised variable in fourth word of VFILE control
block". And so it was.
-------------------------------------
This happened again on the ICL 4130 running KOS.
I was doing research on software portability, in which I had been
interested for some time. I had obtained a portable editor from a
postgraduate at the University of Essex, and had implemented it on KOS. It
worked in very limited memory (essential on KOS) but had advanced looping
and decision constructs which made it very powerful. A select group of
people (including me, of course) used it a lot.
KOS was simply a layer on top of the manufacturer's operating system; as
such, it had to deal with unexpected error returns from the system. I
general, these did not happen very much at all. For development purposes
(and KOS was being developed continually), any unexpected error would
cause KOS to stop scheduling its timeshared users, print the message
LOGICAL ERROR on the operator's console, and pause for operator input. A
simple command would allow it to continue, but of course the error had to
be investigated first.
My portable editor just occasionally caused a logical error. I tried my
best but could never find the fault. Then, one morning, I managed to cause
four logical errors within a few minutes. The system manager wasn't happy,
and he printed an octal dump of the entire KOS slave (we would call it a
virtual machine these days). This was on 11 inch by 8 inch paper, quite
thin, and a pile about a foot thick. He dumped it on my desk, with the
order "Fix it!"
I took the pile back to my college study bedroom, and left it on the floor
for several days. On the Saturday evening, I and several other postgrads
gathered in the college bar, and I had quite a lot to drink. At closing
time, I staggered back to my room, not at all sleepy. I assume I said to
myself, no doubt in a slurred voice: "Ah, fix the editor!"
Apparently, I did so. I have no more recollection of that night, but I
woke up the next morning to find paper all over the floor. On the top
sheet was written "Uninitialised variable in fourth word of VFILE control
block". And so it was.
--
Using UNIX since v6 (1975)...
Use the BIG mirror service in the UK:
http://www.mirrorservice.org
Using UNIX since v6 (1975)...
Use the BIG mirror service in the UK:
http://www.mirrorservice.org