Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!zaphod.mps.ohio-state.edu!rpi!crdgw1!uunet!unhd!oz!ted From: ted@oz.plymouth.edu (The Wiz) Newsgroups: comp.lang.c Subject: Re: Unix and C Message-ID: <1990Nov20.030906.3712@oz.plymouth.edu> Date: 20 Nov 90 03:09:06 GMT References: Reply-To: ted@oz.plymouth.edu (The Wiz) Organization: Plymouth State College - Plymouth, N.H. Lines: 16 In article richb@railnet.UUCP (Richard Banks) writes: >How can Unix be written in C ? I thought all OS`s had to be written >in assembly language, else they'd have the same interrupts as the >OS you booted your complier language under to write the program ? Have you ever heard of cross compilation? This is where a compiler on another machine is directed (out of lack for a better word) to produce machine "object" code for another machine. I think you are confused about the difference between assembly lang. and machine language. Most good books on Operating systems Explain how it is done, you might want to look at one. How long do you think it would to take to write a large operating system in machine code? Hint: A long time. Unix is based on the idea that when you port it to a new machine you only need to re-write the kernel (The lowest level) of the OS, thus making it easily portable. --> Ted