DC14         SYSTEM SOFTWARE AND OPERATING SYSTEMS

 

1.         Language Processors                                                                                     3 hours

 

1.1.             Introduction

1.2.             Language Processing activities.

1.3.             Fundamentals of Language Processing.

1.4.             Fundamentals of Language Specification.

1.5.             Language Processor Development Tools.

 

I [1]

   

2                    Data Structures for Language Processing                                                     2 hours

 

2.1.             Search Data Structures.

2.2.             Allocation Data Structures.

 

I [2]

 

3                    Scanning & Parsing                                                                                        2 hours

 

3.1.             Scanning.

3.2.             Parsing.

 

I [3]

 

4                    Assemblers                                                                                                     6 hours

 

4.1.             Elements of Assembly Language Programming.

4.2.             A Simple Assembly Scheme.

4.3.             Pass Structure of Assemblers.

4.4.             Design of a Single Pass Assembler for IBM PC.

 

I [4]

 

5                    Macros and Macro Processors                                                                      3 hours

 

5.1.             Macro Definition and Call.

5.2.             Macro Expansion.

 

I [5]

 

6                    Compilers and Interpreters                                                                           8 hours

 

6.1.             Aspects of compilation

6.2.             Memory Allocation

6.3.             Compilation of Expressions

6.4.             Compilation of Control Structures

6.5.             Code Optimization

6.6.             Interpreters.

 

I [6]

 

7                    Linkers                                                                                                           3 hours

 

7.1.             Relocation and Linking Concepts

7.2.             Design of a Linker

7.3.             Self-Relocating Programs

7.4.             A Linker for MS DOS

7.5.             Linking of Overlays

7.6.             Loaders.

 

I [7]

 

8                    Software Tools                                                                                                3 hours

 

8.1.             Software Tools for Program Development

8.2.             Editors

8.3.             Debug Monitors

8.4.             Programming Environments

8.5.             User Interfaces.

 

I [8]

 

9                    Evolution of OS Functions                                                                             2 hours

 

9.1.             Batch processing Systems

9.2.             Multiprogramming Systems

9.3.             Time Sharing Systems

9.4.             Real Time Systems

9.5.             OS Structures.

 

I [9]

 

10                Processes                                                                                                       2 hours

 

10.1.          The Processes Concept

10.2.          Process Definition

10.3.          Process Control

10.4.          Interacting Processes

10.5.          Implementation of Interacting Processes.

 

I [10]

 

11                Scheduling                                                                                                      2 hours

 

11.1.          Scheduling Policies

11.2.          Job Scheduling

11.3.          Process Scheduling.

 

I [11]

 

12                Deadlocks                                                                                                       3 hours

 

12.1.          Definition

12.2.          Modeling the Resource Status

12.3.          Handling Deadlocks

12.4.          Deadlock Detection and Resolution

12.5.          Deadlock Avoidance.

I [12]

 

13                Process Synchronization                                                                                 3 hours

 

13.1.          Implementing Control Synchronization

13.2.          Critical Sections

13.3.          Classical Process Synchronization problems

13.4.          Semaphores

13.5.          Critical Regions

13.6.          Conditional Critical regions.

 

I [13]

 

14                Inter-process Communication                                                                       3 hours

 

14.1.          Inter-process Messages

14.2.          Implementation Issues

14.3.          Mailboxes.

 

I [14]

 

15                Memory Management                                                                                    3 hours

 

15.1.          Contiguous Memory Allocation

15.2.          Noncontiguous Memory Allocation

15.3.          Virtual Memory Using Paging

15.4.          Virtual Memory Using Segmentation.

 

I [15]

 

 

16                I O Organization and IO Programming                                                          3 hours

 

16.1.          IO Organization

16.2.          IO Devices

16.3.          Physical IOCS (PIOCS)

16.4.          Fundamental File Organizations

16.5.          Advanced IO Programming

16.6.          Logical IOCS.

I [16]

 

17                File Systems                                                                                                   3 hours

 

17.1.          Directory Structures

17.2.          File Protection

17.3.          Allocation of Disk space

17.4.          Implementing File Access

17.5.          File sharing

17.6.          File System Reliability.

 

I [17]

 

18                Protection and Security                                                                                  3 hours

 

18.1.          Encryption of Data Protection and Security Mechanisms

18.2.          Protection of User Files.

18.3.          Capabilities.

I [18]

 

19.       Small case study related to MS DOS, LINUX &      

Windows NT applications                                                                               3 hours

 

1.[19], 2.[22, 23]        

 

 

Text Book

 

I.          D M Dhamdhere “ Systems programming and Operating Systems”, (2nd revised edition) Tata McGraw Hill Publishing Co. Ltd., New Delhi., 2003

 

Reference Books

 

1.         Deitel, H M, “An Introduction to Operating Systems”, (2nd edition) Pearson education  2002 

2.         Silberschatz A and P Galvin  “Operating System Concepts” (5th edition), Addison – Wesley, (1999).