CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

16
Introduction-1 CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

description

CGS 3763 Operating System Concepts Spring 2004 Hal Stringer. TODAY’S AGENDA. Go over course syllabus. What is an operating system? Class make up - who’s enrolled Major or Minor? Computer Science, IT or MIS Other computer science courses: CGS 1060 is minimum prerequisite - PowerPoint PPT Presentation

Transcript of CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Page 1: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-1

CGS 3763Operating System Concepts

Spring 2004

Hal Stringer

Page 2: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-2

TODAY’S AGENDA

• Go over course syllabus.

• What is an operating system?

• Class make up - who’s enrolled– Major or Minor?

• Computer Science, IT or MIS

– Other computer science courses:

• CGS 1060 is minimum prerequisite

• CGS 3269 would be very helpful

– Programming experience will also be helpful although no programming projects required for this course

Page 3: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-3

SYLLABUS OVERVIEW

• Office Hours– Hal Stringer: CSB Rm 255– Mon. 1:30 – 2:30, Wed. 1:30 – 3:30 or by appointment.

• Email– [email protected] (include CGS3763 in subject line)– Be professional in your correspondence

• Website– http://www.cs.ucf.edu/courses/cgs3763/spring2004– Be sure to take notes in class

• Text Book– Operating System Concepts, Sixth Edition by Silberschatz,

Galvin and Gagne– http://cs-www.cs.yale.edu/homes/avi/os-book/osc

Page 4: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-4

SYLLABUS OVERVIEW (cont.)

• Class Times– Mon, Wed & Fri, 11:30 - 12:20, ENG2 Room 105

• Final Exam– Wednesday April 21, 10:00 - 12:50

– It will be comprehensive

• Other Dates– Jan. 9 End of Drop/Add (by 5:00)

– Jan. 19 Martin Luther King, Jr. Day, No classes.

– Feb. 27 Withdrawal Deadline

– Mar. 8-13 Spring Break, No classes.

– Apr. 19 Last Class

Page 5: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-5

SYLLABUS OVERVIEW (cont.)

• Attendance– Not taken but strongly encouraged

• Homework exercises will be assigned– Turned in during class.– Answers given in class only.

• Tests & Exams– Closed book, closed notes– T/F, Multi-Answer Multi-Choice, Problems, Essay– Simple calculators only

• Academic Behavior– Cheating or other forms of academic dishonesty will not be

tolerated

• Please turn off all cell phones and pagers in class.

Page 6: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-6

SYLLABUS OVERVIEW (cont.)

• Grading Based on:– Homework 5% (20 pts)– First Midterm 25% (100 pts)– Second Midterm 30% (120 pts)– Final Exam 40% (160 pts)

• Guaranteed Grading Scale:–   A 90 – 100% (360-400 pts)– B 80 – 89% (320-359 pts)– C 70 – 79% (280-319 pts)– D 60 – 69% (240-279 pts)– F Otherwise (< 240 pts)

• May use +/- or lower grading scale at my discretion.

Page 7: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-7

SYLLABUS OVERVIEW (cont.)

• Take advantage of multiple resources– Classroom lectures

– Required text book

– Lecture slides and review exercises

– Publishers web site and slides

– Use the internet or other text books

– See me during office hours or email

Page 8: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-8

COURSE CONTENT

• Not a course in Windows, Mac or Unix.

• Not a point & click, “how to” course.

• Instead we’ll look at the basic concepts that underlie these and other operating systems.– Processes & threads,

– CPU scheduling,

– memory and secondary storage management,

– protection and security,

– distributed systems

• Why?– Dispel some of the mystery - understand what happens when

you point and click.

– Learn new algorithms - many OS concepts can be applied to other disciplines.

Page 9: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-9

TENTATIVE COURSE CALENDAR

– Chapter 1 - Introduction– Chapter 2 - Computer System Structures– Chapter 3 - Operating System Structures– Chapter 4 - Processes– Chapter 5 - Threads

• First Midterm (around Feb 6th)

– Chapter 6 - CPU Scheduling– Chapter 7 - Process Synchronization– Chapter 8 - Deadlocks– Chapter 9 – Basic Memory Management

• Second Midterm (in March)

Page 10: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-10

TENTATIVE COURSE CALENDAR (cont.)

– Chapter 10 - Virtual Memory

– Chapter 11/12 - File Systems

– Chapter 14 - Mass Storage Structures

– Chapter 15/16/17 - Distributed Systems

– Chapter 18/19 - Protection and Security

• Final Exam (April 21)

Page 11: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-11

WHAT IS AN OPERATING SYSTEM?

• Definition varies depending on who you ask:– resource allocator

– master control program

– everything vendor ships with the computer

– program that is always running (kernel)

Page 12: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-12

WHAT IS AN OPERATING SYSTEM?

• For purposes of our class an operating system:1) is the interface or intermediary between a

user/application and the computer hardware

2) provides an environment in which the user can execute programs conveniently and

• application and/or system software

3) manages the computer’s resources efficiently

• memory, disk space, CPU time, I/O, software, etc.

• Often an OS is a tradeoff between convenience and efficiency– Windows (GUI) vs. Unix (command interpreter)

Page 13: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-13

OS AS INTERMEDIARY

• We’ll discuss hardware later in Chapter 2.

• What’s an application?– Software to accomplish a task

• Spread sheet, word processor, browser, email

– What about system software?

• Depending on who you ask, can be considered application programs, a computer resource, or part of the OS

Page 14: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-14

WHAT IS A PROCESS?

ALGORITHM

ASSEMBLEROR

COMPILER

PROGRAM

OBJECTCODE

LIBRARIES

LINKEREXECUTABLECODE

LOADER

PROBLEM

PROCESS

Page 15: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-15

WHAT IS A PROCESS (cont.)

• A process:– is a program in execution.

– has a process control block (PCB)

– has a program counter (PC)

• A process can have one or more threads.– A thread is sometimes known as a lightweight process

Page 16: CGS 3763 Operating System Concepts Spring 2004 Hal Stringer

Introduction-16

RUNNING MULTIPLE PROGRAMS

• Parallel/Simultaneous Execution– Two or more processes performing the same activity at

the same time

– Requires two or more of the same resource (e.g., processors, printers, disk drives)

• Concurrent Execution– Two or more processes executing at the same time but

doing different activities

– Processes take turns using single shared resource

– Gives the illusion of parallel processing