次の方法で共有


Relaxen und watchen das blinkenlights. What lights?

In the old days, computers had blinking lights. Indeed, old movies used to show computers working with blinking lights and tape reels moving back and forth.

My school computer was a PDP-8/L with a whopping memory of 4K 12 bit words back in 1971. (Here’s a picture of similar machines. Mine was like one of the tall racks, and my teletype looked the same as the one in the picture. We didn’t have any disk or tape drives, but we did have a high speed (300 cps) paper tape reader. We used a line-numbered language called Focal. The machine was roughly $8,500 at the time. With a 1.5 µsecond cycle time, it was a 0.66 Megahertz machine. It’s amazing how many things are etched in my memory)

There was a signup sheet for 20 minute “online” time slots . (Offline meant using one of the 2 other standalone teletypes to punch a program onto a paper tape.) A big sign said “Think Offline!”. Another note: (if I remember correctly)

            Achtung: Das machine ist nicht fer gerfingerpoken und mittengraben. Ist easy snappen der springenwerk blowenfusen, und corkenpoppin mit spitzensparken. Ist nicht fer gewerken by das dumpkofen. Das rubbernecken sightseeren keepen das hands in das pockets. Relaxen und watchen das blinkenlights

The blinking lights actually conveyed useful information: you’d get to recognize patterns that meant particular things. The main I/O device was a teletype machine that would print at 10 chars per second on rolls of yellow paper. When the computer was almost finished outputting to the teletype and would then be ready for user input, I got to know the light pattern at which I could start typing ahead, a couple seconds before the teletype had finished.

The blinking lights on my first computer had 2 rows of lights: the 12 bit address for the Instruction pointer, and the 12 bits for the accumulator. (The PDP-8 had only one general register, called the accumulator.) There was a row of toggle switches on which I could toggle the dozen or so 12 bit words for the bootstrap loader into memory fairly quickly. Digital Equipment Corp PDP machines were all in octal (base 8: 3 bits per digit), not hexadecimal (base 16: 4 bits per digit). In fact, the PDP (Programmable Digital Processor) product line used alternating colors for the switches: orange/yellow for the PDP-8/L line, dark/light green for the PDP-12 line, light pink/dark pink for the PDP-11, etc. The memory was all core memory: which means little magnetic donuts and that power down/up didn’t lose data.

A highlight of my junior high years was a visit to the old mill at DEC headquarters in Maynard, Mass. Employees had 24 hr access to all the machines, with no sign-up sheets! Wow! I wanted to work there!

