Você está na página 1de 4

CS 45 OPERATING SYSTEMS UNIT I PROCESSES AND THREADS 9 Introduction to operating systems review of computer organization operating system structures

es system calls system programs system structure virtual machines. Processes: Process concept Process scheduling Operations on processes Cooperating processes Interprocess communication Communication in client-server systems. Case study: IPC in Linux. Threads: Multi-threading models Threading issues. Case Study: Pthreads library UNIT II PROCESS SCHEDULING AND SYNCHRONIZATION CPU Scheduling: Scheduling criteria Scheduling algorithms Multiple-processor scheduling Real time scheduling Algorithm Evaluation. Case study: Process scheduling in Linux. Process Synchronization: The critical-section problem Synchronization hardware Semaphores Classic problems of synchronization critical regions Monitors. Deadlock: System model Deadlock characterization Methods for handling deadlocks Deadlock prevention Deadlock avoidance Deadlock detection Recovery from deadlock. UNIT III STORAGE MANAGEMENT Memory Management: Background Swapping Contiguous memory allocation Paging Segmentation Segmentation with paging. Virtual Memory: Background Demand paging Process creation Page replacement Allocation of frames Thrashing. Case Study: Memory management in Linux UNIT IV FILE SYSTEMS File-System Interface: File concept Access methods Directory structure Filesystem mounting Protection. File-System Implementation : Directory implementation Allocation methods Free-space management efficiency and performance recovery log-structured file systems. Case studies: File system in Linux file system in Windows XP UNIT V I/O SYSTEMS I/O Systems I/O Hardware Application I/O interface kernel I/O subsystem streams performance. Mass-Storage Structure: Disk scheduling Disk management Swap-space management RAID disk attachment stable storage tertiary storage. Case study: I/O in Linux TEXT BOOK: 1. Silberschatz, Galvin, and Gagne, Operating System Concepts, Sixth Edition, Wiley India Pvt Ltd, 2003. REFERENCES: 1. Andrew S. Tanenbaum, Modern Operating Systems, Second Edition, Pearson Education, 2004. 2. Gary Nutt, Operating Systems, Third Edition, Pearson Education, 2004. 3. Harvey M. Deital, Operating Systems, Third Edition, Pearson Education, 2004.

CS 47 OPERATING SYSTEMS LAB (Implement the following on LINUX or other Unix like platform. Use C for high level language implementation) 1. Write programs using the following system calls of UNIX operating system: fork, exec, getpid, exit, wait, close, stat, opendir, readdir 2. Write programs using the I/O system calls of UNIX operating system (open, read, write, etc) 3. Write C programs to simulate UNIX commands like ls, grep, etc. 4. Given the list of processes, their CPU burst times and arrival times, display/print the Gantt chart for FCFS and SJF. For each of the scheduling policies, compute and print the average waiting time and average turnaround time. (2 sessions) 5. Given the list of processes, their CPU burst times and arrival times, display/print the Gantt chart for Priority and Round robin. For each of the scheduling policies, compute and print the average waiting time and average turnaround time. (2 sessions) 6. Developing Application using Inter Process communication (using shared memory, pipes or message queues) 7. Implement the Producer Consumer problem using semaphores (using UNIX system calls). 8. Implement some memory management schemes I 9. Implement some memory management schemes II 10. Implement any file allocation technique (Linked, Indexed or Contiguous) Example for exercises 8 & 9 : Free space is maintained as a linked list of nodes with each node having the starting byte address and the ending byte address of a free block. Each memory request consists of the process-id and the amount of storage space required in bytes. Allocated memory space is again maintained as a linked list of nodes with each node having the process-id, starting byte address and the ending byte address of the allocated space. When a process finishes (taken as input) the appropriate node from the allocated list should be deleted and this free disk space should be added to the free space list. [Care should be taken to merge contiguous free blocks into one single block. This results in deleting more than one node from the free space list and changing the start and end address in the appropriate node]. For allocation use first fit, worst fit and best fit. Hardware and Software required for a batch of 30 students. HARDWARE: 30 Personal Computers SOFTWARE: Linux: Ubuntu / OpenSUSE / Fedora / Red Hat / Debian / Mint OS Linux could be loaded in individual PCs. (OR) A single server could be loaded with Linux and connected from the individual PCs.

CS63 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT I Introduction to OOAD What is OOAD? What is UML? What are the United process(UP) phases - Case study the NextGen POS system, Inception -Use case Modeling - Relating Use cases include, extend and generalization. UNIT II Elaboration - Domain Models - Finding conceptual classes and description classes Associations Attributes Domain model refinement Finding conceptual class hierarchies- Aggregation and Composition- UML activity diagrams and modeling UNIT III System sequence diagrams - Relationship between sequence diagrams and use cases Logical architecture and UML package diagram Logical architecture refinement - UML class diagrams - UML interaction diagrams UNIT IV GRASP: Designing objects with responsibilities Creator Information expert Low Coupling Controller High Cohesion Designing for visibility - Applying GoF design patterns adapter, singleton, factory and observer patterns. UNIT V UML state diagrams and modeling - Operation contracts- Mapping design to code -UML deployment and component diagrams TEXT BOOK : 1. Craig Larman,"Applying UML and Patterns: An Introduction to object-oriented Analysis and Design and iterative development, Third Edition, Pearson Education, 2005 REFERENCES: 1. Mike ODocherty, Object-Oriented Analysis & Design: Understanding System Development with UML 2.0, John Wiley & Sons, 2005. 2. James W- Cooper, Addison-Wesley, Java Design Patterns A Tutorial, 2000. 3. Micheal Blaha, James Rambaugh, Object-Oriented Modeling and Design with UML, Second Edition, Prentice Hall of India Private Limited, 2007 4. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides,Design patterns: Elements of Reusable object-oriented software, Addison-Wesley, 1995.

CS66 OOAD LAB OBJECTIVE: To develop a mini-project following the 12 exercises listed below. 1. To develop a problem statement. 2. Develop an IEEE standard SRS document. Also develop risk management and project plan (Gantt chart). 3. Identify Use Cases and develop the Use Case model. 4. Identify the business activities and develop an UML Activity diagram. 5. Identity the conceptual classes and develop a domain model with UML Class diagram. 6. Using the identified scenarios find the interaction between objects and represent them using UML Interaction diagrams. 7. Draw the State Chart diagram. 8. Identify the User Interface, Domain objects, and Technical services. Draw the partial layered, logical architecture diagram with UML package diagram notation. 9. Implement the Technical services layer. 10. Implement the Domain objects layer. 11. Implement the User Interface layer. 12. Draw Component and Deployment diagrams. Suggested domains for Mini-project. 1. Passport automation system. 2. Book bank 3. Exam Registration 4. Stock maintenance system. 5. Online course reservation system 6. E-ticketing 7. Software personnel management system 8. Credit card processing 9. e-book management system 10. Recruitment system 11. Foreign trading system 12. Conference Management System 13. BPO Management System Suggested SoftwareTools ArgoUML, Eclipse IDE, Visual Paradigm, Visual case, and Rational Suite

Você também pode gostar