UNIX was written in AT&T Bell Laboratories at the end of 1960's. First version of it was written by Ken Thompson and did single processing. Later, Ken Thompson and Dennis Ritchie wrote it again using the C programming language. Except the core kernel, assembly language was not used.
Since UNIX was a trademark of AT&T, many major computer companies produced their own version of UNIX. Although the codes are different, most of the UNIX-clones are similar to each other. Also most known clones support the POSIX standard. This standard defines the ways a programmer or user should communicate with the system. Most popular free UNIX-clone is called LINUX. LINUX is being developed by thousands of people all over the world and is the fastest developing system. If you have a PC and a hard disk at home, you are advised to setup LINUX to your system.
Usually a UNIX system has a single CPU. So with one CPU, how can it possibly run more than one process for each user at the same time? Actually, the processes are not executed in CPU at the same time. The system gives every process a portion of time, in which the process is executed in the CPU. Each process is executed for small periods of time, but since the CPU is very fast users feel that their process is running continuously. Sharing of CPU and other resources among processes is called timesharing. The users can feel this sharing only if the system is overloaded (too much process running at the same time).
When a process has its turn for the CPU, it becomes a running process. While one process is running, other processes stay in memory (RAM). Operating system tries to share all the resources (hard disk, network, memory, etc.) among the processes fairly. UNIX can be divided into two parts. The low level part which deals with the hardware (disk transfer, network I/O, memory sharing) is called the kernel. Users communicate with the kernel using some interpreters called shells. Most known shell types are sh (bourne shell), ksh (korn shell), bash (bourne again shell), csh (C shell), tcsh (turbo C shell).