You are on page 1of 7

Lovely Professional University,Punjab

Format For Instruction Plan [for Courses with Lectures and Labs

Course No CSE318

Cours Title SYSTEM SOFTWARE

Course Planner 14557 :: Avinash Kaur

Lectures Tutorial Practical Credits 4 0 0 4

Text Book:

1 Author: Leland L. Beck ,Title: Introduction to systems programming, Publishers:, Perason

Education, Delhi

Other Specific Book:

2 Dhamdhere, "Systems Programming and Operating Systems", TMH 3 Donovan, "System Programming", McGraw-Hill. 4 Aho A.V. and J.D. Ullman, Principles of Compiler Design, Addison Wesley 5 O.G. Kakde , Compiler Design, Laxmi Publications 6 Milan Milenkovic , Operating Systems Tata McGraw-Hill.

Other Reading Sr No Jouranls atricles as compulsary readings (specific articles, Complete reference) 7 http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/4/html/Step_by_Step_Guide/ch-text.html 8 www.appliedlanguage.com/translation_articles.shtml (difference between language translator and interpreter) 9 www.kwintessential.co.uk/translation/articles.html 10 http://www.debian-administration.org/users/Pooya/weblog Relevant Websites Sr. No. (Web adress) (only if relevant to the courses) 11 http://www.gnu.org/software/gdb/ 1 Salient Features Working of debuggers Approved for Autumn Session 2011-12

12 http://dinosaur.compilertools.net/ 13 http://ecee.colorado.edu/~siek/ecen4553/hw2.pdf 14 http://www.turboexplorer.com/cpp 15 http://www.alfonsomartone.itb.it/fhlvnr.html 16 www.cs.pitt.edu/~mock/cs2210/lectures/lecture3.pdf 17 http://www.cs.virginia.edu/kim/courses/cs471/lec/cs471-10semantic.pdf

Details about LEX and YACC The PLY tool that combines the functionality of both LEX and YACC IDE made by Borland for Turbo C++ 3.0 A rock-solid complier with a nice text-based IDE interface and a good debugging Syntax Analysis Semantic analysis

Detailed Plan For Lectures


Week Number Lecture Number Lecture Topic Chapters/Sections of Pedagogical tool Textbook/other Demonstration/case reference study/images/anmatio n ctc. planned

Part 1
Week 1 Lecture 1 Lecture 2 Introduction to system software Text Editors and Types of Text editors ->Reference :1,Chap1 ->Reference :1,chap 7 http://thepcweb.com/wp SEC 7.2 and 7.Text content/ editor article uploads/2008/06 /phases.gif ->Reference :2,Chapter 4;sec 4.1 ->Reference :1,chap 2 sec 2.1 ->Reference :1,chap 2 sec 2.2

Lecture 3 Lecture 4 Week 2 Lecture 5 Lecture 6 Lecture 7 Lecture 8 Week 3 Lecture 9 Lecture 10

Functions and Structure of recommended Editors Elements of Assembly language Assemblers Basic Functions Machine dependent assemblers Features Machine dependent Assemblers Features Machine independent Assembler features Machine independent Assembler features Assembler Design options -one pass assembler ->Reference :1,chap 2 sec 2.3 ->Reference :1,chap 2 sec 2.3 ->Reference :1,Chapter 2;sec 2.4 http://thepcweb.com/wp content/ uploads/2008/06 /phases.gif Approved for Autumn Session 2011-12

Week 3

Lecture 11

Two pass assembler

->Reference :3,Chapter 3; sec 3.1;sec 3.2 ->Reference :1,Chapter 2;sec 2.4 ->Reference :1,Chapter 2;sec 2.5

Lecture 12 Week 4 Lecture 13

Multi pass assembler Assembler implementation examples

Part 2
Week 4 Lecture 14 Lecture 15 Language Translators Interpreters ->Reference :1,8 Article on translators ->Reference :1,chap 5 sec 5.4 and 9.article on interpreters ->Reference :1,chap 5 ->Reference :1,chap 5 https://users.cs.jmu.edu/ sec 5.2 mata1ra/Public/CS%2 0685/phases%20of%20 compilers.jpg ->Reference :1,chap 5 http://techpubs.sgi.com/l sec 5.3 ibrary/dynaweb_docs/ 0640 /SGI_Developer/books/ MProF90 _PG/sgi_html/figures/f90 .driver.gif http://techpubs.sgi.com/l ibrary/dynaweb_docs/ 0640 /SGI_Developer/books/ MProF90_PG/sgi_ html/figures/f90.driver.gif http://www.cs.uaf.edu/~c s631/notes/phases.gif ->Reference :1,chap 5 sec 5.3 ->Reference :1,chap 5 http://docs.sun.com/sour sec 5.4 ce/8017837/images/6-18D82.gif http://www.multicians.or g/mulimg/raf2.gif Approved for Autumn Session 2011-12

Lecture 16 Week 5 Lecture 17

Overview of compiler,Types of compilers Machine dependent compiler features

Lecture 18

Machine independent compiler features

Lecture 19

Machine independent compiler features

Lecture 20 Week 6 Lecture 21 Lecture 22

Machine independent compiler features Machine independent compiler features Compiler design options

Week 6

Lecture 23

Syntax Analysis

->Reference :3,chapter www.cs.huji.ac.il/course/ 8 sec 8.2.2 2002/nand2tet/docs/ch_ 10_compiler_I.pdf www.cs.virginia.edu/kim/ courses/cs471/lec/cs471 -10-semantic.pdf

Lecture 24

Semantic analysis

Week 7

Lecture 25

Intermediate Code generation

->Reference :1,chapter 5 sec 5.1 ->Reference :3,chapter 8 sec 8.2.3

http://www.javaworld.co m/javaworld/jw072007/images/01fig03.jpg http://www.cs.fsu.edu/~e ngelen/courses/C OP402003/ast.gif

Lecture 26

Code optimization

->Reference :1,chapter 5 sec 5.2 ->Reference :3,chapter 8 sec 8.2.4 ->Reference :1,chapter 5 sec 5.1 ->Reference :3,chapter 8 sec 2 ->Reference :1,chapter 5 sec 5.5 http://www.bytelabs.org/i mages/compcodegendet ailednew.jpg

Lecture 27

Code generation

Lecture 28

Implementation examples of compilers

MID-TERM Part 3
Week 8 Lecture 29 Lecture 30 Lecture 31 Lecture 32 Week 9 Lecture 33 Lecture 34 Lecture 35 Lecture 36 4 Case study of LEX and YACC Macros and macro processor: macro definition Basic functions of a macro processor,Features of macro utility Macro parameters, macro expansion Conditional macro expansion,Keyword macro parameter Macro design options Recursive macro expansion Implementation examples ->Reference :1,9 and 10 ->Reference :1,chap4 sec 4.1 ->Reference :1,chap 4 sec 4.1 ->Reference :1,chap 4 sec 4.2 ->Reference :1,chap 4 sec 4.2 ->Reference :1,chap 4 sec 4.3 ->Reference :1,chap 4 sec 4.3.1 ->Reference :1,chap 4 sec 4.4 Approved for Autumn Session 2011-12

Week 10

Lecture 37

IDE and techniques

->Reference :1,10.article on debugging system

Part 4
Week 10 Lecture 38 Case study of debugging in turbo c++ IDE ->Reference :1,14 and http://eli.thegreenplace.n 15 et/wpcontent/uploads/20 08/05/tc_000.png ->Reference :1,chap 3 http://www.cs.princeton. edu/courses/archive/fall 98/cs441/Lectures/Lec5 /Lec59.gif ->Reference :1,chap 3 sec 3.2 ->Reference :1,chap 3 sec 3.4 http://download.oracle.c om/docs/cd/B32 110_01/web.1013/b 28952/img/jidev001. gif http://www.elecfans.com /article/UploadPic/20094/2009423152552334 .gif ->Reference :1,chap 3 http://onjava.com/onjava /2005/01/26/graphics /Figure01 _MultipleClassLoaders.J PG ->Reference :1,chap 3 sec 3.2 ->Reference :1,chap 3 sec 3.3 ->Reference :1,chap 3 sec 3.4 ->Reference :1,chap 3 sec 3.5

Lecture 39

Introduction to linking and loading

Lecture 40 Week 11 Lecture 41 Lecture 42 Lecture 43

Loaders and linkage editors Linking and relocation Static linking And Dynamic linking Bootstrap loader

Lecture 44

Loading schemes

Week 12

Lecture 45 Lecture 46 Lecture 47 Lecture 48

Machine dependent loader features Machine independent loader features Loader design options Implementation examples

Approved for Autumn Session 2011-12

Spill Over
Week 13 Lecture 49 Lecture 50 Macro design options Linking and relocation ->Reference :1,chap 4 sec 4.3 ->Reference :1,chap 3 sec 3.2

Details of homework and case studies


Homework No. Objective Topic of the Homework Nature of homework (group/individuals/field work Evaluation Mode Allottment / submission Week 4/6

Test 1

To test students ability

Introduction to System software, Text Editors, Functions and Individual structure of Recommended Editor, Types of Text editors ,Elements of assembly language programming Assemblers Basic Functions, Machine Dependent Assembler features, Machine Independent Assembler features, Assembler Design Options , One pass Assemblers, Two pass assemblers & Multi pass Assemblers with Implementation Examples Language Translators, Interpreters, Overview of compilers ,Types of compilers, Machine dependent compiler features , machine independent compiler features Case Study of LEX and YACC. Macros and Macro processor, Macro definition, Basic Functions of a Macro Processor, Macro Parameters, Macro Expansion, Conditional Macro Expansion, Keyword Macro Parameters , Macro processor design options , Recursive Macro Expansions , Features of macro facility and Implementation examples. Interactive Debugging systems and techniques, Case Study of Debugging in Turbo C++ IDE Introduction to Linking & Loading, Loaders and linkage editors, linking and relocation, Static linking, dynamic linking, Bootstrap loader, Loading schemes. Individual

according to writing skills

Test 2

To test students ability

According to writing skills

8/9

Term Paper 1

To test students knowledge

1 Lex - A Lexical Analyzer Generator 2 Just-in-time compiler 3 Individual Compiler Generators 4 Flex - fast lexical analyzer generator 5 Yacc: Yet another Compiler-Compiler 6 Stage compiler 7 Hardware compilers 8 Source-to-source compiler 9 Decompiler. 10 Disassembler 11 Text compiler 12 Language Interpreter 13 Command line interpreter 14 Microassembler 15 Dynamic linker 16 Cross compiler 17 Code optimization 18 Syntactic analysis 19 Lexical analysis 20 Designing a compiler

Presentation

4 / 10

Scheme for CA:out of 100*


6 Approved for Autumn Session 2011-12

Component Test,Term Paper

Frequency 2

Out Of 3 Total :-

Each Marks Total Marks 10 10 20 20

* In ENG courses wherever the total exceeds 100, consider x best out of y components of CA, as explained in teacher's guide available on the UMS List of suggested topics for term paper[at least 15] (Student to spend about 15 hrs on any one specified term paper) Sr. No. Topic 1 1 Lex - A Lexical Analyzer Generator 2 Just-in-time compiler 3 Compiler Generators 4 Flex - fast lexical analyzer generator 5 Yacc: Yet another CompilerCompiler 6 Stage compiler 7 Hardware compilers 8 Source-to-source compiler 9 Decompiler. 10 Disassembler 11 Text compiler 12 Language Interpreter 13 Command line interpreter 14 Microassembler 15 Dynamic linker 16 Cross compiler 17 Code optimization 18 Syntactic analysis 19 Lexical analysis 20 Designing a compiler

Approved for Autumn Session 2011-12

You might also like