COMS W1004 Introduction to Computer Science
Download
Report
Transcript COMS W1004 Introduction to Computer Science
Lab #1: UNIX crash course
•
•
•
•
•
Introduction: History of Operating Systems
Lesson #1: Navigating directories
Lesson #2: Creating and editing files with emacs
Lesson #3: Manipulating files
Lesson #4: Creating a webpage
A brief history of Operating Systems
Early Days
Late 1940s to early 1950s
ENIAC, Harvard Mark II, etc.
Single user, single program
OS just had to load program and provide
some basic functionality (read input, write
output)
Batch Processing
Late 1950s to early 1960s
Mostly IBM mainframes (OS/360)
Multiple users, single program each
Load a program, execute it, produce output
Some overlap, e.g. load the next program
while executing the first one
Multiprogramming
Late 1960s to early 1980s
Appear to run multiple programs (on behalf
of multiple users) by switching between
them
Interrupt driven: each program runs until it
needs to pause for I/O
Time sharing: each program runs for a
“quantum” of time
History of UNIX
MULTICS (1964-69)
Early timesharing system developed by MIT,
Bell Labs, General Electric
Too ambitious for its time
UNICS (1970)
Developed by Ken Thompson after Bell Labs
pulled out of MULTICS project
Only ran on (somewhat defunct) DEC PDP-7
UNIX Programming Languages
In order to port to other platforms,
Thompson created a high-level
programming language called B
Dennis Ritchie created a better
implementation called C
Thompson and Ritchie rewrote UNIX in C
To port to another platform, all you needed
was a C compiler
Variants of UNIX
Many universities at the time had DEC PDP11s, but those operating systems were
considered to be pretty bad
AT&T (Bell Labs' parent) licensed UNIX
source code to universities
A number of UNIX variants sprung up
Berkeley's being the most popular
UNIX Today
POSIX attempted to consolidate UNIX
variants into a single standard in late 1980s
Portable Operating System Interface for UNIX
Various vendor-specific (but POSIXcompliant) implementations started
popping up
Sun Solaris and Linux most popular today
UNIX Command Line
Today's Lab
• Log in
• Start the Konsole or Terminal program
–
probably from “Activities”, then
“Applications”, then “System”
• Go through the four Lessons and six Tasks
• You can leave when you're done
• Ask for help if you need it!