Welcome to CSE 4300! Spring 2018

Similar documents
Andrew S. Tanenbaum, Operating Systems, Design and Implementation, (Second Edition), Prentice Hall.

Operating Systems CMPSC 473. Introduction January 15, Lecture 1 Instructor: Trent Jaeger

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information

About Me. Office Hours: Tu 4-5, W 1-2, or by appointment Office: 346A IST Bldg

CSC 256/456: Operating Systems. Introduction. John Criswell! University of Rochester

Operating Systems (ECS 150) Spring 2011

EECS 678: Introduction to Operating Systems. Heechul Yun

Introduction and Overview

Course Content. 07-Feb-17 Faculty of Computer Science & Engineering 1 BK TP.HCM

Operating Systems Course Overview

Chapter 1: Introduction. What is an Operating System? Overview Course (contd.) How do I spend my time? Computer System Components

Contents. Today's Topic: Introduction to Operating Systems

Introduction To Computers. About the Course

An Operating System History of Operating Systems. Operating Systems. Autumn CS4023

CSci Introduction to Operating Systems. Administrivia, Intro

Unix API Books. Linux Kernel Books. Assignments and Exams. Grading for CSC 256. Operating Systems 8/31/2018. CSC 256/456 Fall

C Programming for Engineers Introduction

Software Concepts. It is a translator that converts high level language to machine level language.

Introduction to Computer Systems and Operating Systems

CSE3008: Operating Systems. Computer Systems Laboratory Sungkyunkwan University

Operating Systems, Spring 2015 Course Syllabus

Fundamental Concepts and History

ESET 349 Microcontroller Architecture, Fall 2018

Chapter 1: Introduction to Computers

Learning Objectives. In this chapter you will learn about:

INFS 214: Introduction to Computing

Chapter 1: Introduction to Computers. In this chapter you will learn about:

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

SWE3004: Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

CS 113: Introduction to

CS 0449 Intro to Systems Software Fall Term: 2181

Introduction to Operating Systems

CS 326: Operating Systems. Lecture 1

CSC 453 Operating Systems

Operating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction

CPS 210: Operating Systems

Operating Systems Concepts. CMPUT 379, Winter 2014 Section B1

CS240: Programming in C

Topics. Operating System I. What is an Operating System? Let s Get Started! What is an Operating System? OS History.

Introduction to Operating Systems. Jo, Heeseung

Some popular Operating Systems include Linux Operating System, Windows Operating System, VMS, OS/400, AIX, z/os, etc.

Principles of Operating Systems CS 446/646

Introduction to System Programming Course 2015 Spring Euiseong Seo

SSE3044: Operating Systems

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Module 1: Introduction

Spring 2017 :: CSE 506. Introduction. Nima Honarmand

Linux Operating System

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017

Operating Systems: Overview and Introduction

Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?

Computer Science 4500 Operating Systems. Welcome! In This Module. Module 1 Introduction, Overview and History

Course and Unix Intro

Geography 3300: Transportation Security

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung

Module 1: Introduction. What is an Operating System?

CS307 Operating Systems Introduction Fan Wu

ECE397A Operating Systems. Chapter 1: Introduction

Operating Systems CS 571

Introduction & Logistics

EECE 321: Computer Organization

OPERATING- SYSTEM CONCEPTS

EECE.2160: ECE Application Programming Spring 2017

COURSE OVERVIEW. Introduction to Computer Engineering 2015 Spring by Euiseong Seo

CS 378 (Spring 2003) Linux Kernel Programming. Yongguang Zhang. Copyright 2003, Yongguang Zhang

Reserves time on a paper sign-up sheet. Programmer runs his own program. Relays or vacuum tube hardware. Plug board or punch card input.

Introduction to Computer Systems

Major OS Achievements. Chris Collins. 15 th October 2006

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

Introduction To Operating System

Introduction to Operating System. Dr. Aarti Singh Professor MMICT&BM MMU

