Re: [gentoo-user] the origins of Unix

2010-11-27 Thread Peter Humphrey
On Saturday 27 November 2010 07:44:29 Alan McKinnon wrote:

 I never want to go back to those days either :-)

Oh, I don't know. I wasn't bad at Astral assembler. Mind you, nostalgia 
isn't what it used to be.

-- 
Rgds
Peter.  Linux Counter 5290, 1994-04-23.



Re: [gentoo-user] the origins of Unix

2010-11-26 Thread Stroller

On 26/11/2010, at 6:07am, sam new wrote:

 Thanks all, I have a question , when we build the system, always use host
 client to build the toolchain , then GCC Glibc ...kernel some unity ... from
 source ,but where the frist system come from ,does it build using the
 Assembly language or machine language? I mean just give you X86 hardware and
 power , no OS, no livd cd . I am afraid it is out of this topic.but it
 always puzzled me :-)

I think you want to know which came first - the chicken or the egg?

For a few years, operating systems were indeed written in assembler. Then, c 
1970, Unix was the first operating system written in a higher-level programming 
language, C. Likewise, I guess, the first compilers would be written in 
assembler, until one was written that could compile itself and become 
self-hosting.

Thus new compilers and operating systems can now be written in higher-level 
languages (although C isn't very high-level) and compiled using an existing 
compiler. 

That Unix was written in C is what has lead to its ubiquity - until then every 
different brand of computer had its own operating system, usually written by 
the manufacturer. Written in assembly, these were non-portable. Writing the 
operating system in C allowed it to be ported to different hardware 
architectures, and programs could be written that would run on all the 
different systems out there (as long as those ran Unix). 

Linux was written on a Minix system, Minix was written c 1987 and so might have 
been written on one of the BSDs that was around then; the BSDs were probably 
written on an ATT Unix.

When Intel produce a new chip - or gcc wants to support a new architecture - 
they rewrite the compiler (the backend part of it) to output machine code to 
suit the new chip's instruction set (which will be different from that of other 
chips - PPC vs ARM vs MIPS vs x86). The compiled code is then transferred to 
the new machine and fingers are crossed as everyone waits to see if it boots.

http://en.wikipedia.org/wiki/History_of_Unix
http://en.wikipedia.org/wiki/Compiler

Stroller.




Re: [gentoo-user] the origins of Unix

2010-11-26 Thread Alan McKinnon
Apparently, though unproven, at 16:09 on Friday 26 November 2010, Stroller did 
opine thusly:

 On 26/11/2010, at 6:07am, sam new wrote:
  Thanks all, I have a question , when we build the system, always use host
  client to build the toolchain , then GCC Glibc ...kernel some unity ...
  from source ,but where the frist system come from ,does it build using
  the Assembly language or machine language? I mean just give you X86
  hardware and power , no OS, no livd cd . I am afraid it is out of this
  topic.but it always puzzled me :-)
 
 I think you want to know which came first - the chicken or the egg?
 
 For a few years, operating systems were indeed written in assembler. Then,
 c 1970, Unix was the first operating system written in a higher-level
 programming language, C. Likewise, I guess, the first compilers would be
 written in assembler, until one was written that could compile itself and
 become self-hosting.
 
 Thus new compilers and operating systems can now be written in higher-level
 languages (although C isn't very high-level) and compiled using an
 existing compiler.
 
 That Unix was written in C is what has lead to its ubiquity - until then
 every different brand of computer had its own operating system, usually
 written by the manufacturer. Written in assembly, these were non-portable.
 Writing the operating system in C allowed it to be ported to different
 hardware architectures, and programs could be written that would run on
 all the different systems out there (as long as those ran Unix).
 
 Linux was written on a Minix system, Minix was written c 1987 and so might
 have been written on one of the BSDs that was around then; the BSDs were
 probably written on an ATT Unix.
 
 When Intel produce a new chip - or gcc wants to support a new architecture
 - they rewrite the compiler (the backend part of it) to output machine
 code to suit the new chip's instruction set (which will be different from
 that of other chips - PPC vs ARM vs MIPS vs x86). The compiled code is
 then transferred to the new machine and fingers are crossed as everyone
 waits to see if it boots.
 
 http://en.wikipedia.org/wiki/History_of_Unix
 http://en.wikipedia.org/wiki/Compiler
 
 Stroller.

One could ask the question where did the first assembler come from?

Just as the first OSes and compilers were written in assembler to bootstrap C,
so the first assemblers were written in hex codes to bootstrap the assembler. 
But hex code editors ran software, so where did the first hex code input 
gadget come from?

And the answer to that is that it was written in binary. Yes that's right - a 
panel with 16 toggle switches and a few pushbuttons. Those didn't require 
software as everything was implemented in hardware.

So now you know :-)


-- 
alan dot mckinnon at gmail dot com



Re: [gentoo-user] the origins of Unix

