UNIX Programming
Lecture1:Unix Introduction
1 Introduction [Link]@2003
The basic structure of UNIX
Application Programs
Games
Simulators
Kernel
User Packages
Hardware
vi, w, who, ls System Calls
sh, ksh, bash,
Shell
cat, sed, lex,
yacc, etc.
fork(), read(), write(), etc
2 Introduction [Link]@2003
History of Unix
Multics project 1960s
(MIT,GE,AT&T)
AT&T Bells Labs 1970s
UC Berkley 1970s/80s
DOS imitated many Unix 1980s
ideas
Commercial Unix
fragmentation
GNU Project
Linux 1990s
Unix is Widespread and now
available from many
3 Introduction [Link]@2003
sources, both free and
Unix Systems
Sun Microsystems SunOS/Solaris
Digital/Compaq Digital Unix (Tru64)
Hewlett Packard HP-UX
SGI Irix
Cray UNICOS
UC Berkley / the Net NetBSD,FreeBSD
Linus Torvslds / the Linux
Net
4 Introduction [Link]@2003
Unix Philosophy
• Multiuser / Multitasking
• Toolbox approach
• Flexibility / Freedom
• Everything is a file
• File system has places, processes have life
• Designed by programmers for programmers
5 Introduction [Link]@2003