[lkml]   [1998]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Linux-asm (was A patch for linux 2.1.127)
    On Thu, 19 Nov 1998, Albert D. Cahalan wrote:

    > Manuel J. Galan writes:
    > > "Richard B. Johnson" wrote:
    > >> On Tue, 17 Nov 1998, Manuel J. Galan wrote:
    > >>> * UNIX was built on C and C was built for UNIX.
    > >>
    > >> Unix was built on a Digital PDP-11/34, using tools available
    > >> in the RSX-11 Digital Operation system. Most of the 'hardware stuff'
    > >> was done in DEC MACRO Assembly under RSX-11.
    > >>
    > >> 'C' came later.
    > >
    > > So what comes first the chicken or the egg? :)
    > Order of events:
    > PDP-7 assembler
    > Unics, written in PDP-7 assembly
    > PDP-7 assembler that ran on Unics
    > B compiler for the PDP-7 (not producing native code)
    > PDP-11 assembler
    > Unics ported to the PDP-11, redone in PDP-11 assembly
    > PDP-11 assembler that ran on PDP-11 Unics
    > B compiler for the PDP-11
    > NB compiler for the PDP-11
    > C compiler for the PDP-11
    > Unics written in C
    > /* "Hello World" in B for 64-bit hardware! */
    > hw [0] "Hello World.*n";
    > main(){
    > extrn hw;
    > putchar(0[hw]);
    > hw=+1;
    > putchar(0[hw]);
    > }
    [SNIPPED rest]

    Well I did make an error, the OS on the PDP-11 was RT-11 instead of
    RSX-11. However, there are a lot of O.S. History books which seem to
    quote the same persons saying different things. Nevertheless, the
    common thread is what we already know. You need some tools to start
    with. You don't just start with a (name your favorite language) compiler
    and make an operating system.

    Linux probably started at the DOS prompt (shreak Oh! ---horrors), the
    primatives necessary to get into 32-bit mode were probably done in
    MASM (shreak Oh! ---horrors), and the first I/O was probably via
    RS-232C. When the new O.S. finally became "Unix like", there still was
    not a 'C' compiler for it. The O.S. had to be quite mature with
    a file-system and at least somewhat compliant I/O before the GNU
    Compiler could be ported.

    So the chicken came before the egg.

    Dick Johnson
    Penguin : Linux version 2.1.128 on an i686 machine (400.59 BogoMips).
    Warning : It's hard to remain at the trailing edge of technology.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:45    [W:0.021 / U:44.692 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site