(Quote: The venture capitalist's insistance on avoiding the term computer was based on the stereotype that computers were big and expensive, needing a computer center and a large staff; by using the term Programmable Data Processor, or PDP, DEC avoided this stereotype.)

Eleven years later, in 1982 I bought my first IBM PC. At 4.77 Mhz it had a whopping 256k of ram, 2 floppy drives, no hard disk and no monitor (I used the homebuilt 25” HeathKit color TV for a monitor) for a whopping $3100. That was a very good investment: I learned tons about that architecture, much of which is still applicable today.

I took the cover off and had it sideways against the back of my desk, so the expansion bus was exposed, and I put in a wire-wrap board so I could add my own circuits.

I put a very simple circuit: two 8 bit Digital to Analog converters (D-A) and attached the input of the 1st to the high 8 bits of the PC address bus and the 2nd to the next 8 bits.

I then attached the 2 analog outputs of these D-As to the X-Y input of my homebuilt HeathKit oscilloscope.

The result was a dynamic plot of what areas of memory were executing code. It was a trace of what memory locations were being accessed at any given time. This means the instruction pointer and any memory accesses for data would show on the plot. Anything in the top part of the picture meant that the OS was executing code. Low meant the BIOS: above that was the running application. Then came the app’s data segment and the heap. When the app was in an idle loop, a pretty stable pattern was shown. When processing, the patterns would vary quite a bit.

Nowadays, if the computer seems idle, the only hint that the computer is in fact doing something is to run task manager (which shows a dynamic systray icon of processor usage) or perhaps watching the hard disk light blinking (or hearing it).

I have thoughts of doing a 2 dimensional D-A display for a modern PC, but it wouldn’t be too useful: with multiple processes running and thread switched, it would be hard for the hardware address bus to distinguish useful patterns. With the higher processor speeds, a much faster oscilloscope would be needed. Besides, I’ve only had laptop machines at home for years.

However, it’s not so hard to do something similar in software. For a particular process, you can hook an application’s calls to the operating system for memory allocation and draw a plot in a window of used memory as the application is running. I did this with Visual Foxpro to see the patterns of virtual and heap memory usage. I could use various colors to show various kinds of memory: virtual, heap, data engine, etc. I even could click on a block of memory and find out what that block was used for. This is a map of memory usage, rather than a trace of physical memory accesses, but it still is like blinking lights.

Analysis of these patterns led me to make some memory usage improvements in Foxpro.

(Perfmon is somewhat useful: it can show total virtual bytes used, page faults, etc. but they are plotted against time. It doesn’t show a map of the currently used memory.)

 

49497

Comments

  • Anonymous
    January 27, 2005
    The comment has been removed

  • Anonymous
    May 27, 2005
    > Another note: (if I remember correctly)
    > Achtung: Das machine ist nicht fer gerfingerpoken und mittengraben....

    This one actually sounds like one of genius Charlie Chaplin's speeches in The Great Dictator, doesn't it?


    Regards
    -Stefan

  • Anonymous
    August 25, 2005
    The comment has been removed

  • Anonymous
    August 30, 2005
    If you listen to an AM radio that’s placed near a computer, you can hear interference.  I can put...

  • Anonymous
    March 20, 2006
    When you write code in any computer language, there are common constructs that alter the flow of control,...

  • Anonymous
    May 18, 2006
      The fist time I saw this sign was in '81 or '82.  I was on a service call to a moderately large home in central Phoenix to repair a stereo system.  
     The main equipment console was a beautiful custom crafted (local craftsman named Russworm I think) mahogany entertainment center designed to match the eqally elegant (and large!)Bozak speaker systems. In the very center of the front edge wher the lid opened, was a little 2x3" silver plaque with the "Achtung" in red Old English.  I copied it down in my note pad and shared it often.

     The irony of all this?  The repair required me to bring the VERY expensive McIntosh tuner/preamp to the shop - someone had wrapped aluminum foil around a pesky little fuse that kept blowing!!  Ended up needing a few diodes (the ORIGINAL problem) AND.... a new power transformer.

  • Anonymous
    March 12, 2007
    I was quoted in this Computerworld article about the MVP summit, which is happening this week in Seattle

  • Anonymous
    May 06, 2007
    About a week ago, I mentioned that I've been playing with 802.11n routers, and am leaning toward changing the stance I took in my column, warning folks not to use Draft-N products yet. A Toshiba Satellite P205-S6287 notebook with an...

  • Anonymous
    August 10, 2007
    On one of my Vista machines, I have a 140G hard drive partitioned into C (20g), D (80G) and E (40g).

  • Anonymous
    August 10, 2007
    On one of my Vista machines, I have a 140G hard drive partitioned into C (20g), D (80G) and E (40g).

  • Anonymous
    September 27, 2007
    The comment has been removed

  • Anonymous
    September 27, 2007
    You can open a table with a UNC path in it, such as USE \myservermysharepathtable or USE \123.456.123.123mysharepathtable

  • Anonymous
    May 30, 2009
    PingBack from http://outdoorceilingfansite.info/story.php?id=3570

  • Anonymous
    May 31, 2009
    PingBack from http://outdoorceilingfansite.info/story.php?id=21206

  • Anonymous
    May 31, 2009
    PingBack from http://woodtvstand.info/story.php?id=5193

  • Anonymous
    June 02, 2009
    PingBack from http://portablegreenhousesite.info/story.php?id=32118

  • Anonymous
    June 09, 2009
    PingBack from http://quickdietsite.info/story.php?id=12228

  • Anonymous
    June 13, 2009
    PingBack from http://outdoordecoration.info/story.php?id=4093

  • Anonymous
    June 13, 2009
    PingBack from http://homelightingconcept.info/story.php?id=1158

  • Anonymous
    June 14, 2009
    PingBack from http://patiocushionsource.info/story.php?id=1365

  • Anonymous
    June 16, 2009
    PingBack from http://workfromhomecareer.info/story.php?id=33289

  • Anonymous
    June 17, 2009
    PingBack from http://patiosetsite.info/story.php?id=671

  • Anonymous
    June 18, 2009
    PingBack from http://thestoragebench.info/story.php?id=7758

  • Anonymous
    June 18, 2009
    PingBack from http://patioumbrellasource.info/story.php?id=1463

  • Anonymous
    September 20, 2010
    When the computer was almost finished outputting to the teletype and would then be ready for user input

  • Anonymous
    October 31, 2016
    The comment has been removed

  • Anonymous
    November 01, 2016
    The comment has been removed