2010-11-26 Thread sam new
wow, you both  did a good job , I asked lots of people and they did't say
very clear, it suddenly enlightened me, thanks all.

On 26 November 2010 22:32, Alan McKinnon alan.mckin...@gmail.com wrote:

 Apparently, though unproven, at 16:09 on Friday 26 November 2010, Stroller
 did
 opine thusly:

  On 26/11/2010, at 6:07am, sam new wrote:
   Thanks all, I have a question , when we build the system, always use
 host
   client to build the toolchain , then GCC Glibc ...kernel some unity ...
   from source ,but where the frist system come from ,does it build using
   the Assembly language or machine language? I mean just give you X86
   hardware and power , no OS, no livd cd . I am afraid it is out of this
   topic.but it always puzzled me :-)
 
  I think you want to know which came first - the chicken or the egg?
 
  For a few years, operating systems were indeed written in assembler.
 Then,
  c 1970, Unix was the first operating system written in a higher-level
  programming language, C. Likewise, I guess, the first compilers would be
  written in assembler, until one was written that could compile itself and
  become self-hosting.
 
  Thus new compilers and operating systems can now be written in
 higher-level
  languages (although C isn't very high-level) and compiled using an
  existing compiler.
 
  That Unix was written in C is what has lead to its ubiquity - until then
  every different brand of computer had its own operating system, usually
  written by the manufacturer. Written in assembly, these were
 non-portable.
  Writing the operating system in C allowed it to be ported to different
  hardware architectures, and programs could be written that would run on
  all the different systems out there (as long as those ran Unix).
 
  Linux was written on a Minix system, Minix was written c 1987 and so
 might
  have been written on one of the BSDs that was around then; the BSDs were
  probably written on an ATT Unix.
 
  When Intel produce a new chip - or gcc wants to support a new
 architecture
  - they rewrite the compiler (the backend part of it) to output machine
  code to suit the new chip's instruction set (which will be different from
  that of other chips - PPC vs ARM vs MIPS vs x86). The compiled code is
  then transferred to the new machine and fingers are crossed as everyone
  waits to see if it boots.
 
  http://en.wikipedia.org/wiki/History_of_Unix
  http://en.wikipedia.org/wiki/Compiler
 
  Stroller.

 One could ask the question where did the first assembler come from?

 Just as the first OSes and compilers were written in assembler to bootstrap
 C,
 so the first assemblers were written in hex codes to bootstrap the
 assembler.
 But hex code editors ran software, so where did the first hex code input
 gadget come from?

 And the answer to that is that it was written in binary. Yes that's right -
 a
 panel with 16 toggle switches and a few pushbuttons. Those didn't require
 software as everything was implemented in hardware.

 So now you know :-)


 --
 alan dot mckinnon at gmail dot com




Re: [gentoo-user] the origins of Unix

2010-11-26 Thread Peter Humphrey
On Friday 26 November 2010 14:32:58 Alan McKinnon wrote:

 One could ask the question where did the first assembler come from?
 
 Just as the first OSes and compilers were written in assembler to
 bootstrap C, so the first assemblers were written in hex codes to
 bootstrap the assembler. But hex code editors ran software, so where
 did the first hex code input gadget come from?
 
 And the answer to that is that it was written in binary. Yes that's
 right - a panel with 16 toggle switches and a few pushbuttons. Those
 didn't require software as everything was implemented in hardware.

Except that in my case it was 24 switches, not 16 (this was a dedicated 
process-control computer for nuclear-powered ships and power stations, 
35 years ago). And I sometimes had to make individual holes in the paper 
tape to write or change the code.

-- 
Rgds
Peter.  Linux Counter 5290, 1994-04-23.



Re: [gentoo-user] the origins of Unix

2010-11-26 Thread Alan McKinnon
Apparently, though unproven, at 17:18 on Friday 26 November 2010, Peter 
Humphrey did opine thusly:

 On Friday 26 November 2010 14:32:58 Alan McKinnon wrote:
  One could ask the question where did the first assembler come from?
  
  Just as the first OSes and compilers were written in assembler to
  bootstrap C, so the first assemblers were written in hex codes to
  bootstrap the assembler. But hex code editors ran software, so where
  did the first hex code input gadget come from?
  
  And the answer to that is that it was written in binary. Yes that's
  right - a panel with 16 toggle switches and a few pushbuttons. Those
  didn't require software as everything was implemented in hardware.
 
 Except that in my case it was 24 switches, not 16 (this was a dedicated
 process-control computer for nuclear-powered ships and power stations,
 35 years ago). And I sometimes had to make individual holes in the paper
 tape to write or change the code.


Ah, you were fortunate to work on the big boys. I only had the little ones 
around.

My first job as an adult was ancient Burroughs banking terminals that loaded 
software with the same paper tape, I remember those days well. I never want to 
go back to those days either :-)


-- 
alan dot mckinnon at gmail dot com