Quote:
Originally Posted by GAD /img/forum/go_quote.gif
That is AWESOME.
I firmly believe that one of the reasons I can smell computer issues in massively complex systems is because I was first taught to program on an IBM System 360/370 in machine code. We were taught closed number loops, how to add/sub/mult/div in binary/octal/hex, and how to program by addressing bits in memory directly.
Once we had a grasp of machine code, they let us use Assembler, and guess what - we LOVED it. Mnemonics? WAY COOL! When everyone else hated assembler, we loved it and got frustrated by COBOL/FORTRAN/JCL etc.
GAD
|
I hear you!
While I didn't lick the bare metal like you did
, my first significant programming language was IBM BAL. Significant meaning actually taking a class. First day the instructor talked about JCL shells and such. I had absolutely no idea what he was talking about! Before that, I wrote a couple trivial BASIC programs. Talk about trial by fire. I got an A.
Then came 'C'...
After graduation, I programmed on a payment terminal platform that used a Unix-like operating system derived from Xenu. Xenu was/is an operating system developed at Purdue for teaching OS theory/application. I actually needed the Xenu text book to understand how the kernel worked. Yes, I needed to lick the kernel.
To debug, I had to locate each process in memory by using a memory map to dump raw bits and manually translate the c-source for the OS' data structures to the bits in the dump.
So, if a "terminal" died in production (or I was debugging during development and my DUT blew-up), iI performed a special resurrection technique and was able to dump the memory (core dump) for examination. I manually traced through each processes' stack--raw numbers still, and this was the endian type (big, little, I always forget) where I had to switch each byte's nibble around to read it properly--read it with my eyes that is--all manual.
So, for each address in the stack (as opposed to data, lol), I'd see if it was in the application space. If it was then maybe, I could figure out what that particular process was doing when the terminal crashed.
Insane stuff, but good for you--like caster oil.
Come to think of it, I *did* lick the metal.