1 COMP 3500 Introduction to Operating Systems Dr. Xiao Qin Auburn University

Slides:



Advertisements
Similar presentations
Slide 01-1COMP 7370, Auburn University COMP 7370 Advanced Computer and Network Security Dr. Xiao Qin Auburn University
Advertisements

CMSC 132: Object-Oriented Programming II
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
1 ECE7995 Computer Storage and Operating System Design Instructor: Dr. Song Jiang The ECE Department Lecture: Tuesday/Thursday 10:00pm :50pm 0199.
EET 4250: Microcomputer Architecture Fall 2009 William Acosta URL:
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
Introduction to Operating Systems J. H. Wang Sep. 18, 2012.
Computer Network Fundamentals CNT4007C
Course Overview Sarah Diesburg  Bobby Roy COP 5641 / CIS 4930.
COMP Introduction to Programming Yi Hong May 13, 2015.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
CSc 2310 Principles of Programming (Java) Dr. Xiaolin Hu.
Course Introduction Software Engineering
CS461: Principles and Internals of Database Systems Instructor: Ying Cai Department of Computer Science Iowa State University Office:
Introduction to Operating Systems J. H. Wang Sep. 18, 2015.
Course Information Sarah Diesburg Operating Systems COP 4610.
Course Information Andy Wang Operating Systems COP 4610 / CGS 5765.
1 CSCI 3120: Operating Systems Summer 2003 Instructor: Kirstie Hawkey Office hours (outside Room 311): Mon: 2:30-3:30, Fri: 10:30-11:30.
Introduction to Operating Systems J. H. Wang Sep. 15, 2010.
OSes: 0. Prelim 1 Operating Systems v Objectives –to give some background on this subject Certificate Program in Software Development CSE-TC and CSIM,
CSC 411/511: DBMS Design CSC411_L0_OutlineDr. Nan Wang 1 Course Outline.
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
Course Overview Mark Stanovich COP 5641 / CIS 4930.
Course Overview 1 FCM 710 Architecture of Secure Operating Systems Prof. Shamik Sengupta Office 4210 N
CS363: Introduction to Database Systems Instructor: Ying Cai Department of Computer Science Iowa State University Office: Atanasoff.
Introduction to Operating Systems J. H. Wang Sep. 13, 2013.
Computer Networks CNT5106C
COMP 2710 Software Construction
COMP 3000 Object-Oriented Programming for Engineers and Scientists Dr. Xiao Qin Auburn University Fall,
CSI 3131 Summer 2016 Principles of Operating Systems Instructor: Dr. Nathalie Japkowicz Office: STE 5029 Office Hours: n In.
Advanced Programing practices
Computer Network Fundamentals CNT4007C
Introduction to Operating Systems
Course Overview - Database Systems
Welcome to SSE3044 Operating Systems!
CS 450/550 Operating Systems Loc & Time: MW 1:40pm-4:20pm, 101 ENG
Computer Engineering Department Islamic University of Gaza
CS101 Computer Programming I
CSc 1302 Principles of Computer Science II
Course Introduction 공학대학원 데이타베이스
Computer Networks CNT5106C
Introduction to Information Systems and Technology
CMSC104 Problem Solving and Computer Programming Fall 2010 Section 01
Course Information Mark Stanovich Principles of Operating Systems
CSE1320 INTERMEDIATE PROGRAMMING
CSE1320 INTERMEDIATE PROGRAMMING
Computer Networks CNT5106C
Course Overview - Database Systems
Andy Wang Operating Systems COP 4610 / CGS 5765
Introduction to Operating Systems
CMSC 104 Problem Solving and Computer Programming Fall 2010
EECE 310 Software Engineering
Andy Wang Operating Systems COP 4610 / CGS 5765
CGS 3763 Operating Systems Concepts Spring 2013
Andy Wang Operating Systems COP 4610 / CGS 5765
CSE1320 INTERMEDIATE PROGRAMMING
CSE1320 INTERMEDIATE PROGRAMMING
CMSC104 Problem Solving and Computer Programming Fall 2010
Andy Wang Operating Systems COP 4610 / CGS 5765
CSC227: Operating Systems
First Semester 1439/1440 Welcome 
Andy Wang Operating Systems COP 4610 / CGS 5765
Computer Networks CNT5106C
Andy Wang Operating Systems COP 4610 / CGS 5765
ITEC 202 Operating Systems
Sarah Diesburg Operating Systems CS 3430
CSCE156: Introduction to Computer Science II
CS201 – Course Expectations
Presentation transcript:

1 COMP 3500 Introduction to Operating Systems Dr. Xiao Qin Auburn University

Your Background Not-A-Quiz Is this course an elective or a required course for you? What is your major? What programming languages do you have (any) experience in? What is your favorite programming language (not necessarily the one you are the most skilled at)? 2

Today’s Goal: Course Objectives Course Content & Grading Laboratory Assignments Introduction to Operating Systems 3

4

5

6

7 Why Study Operating Systems? Position Software Development Engineer Location Redmond, WA Company Microsoft Part of the Job Description We are a small team that works on the core features of SQL Server including programmability, query execution, query optimization, storage, transactions, recovery, high availability, etc. 3-5 years of hands on software development. 3+ years’ experience C/C++/C#/Java coding skills. Strong Knowledge in distributed systems, databases, query processing, query optimization, cloud computing, operating systems

