cop 3402 systems software

15
COP 3402 Systems Software Euripides Montagne University of Central Florida

Upload: tatum

Post on 05-Jan-2016

67 views

Category:

Documents


0 download

DESCRIPTION

COP 3402 Systems Software. Euripides Montagne University of Central Florida. Outline. Course Organization What is Systems software?. COP 3402 Systems Software. Who am I and where to find me?. Instructor: Euripides Montagne Tele.: (407) 823-2684 email : [email protected] - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: COP 3402 Systems Software

COP 3402 Systems Software

Euripides Montagne

University of Central Florida

Page 2: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 2

Outline

1. Course Organization

2. What is Systems software?

Page 3: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 3

Instructor: Euripides Montagne

Tele.: (407) 823-2684

email: [email protected] Office hours: MWF 11:00 p.m. - 12:30 p.m. (Noon)(HEC 217)

T 2:00 p.m. - 3:00 p.m. (HEC 217)

Who am I and where to find me?

COP 3402 Systems Software

Page 4: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 4

Lecture meetings: M-W 7:30 p.m. – 8:45 p.m.(CB2 105)

Recitations:Lab0011: Monday 6:30 p.m. – 7:20 p.m. (HEC 118) Lab0012: Wednesday 3:30 p.m. – 4:20 p.m. (ENG2 302)

Lab0013: Wednesday 6:30 p.m. – 4:20 p.m. (HEC 118)

Web page: http://www.cs.ucf.edu/courses/cop3402/fall2014

COP 3402 Systems SoftwareCourse information

Page 5: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 5

Course Outline: This course is designed to provide a fundamental understanding of real and virtual machines as language processor. We will study the processor as an instruction interpreter. Compilers, assemblers, and virtual machines will be presented as systems software for program development. An introduction to Operating system will be given.

Course Topics: introduction to compilers and interpreters, virtual machines, computer architecture and assembler, loaders and linkers, macro-processors, run time environment and operating systems

Prerequisites:COP 3502 – Computer Science I

COP 3402 Systems SoftwareCourse outline

Page 6: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 6

Grading Policy: (20%) Exam #1 (20%) Exam #2 (25%) Final Exam (30%) Programming project. (5%) Recitations

Each programming project will have a due date and points will be subtracted for submission after that date ( up to 2 days late, 20 % off; more than two days late, you get “0” for that program). The last programming project will not have the 2 days late submission.

COP 3402 Systems SoftwareCourse outline (continued)

Page 7: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 7

Material:Lecture notes: On website.

Required text:Compilers: Principles, Techniques, & Tools, Second Edition by Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. Addison Wesley, 2007

Supplementary texts:Compiler Construction Using Java, JavaCC, and Yacc. Anthony j. Dos Reis. Wiley, 2012. Modern Compiler Implementation in C by Andrew Appel. Cambridge University Press, 1998Compiler Construction: Principles and Practice by Kenneth C. Louden, PWS, 1997System Software: An Introduction to Systems Programming, 3rd Edition by Leland Beck, 1997.Concepts of Programming Languages, 8th Edition by Robert W. Sebesta. Addison Wesley, 2010

COP 3402 Systems SoftwareCourse outline (continued)

Page 8: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 8

TAs: Edward Aymerich email: [email protected] Office hours: Tuesdays 9:30 a.m. - 11:30 a.m. (HEC 308)Elham Havvaei email: [email protected] hours: Tuesdays 1:30 p.m. - 3 p.m.Salman Khokhar email: [email protected] hours: Tuesday 2:00 p.m. - 4:00 p.m.

Graders: Sharon Ladiero email: [email protected] Marconi email: [email protected] hours: MW: 12:30 p.m. - 1:30 p.m.Andrea Castillo

COP 3402 Systems SoftwareWho are your TAs?

Page 9: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 9

COP 3402 Systems Software

An Introduction to

Systems Software

Page 10: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 10

What is Systems Software?

Systems Software consists of a set of programs that supportthe operation of a computer system and help, the programmer,to simplify the programming process and create an environment to run application software efficiently.

Examples of systems software are:Text editorsCompilersLoadersLinkerDebuggerAssemblerOperating system

Page 11: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 11

Systems software can be classified in two groups:

1.- Software to create a program development environment

Text editor

Compiler

Assembler

Linker

Debugger (low-level)

2.- Software to create a run-time environment

Operating system

Loader

Dynamic Linker

Program libraries

Page 12: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 12

Systems Software: Program Development Environment

Text editor: Software that permits the creation and editing of text files (i.e. application programs).

Compiler: Translates programs written in a high levellanguage to machine code(assembly Language).

Assembler: Translates programs written in assembly language toobject code(binary).

Static Linker: Combines and resolves references between object programs and creates the executable code.

Debugger It is used to debug executable programs and their (low-level) related object code and source program.

Page 13: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 13

Systems Software: Run-Time Environment

Loader: Loads an executable code and starts its execution.

Libraries: Precompiled programs that create a set of functions for use by other programs.

Dynamic Linker: Loads and links shared libraries at run-time

Operating system:

An event driven program that make an abstraction of the computersystem. The operating system handles all resources efficiently, creates an environment for application programs to run, and provides a friendly interface between the user and the computer system.

Page 14: COP 3402 Systems Software

Eurípides Montagne University of Central Florida 14

SourceProgram

Compiler/assembler

ObjectModule

Link Editor (Linker)

Other Object Modules

Loader

ExecutableFile (ELF)

SystemLibrary

DynamicallyLoaded SystemLibrary

RunningProgram Computer hardware + OS

Load time

Compile time

Execution time

Page 15: COP 3402 Systems Software

COP 3402 Systems Software

Next class we will talk about

The processoras an instruction interpreter