Compilers for Modern Architectures Course Syllabus, Spring 2015

Chapter 1: Introduction

ESET 369 Embedded Systems Software, Spring 2018

The First Operating System Was Human

Introduction to Information Technology ITP 101x (4 Units)

CPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu

ESET 369 Embedded Systems Software, Fall 2017

Operating Systems ( )

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

Chapter 2. OS Overview

Administration Computers Software Algorithms Programming Languages

EEE 435 Principles of Operating Systems

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

COMP 102: Computers and Computing Lecture 1: Introduction!

X

COURSE OUTLINE Survey of Operating Systems

Computer System Overview

Syllabus CSCI 405 Operating Systems Fall 2018

CSC 280 Operating System Principles

Basic Concepts & OS History

Chapter 2 Operating-System Structures

SYLLABUS, MAJOR TOPICS & COMPUTERS

ECE573 Introduction to Compilers & Translators

CMPSCI 201: Architecture and Assembly Language

W4118: OS Overview. Junfeng Yang

Operating Systems : Overview

COMPSCI: Principles of Operating Systems. Lecture 1: Introduction. Anton Burtsev January, 2017

CONTENTS. Computer-System Structures

CSE4305: Compilers for Algorithmic Languages CSE5317: Design and Construction of Compilers

Transcription:

Welcome to CSE 4300! Spring 2018

Today, we will see. Course information Personnel Policy Schedule Grading Course overview

Instructor and TA Instructor: Song Han Instructor email: song.han@uconn.edu Office: ITEB 355 Office hours: Tuesday 5:00 6:00pm or by appointment Course website www.engr.uconn.edu/~song/classes/os/index.html Slides and reading materials will be available on course website HW/PA will be submitted through HuskyCT Teaching Assistant: Mr. Tao Gong TA email: tao.gong@uconn.edu Office: ITEB 311 Office Hour: TBD

We will learn OS design Processes and threads Memory management File systems Theories and Algorithms Practice Very basics of Linux Systems Programming How to compile kernel In This Course

It will be easier for you if you have Prior Experience in C programming If you do not have any experience in C and you still want to take this course, I strongly suggest you to start learning ASAP

Expect Fast Pace Four to Five programming assignments, depending on class performance/background Five homework Two Midterms One Final

Grading Final (33%) Midterm I (14%) Midterm II (14%) Homework (12%) Programming Assignments (2% (installation)+25%)

Submission policy For homework, you will need to hand in a hardcopy in class. Do not email the instructor/ta your homework! In case you are unable to come to the class, please upload on HuskyCT before due deadline! Programming assignments are submitted on HuskyCT!

Late Policy and Re grading See course web site http://engr.uconn.edu/~song/classes/os/index.html

Cheating Policy Zero tolerance for cheating. Both the cheater and the student who aided the cheater will be held responsible for the cheating. University policy applies for cheating or other form of misconduct. Punishment for cheating will be decided by the instructor as per the university guideline.

Please follow the university rules/regulations regarding dropping classes If you have any medical conditions, please contact the appropriate authorities for accommodations early in the semester and contact me with proper documents.

Please check the following link for important information regarding University policies on various topics (e.g., Absences from Final Examinations, Class Attendance, Credit Hour, Policy Statement People with Disabilities, Policy Against Discrimination, Harassment and Related Interpersonal Violence, the Student Code, etc.). http://provost.uconn.edu/syllabi references/

Please Attend lectures Submit assignments on time Never hesitate to ask for help! Contact me ASAP if you have any issue! I am here for you!

Course Website Lists the Lecture Topic and Tentative Schedule http://engr.uconn.edu/~song/classes/os/index.html

Let the journey begin!

Introduction to Operating Systems What s an operating system (OS)? Why learn OS? Historical perspective on operating systems 16