8 Why Study Operating Systems? Position Software Engineer Location San Francisco, CA Company Ebay Part of the Job Description The ideal candidate has experience building APIs to be consumed by website, mobile clients and third parties. You will be working on building services that form the backbone of one of the highest traffic ecommerce destinations. Qualifications include: 3-4 years experience in Python, Java, C++, Ruby or any other programming language Experience in building REST and/or XML APIs which are consumed both by web and mobile clients Knowledge in Object-Oriented Design Principles, Data Structures, Algorithms, relational databases, SQL, Operating Systems

9 Why Study Operating Systems? Position Mainframe Systems Engineer Location Columbus, OH Company JPMorgan Chase Part of the Job Descriptio n This deep-skill position will be a member the Mainframe Operating Systems Engineering team. As part of this high- performance group, this individual will be responsible for engineering support of JPMC's Operating systems and subsystems, which include zSeries, JES2, and Unix Systems Services. Requirements: experience installing, configuring, implementing, tuning, and debugging zSeries operating system hands-on experience in a z/OS operating system environment using JES2. experience in Unix Systems Services

10 Why Study Operating Systems? Position Data Center Test Engineer Location Council Bluffs, IA Company Google Part of the Job Descriptio n Responsibilities: Define, plan, and set up test environments and infrastructure to test PC and network solutions in the Council Bluffs, Iowa Data Center. Plan, execute, and document tests to verify and validate systems integration, expose issues, and identify root causes. Requirements: BS degree in Computer, Electrical, Software Engineering, Computer Science or equivalent practical experience. 4 years of experience with Linux or Unix operating systems.

11 Why Study Operating Systems?

12 Why Study Computer Architecture?

Operating Systems are Everywhere 13

Your Future Career Careers: Comp. Sci & Eng., Electrical Eng. Programming skills Phone and On-site Interviews Problem solving skills Personality COMP2710: Quickly learn a new programming language Programming experience COMP3500: Quickly learn and implement new concepts 14

15 Goal and Objectives Goal: Compete for positions in the job market or in graduate schools. Objective 1: Design system software (e.g., Project 4 Processes and System Calls) Objective 2: Implement software at low levels (e.g., Project 3 synchronization) Software design skills Programming skills

COMP 3500 Introduction to Operating Systems COMP 2710 Software Construction COMP 3350 Computer Organization CompilersParallel and Distributed Systems 16

What will you get out of COMP3500? Synchronization Concepts Virtual Memory File System To implement a synchronization mechanism To construct a virtual memory management module To learn the fundamental and components of operating systems To implement a simple file system Performance Evaluate operating system performance 17

Topic Coverage Concepts of processes/threads Process scheduling Concurrency problems Synchronization Mutual exclusion Deadlocks Memory management File systems Storage systems 18

Textbook Textbook: Operating System Concepts 9 th Edition, Authors: Abraham Silberschatz, Peter B. Galvin, and Greg Gagne. ISBN- 13: , ISBN-10:

How to save money? An Earlier Edition Works! 20

Course Syllabus Prerequisite: –COMP 2710 Software Construction –COMP 3350 Computer Organization and Assembly Language Programming 2 midterm exams and 1 final exam Grading –Mid-term 1 10% –Mid-term 2 10% –Final Exam 20% –Quizzes 10% –Homework10% –Programming Projects 40% 21

Course Syllabus (cont.) Scale – Letter grades will be awarded based on the following scale. This scale may be adjusted upwards if it is necessary based on the final grades. – A [90, 100], B [80,90), C [70,80), D [60,70), F [0,60) Cheating – Programming projects and written assignment are completed in teams of three. – Students in one group should NOT share any project code or even detailed algorithm information with students in other groups. – Assignments submitted must be your team. – Please do NOT attempt to recycle answers from the Internet (plagiarism). 22

Office Hours Instructor: Dr. Xiao Qin Office: 3101E Shelby Center Office Hours: MWF, 1:00pm – 1:50pm TA: Yuanqi Chen, Office Hour: MWF 3:00pm-3:50pm. Office: 3139 Shelby Center 23

Three Exams Mid-term Exam 1: 9/23, Wednesday, 11:00am-11:50am Mid-term Exam 2: 10/28, Wednesday, 11:00am-11:50am Final Exam: 12/9, Wednesday, 12 noon-2:30pm 24

Am I going to read the book to you? NO! Book provides a framework and complete background, so lectures can be more interactive. –You do the reading –We’ll discuss it Programming assignments will go “beyond” 25

Programming Assignments Six programming assignments (40% of final score) Programming language (C) We will be using OS/161 and System/161. We will learn two tools: CVS and GDB. Programming Assignments –Assignment 1 Setup your Linux machine –Assignment 2 Starting with OS/161 –Assignment 3 Synchronization –Assignment 4 Processes and System Calls –Assignment 5 Virtual Memory –Assignment 6 File Systems 26

27 COMP3500 Course Evaluation Fall 2014 Projects were too much to finish and hard to understand It is discouraging to not be able to get a project working properly. Assume that the students can solve complex problems in C Doesn't even teach practical uses of the Linux OS (ssh, vi) Read slides

Questions Please ask at any time! 28

Build you team now! Each team has three members Discussions: –Set regular meeting time (at least twice a week) –Discuss collaboration software (e.g., google docs, dropbox, box, onedrive) –General collaboration strategies Return your discussion minutes: –Names of your team members –Weekly meeting time –Collaboration software 29

For Next Time… 1.Operating System Overview 2.Read Chapter 2 30