150 likes | 300 Views
COP 3402 Systems Software. Euripides Montagne University of Central Florida (Summer 2013). 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 : eurip@eecs.ucf.edu
E N D
COP 3402 Systems Software Euripides Montagne University of Central Florida (Summer 2013)
Outline • Course Organization • What is Systems software? University of Central Florida
COP 3402 Systems Software Who am I and where to find me? Instructor:Euripides Montagne Tele.:(407)823-2684 email: eurip@eecs.ucf.edu Office hours: MW 4:00 p.m. to 5:00 p.m. (HEC 217) T 2:00 p.m. to 3:00 p.m. University of Central Florida
COP 3402 Systems SoftwareCourse information Lecture meetings: MW 2:00 p.m. – 3:50 p.m. (HEC 117 ) Recitations: W 12:00 p.m. – 12:50 p.m. (ENG 227) W 1:00 p.m. – 1:50 p.m. (ENG 227) Web page:http://www.cs.ucf.edu/courses/cop3402/sum2013/ University of Central Florida
COP 3402 Systems SoftwareCourse outline 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 University of Central Florida
COP 3402 Systems SoftwareCourse outline (continued) Grading Policy:(25%) Exam #1 (35%) Final Exam (35%) 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. University of Central Florida
COP 3402 Systems SoftwareCourse outline (continued) • 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 • Recommended: • Compiler Construction Using Java, JavaCC, and Yacc. Anthony j. Dos Reis. Wiley, 2012. • Supplementary texts: • Modern Compiler Implementation in C by Andrew Appel. Cambridge University Press, 1998Compiler Construction:Principles and Practice by Kenneth C. Louden, PWS, 1997 • System Software: An Introduction to Systems Programming, 3rd Editionby Leland Beck, 1997. • Concepts of Programming Languages, 8th Edition by Robert W. Sebesta. Addison Wesley, 2010 University of Central Florida
COP 3402 Systems SoftwareWho are your TAs? TA: Pierre Labordeemail: pierrelaborde@gmail.com Office hours: Wednesday: 4:00 pm to 6:00 pm (HEC-313) Graders : QuanTranemail: quantran@knights.ucf.edu Office hours: MW 10:00 a.m. to 11:00 a.m. (HEC 308 ) Sharon Ladiero email: sjladiero@knights.ucf.edu Office hours: Tuesdays 5:00 p.m. to 6:00 p.m. (HEC 308) University of Central Florida
COP 3402 Systems Software An Introduction to Systems Software University of Central Florida
What is Systems Software? Systems Software consists of a set of programs that support the 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 editors Compilers Loaders Linker Debugger Assembler Operating system University of Central Florida
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 University of Central Florida
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 level • language to machine code(assembly Language). • Assembler: Translates programs written in assembly language to • object 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. University of Central Florida
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 computer • system. 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. University of Central Florida
Compile time Compiler/ assembler Object Module Source Program Other Object Modules Link Editor (Linker) System Library Executable File (ELF) Load time Loader Dynamically Loaded System Library Running Program Execution time Computer hardware + OS University of Central Florida
COP 3402 Systems Software Next class we will talk about The processor as an instruction interpreter