OS: Examples MS Windows, Mac OS, Linux/Unix, Solaris, FreeBSD, Minix iphone OS, Android, Symbian OS, Windows mobile, Blackberry OS, Mobile Linux, MXI (Motion experience Interface), embedded Linux, Windows CE TinyOS 17

OS: More Traditional View Interface between user and architecture Hides architectural details Implements virtual machine: Easier to program than raw hardware Provides services and coordinates machine activities User level Applications Operating System Hardware virtual machine interface physical machine interface 18

Operating Systems: Key Features Provides standard services (interface) that hardware implements File system, virtual memory, networking, scheduling, time sharing Coordinates multiple applications and users to achieve safety, fairness and efficiency (high throughput) Concurrency, memory protection, networking, security OS design challenges: convenient and efficient Software engineering & systems engineering problems 19

Introduction to Operating Systems What s an operating system? (OS) Why learn OS? Historical perspective on operating systems 20

Importance of Operating Systems Key component of computer systems Meeting point of software & hardware Understanding how computers work = understanding operating systems OS provides key services required by all application programs Be able to write better application level programs! Rich topic: OS = most complex software on your PC Windows XP kernel: 40 million lines of code 21

New Developments in OS Design Operating systems: very active field of research Demands on OS s growing New application spaces Rapidly evolving hardware (sensors, mobile devices) Advent of open source operating systems Linux You can contribute to and develop OS s! Excellent research platform 22

Introduction to Operating Systems What s an operating system? (OS) Why learn OS? Historical perspective on operating systems 23

History of operating systems Five waves* Mainframe computers Minicomputers Desktop Internet PC Mobile Internet *The Mobile Wave, Michael Saylor, Vanguard Press, 2012. 24

Mainframe I (1945 1955) Hardware technology Mechanical relays, then vacuum tubes The Experience No O.S., no library calls Programming in machine language (NOT assembly) Basic I/O E.g. punch cards 25

26 ENIAC

Mainframe II (1955 1965) Hardware Technology Transistors (smaller, more reliable, affordable) The Experience Compilers, linkers, loaders are available! Programming done in assembly and FORTRAN I/O: magnetic tape Batch processing 27

Batch Processing Execute multiple jobs in batch: Load program Run Print results, dump machine state Repeat Users submit jobs (on cards or tape) Human schedules jobs Operating system loads & runs jobs 28

Minicomputers (1965 1975) Hardware technology Integrated Circuits The Experience Multiprogramming: several programs to run at same time Unix is born (1969) Integration of simple tools Shell : composable commands Written in C: easily portable 29

Desktop PCs (1975 1990 s) Hardware technology microprocessors The Experience MAC (1980 s): Steve Jobs discovers the Graphical User Interface Pioneered at Xerox PARC Microsoft catches up (1985 1995) MINIX is born (1987) followed by Linux (1992) Automate office work 30

Internet PCs and Mobile Internet (1990 s now) PCs connected using Internet Mobile phones connect you to Internet all the time ios, Android,... 31

Different modalities (1990 s now) Parallel: Multiple processors, one machine Distributed: Multiple networked processors Real time: Strict or loose deadlines Sensor networks: Many tiny computers 32

Moral of the Story The only constant: Change In 60 years, almost every computer component now 9 orders of magnitude faster, larger, cheaper Example: 33 1983 1999 MIPS 0.5 500 cost/mip $100,000 $500 memory 1 MB 1 GB network 10 Mbit/s 1 GB/s disk 1 GB 1 Tbyte

Moral of the Story, II No counterpart in any other sphere of human existence! Transportation: 200 years to go from horseback (10 mph) to Concorde (1000 mph) = 2 orders of magnitude Communication is closest: 100 years to go from Pony Express (10 mph) to nearly speed of light (600 million mph) = 7 orders of magnitude And operating systems must adapt 34

Course outline Introduction Process management Multiprogramming, process/thread, CPU scheduling, synchronization, deadlock File system Memory management segmentation, paging, swapping I/O system Advanced topics Protection, Security, etc. 35