Design and Implementation of the MTX Operating System

Size: px
Start display at page:

Download "Design and Implementation of the MTX Operating System"

Transcription

1 Design and Implementation of the MTX Operating System

2 K. C. Wang Design and Implementation of the MTX Operating System 1 3

3 K. C. Wang School of Electrical Engineering and Computer Science Washington State University Pullman Washington USA ISBN DOI / ISBN (ebook) Library of Congress Control Number: Springer Cham Heidelberg New York Dordrecht London Springer International Publishing Switzerland 2015 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms, or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors, and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. Printed on acid-free paper Springer International Publishing AG Switzerland is part of Springer Science+Business Media (

4 Preface The purpose of this book is to provide a suitable platform for teaching and learning the theory and practice of operating systems. It covers the basic concepts and principles of operating systems, and it shows how to apply them to design and implement a complete operating system in incremental steps. Throughout the book, it uses the development of the MTX operating system to convey the real intent of this book, which is to demonstrate the design principles and implementation techniques of operating systems in general. Due to its technical contents, this book is not intended for entry-level OS courses that teach only the basic concepts and principles of operating systems without programming practice. It is intended for technically oriented OS courses that emphasize on both theory and practice. The book s evolutional style, coupled with detailed source code and complete working sample systems, make it especially suitable for self-study. This book contains many new and original materials, especially on the design and use of parallel algorithms in SMP. It is also suitable for advanced study of operating systems. Undertaking this book project has proved to be quite a challenge. While preparing the book for publication, I have been blessed with the encouragements and helps from many people. I would like to take this opportunity to thank all of them. I am also very grateful to Springer International Publishing AG for allowing me to disclose the source code of this book to the public for free. Hopefully, this would help further developments of the MTX system and enhancements to this book in the future. Special thanks go to Cindy Wang for her continuing support and inspirations, which have made this book possible. Finally, I would like to thank my family for bearing with me with endless excuses of being too busy for so long. Source code included in the book can be downloaded from the author s website at: December, K. C. Wang v

5 About the Author K. C. Wang received the BSEE degree from National Taiwan University in 1960 and the Ph.D. degree in Electrical Engineering from Northwestern University, Evanston, Ill in He is currently a Professor in the School of Electrical Engineering and Computer Science at Washington State University. His academic interests are in Operating Systems, Distributed Systems and Parallel Computing. vii

6 Contents 1 Introduction About This Book Objective and Intended Audience Unique Features of This Book Book Contents Use This Book as OS Textbook MTX Systems for Testing and Evaluation... 8 References Foundations and Background Computer System Computer Hardware System CPU Operations System Mode and User Mode Memory and Memory Models Virtual Address and Physical Addresses I/O Devices and I/O Operations Operating Systems Major Functions of Operating Systems Program Development Program Development Steps Static vs. Dynamic Linking Executable File Format Contents of a.out File Program Execution Program Termination Function Call in C Run-Time Stack Usage Stack Frames Return From Function Call Long Jump ix

7 x Contents 2.5 Link C Program with Assembly Code Link Library Mailman s Algorithm Applications of Mailman s Algorithm EXT2 File System EXT2 File System Data Structures Traverse EXT2 File System Tree The BCC Cross-Compiling Package Running MTX From Login to Command Execution References Booting Operating Systems Booting Bootable Devices Booting from Various Devices Floppy Disk Booting Hard Disk Booting CD/DVD_ROM Booting USB Drive Booting Boot Linux with Initial Ramdisk Image Network Booting Develop Booter Programs Requirements of Booter Programs Online and Offline Booters Boot MTX from FD sectors Boot Linux zimage from FD Sectors Fast FD Loading Schemes Boot MTX Image from File System Boot Linux zimage from File System Hard Disk Booter I/O and Memory Access Functions Read Hard Disk LBA Sectors Boot Linux bzimage with Initial Ramdisk Image Hard Disk Partitions Find and Load Linux Kernel and Initrd Image Files Linux and MTX Hard Disk Booter Boot EXT4 Partitions Install HD Booter CD/DVD-ROM Booter Emulation CDROM Booting Emulation-FD Booting Emulation-HD Booting No-Emulation CDROM Booting No-Emulation Booting of MTX... 83

8 Contents xi No-Emulation Linux Booter Comparison with isolinux CDROM Booter USB Drive Booter MTX on USB Drive Linux on USB Drive Listing of Booter Programs References A Simple Operating System Kernel Multitasking The Process Concept Development of the MTX Kernel A Simple Multitasking Program Context Switching A Simple Multitasking System Dynamic Process Creation and Process Scheduling MTX4.2: Demonstration of Process Creation and Process Switch Stop and Continue a Process MTX4.3: Demonstration of Stop/Continue Operations Sleep and Wakeup Operations Sleep and Wakeup Usage Implementation of Sleep and Wakeup MTX4.4: Demonstration of Sleep/Wakeup Operations Process Termination Algorithm of kexit Process Family Tree Wait for Child Process Termination Change Process Scheduling Priority MTX4.5: Demonstration of Process Management MTX Development Environment References User Mode and System Calls Process Execution Image Kernel and User Modes Transition Between User and Kernel Modes System Calls System Call Interrupt Handler Enter and Exit Kernel Mode System Call Handler Function in C Return to User Mode User Mode Programs Develop User Program Programs Program Loader

9 xii Contents 5.5 Create Process with User Mode Image Initialize Process User Mode Stack Execution of User Mode Image MTX5.0: Demonstration of Simple System Calls Validation of System Call Parameters fork-exec in Unix/Linux Implementation of fork in MTX Implementation of exec in MTX MTX5.1: Demonstration of fork-exec in MTX Command Line Parameters Simple sh for Command Execution vfork Implementation of vfork in MTX MTX5.3: Demonstration of vfork in MTX Threads Principle of Threads Advantages of Threads Threads Operations Implementation of Threads in MTX Thread PROC Structure Threads Management Functions Thread Creation Thread Termination Thread Join Operation Threads Synchronization Threads Scheduling Concurrent Program Examples Using Threads MTX5.4: Demonstration of Threads in MTX References Process Synchronization Concurrent Processes Process Synchronization Problem Critical Region Implementation of Critical Region Implementation of Process Synchronization Mechanisms Sleep/Wakeup Semaphore Semaphore Operations for Multiprocessor Systems Applications of Semaphores Semaphore Lock Mutex Lock Resource Management Wait for Interrupts and Messages

10 Contents xiii Process Cooperation Producer-Consumer Problem Reader-Writer Problem Other Synchronization Mechanisms High-level Synchronization Constructs Condition Variables in Pthreads Monitors Deadlock Deadlock Definition Necessary Conditions for Deadlock Deadlock Prevention Deadlock Avoidance Deadlock Detection and Recovery Deadlock Prevention in Concurrent Programs Livelock Starvation Process Synchronization in MTX Pipes Pipe Programming in Unix/Linux Pipe and the Producer-Consumer Problem Implementation of Pipes in MTX MTX6.pipe: Demonstration of Pipes in MTX Message Passing Asynchronous Message Passing Synchronous Message Passing MTX6.message1: Demonstration of Synchronous Message Passing Server-Client Message Passing Multi-level Server-Client Message Passing MTX6.message2: Demonstration of Server-Client Message Passing References Memory Management Goals of Memory Management Virtual Address and Physical Address Variable Sized Partitions Overlay Swapping Segmentation Paging One-Level Paging Multi-Level Paging Other Paging Schemes

11 xiv Contents 7.8 Demand-Paging and Virtual Memory Demand-Paging Page Replacement Rules Virtual Memory Based File Mapping Distributed Shared Memory System General Demand-Paging Model Memory Management in Real-Mode MTX Free Memory List Memory Allocation Memory Deallocation Memory Compaction Swapping MTX7.1. Demonstration of Memory Management in MTX Memory Management in User Space Expand Heap Size by sbrk() Reduce Heap Size by rbrk() Memory Protection in MTX MTX7.2. Demonstration of Memory Management in User Space References Interrupt Processing and Process Scheduling Interrupts Interrupts Hardware Interrupt Processing TIMER and Timer Service PC s Timer Operation Implementation of Timer in MTX Process Switch by Time Slice Implementation of Timer Service in MTX Timer Service in MTX Process Scheduling Process Scheduling Terminology Goals, Policy and Algorithms of Process Scheduling Process Scheduling in Time-Sharing Operating Systems Process Scheduling in Unix Process Scheduling in Linux Process Scheduling in MTX MTX8.sch1: Time Slice MTX8.sch2: Fixed Process Priority and Time Slice MTX3.sch3: Dynamic Process Priority and Time Slice Comparison of MTX Scheduling Algorithms References

12 Contents xv 9 Signals and Signal Processing Signals and Interrupts Examples of Unix/Linux Signals Signal Processing in Unix (Bovet and Cesati 2005) Implementation of Signals in MTX Signal Types in MTX Signals in PROC Resource Signal Origins in MTX Deliver Signal to Process Change Signal Handler in Kernel Signal Processing in MTX Dispatch Signal Catcher for Execution in User Mode MTX9.Signal: Demonstration of Signal Processing in MTX Divide Trap Catcher Other Traps Interval Timer and Alarm Signal Catcher The Kill Command References Device Drivers Device Drivers Console Display Driver MTX10.tv: Demonstration of Timer and Display Driver Keyboard Driver The Keyboard Hardware Interrupt-Driven Driver Design A Simple Keyboard Driver Using Sleep/Wakeup A Simple Keyboard Driver Using Semaphore Interrupt Handlers Should Never Sleep or Block Raw Mode and Cooked Mode Foreground and Background Processes Improved KBD Driver MTX10.vtk: Demonstration of Keyboard Driver Parallel Printer Driver Parallel Port Interface A Simple Printer Driver MTX10.pr: Demonstration of Printer Driver Serial Port Driver RS232C Serial Protocol Serial Data Format PC Serial Ports Serial Terminals

13 xvi Contents Serial Port Driver Design The STTY Structure Serial Port Initialization Lower-Half Serial Port Driver Upper-Half Serial Port Driver MTX10.serial: Demonstration of Serial Port Driver Floppy Disk Driver FDC Controller FDC R/W Operation Sequence FD Driver Design Implications on I/O Buffers in MTX Demonstration of FD Driver IDE Hard Disk Driver IDE Interface IDE R/W Operation Sequence A Simple HD Driver Improved HD Driver HD Driver with I/O Queue MTX10.hd: Demonstration of IDE Driver ATAPI Driver ATAPI Protocol [ATAPI 2006; AT Attachment 1998] ATAPI Operation Sequence ATAPI Driver Code MTX10.hd.cd: Demonstration of ATAPI Driver References File System File Operation Levels File I/O Operations EXT2 File System Specification A Simple mkfs Program Implementation of EXT2 File System File System Organization Files in the MTX/FS directory Implementation of Level-1 FS Mkdir-creat-mknod Chdir-getcwd-stat Rmdir Link-unlink Symlink-readlink Other Level-1 Functions Implementation of Level-2 FS Open-close-lseek Read Regular Files Write Regular Files Read-Write Special Files Opendir-readdir

14 Contents xvii Implementation of Level-3 FS Mount-umount Implications of mount File Protection Real and Effective uid File Locking Extensions of MTX File System References Block Device I/O and Buffer Management Block Device I/O Buffers Unix I/O Buffer Management Algorithm New I/O Buffer Management Algorithms Simple PV-Algorithm Optimal PV-Algorithm Comparisons of I/O Buffer Management Algorithms References User Interface User Interface in MTX User Mode Programs User Mode Programs for MTX Startup The INIT Program The login Program The sh Program Other User Mode Programs Summary of RMTX RMTX Source File Tree Process Management in RMTX Device Drivers File System Install RMTX RMTX Startup Sequence Recompile the RMTX Kernel Future Development MTX in 32-bit Protected Mode Introduction to 32-bit Protected Mode Memory Management in Protected Mode Segmentation Segment Descriptors Segmentation Models Paging Page Directory and Page Tables Address Translation in Paging Translation Lookaside Buffer (TLB)

15 xviii Contents Full Paging Demand-Paging Interrupt and Exception Processing Exceptions in Protected Mode Interrupt Descriptor Table (IDT) Task State Segment (TSS) TSS and Process Interrupt Stack Process Kernel Stack in Protected Mode GCC in 32-bit Mode Inline Assembly Constant, Volatile and Packed Attributes GCC Linker and Executable File Format MTX Kernel in 32-bit Protected Mode Protected Mode MTX Kernel Startup Sequence Interrupt and Exception Processing Remap IRQ Vectors IDT and Exception Handlers The Ultimate Exception Handler in C Interrupt Vectors and Handlers MTX32.1: 32-bit Protected Mode MTX Using Segmentation MTX32.1 Kernel Startup Sequence GDT for Segmentation Process TSS and LDT Switch TSS and LDT during Task Switch Changes in MTX32.1 Kernel Summary on Segmentation Demonstration System of MTX MTX32.2: 32-bit Protected Mode MTX using Static Paging MTX32.2 Virtual Address Spaces MTX32.2 Kernel Page Directory and Page Tables MTX32.2 User Mode Page Directory and Page Tables MTX32.2 Kernel Startup Sequence Process Page Directory and Page Table Process Interrupt and Resume Stack Frames Switch TSS and pgdir during Task Switch Changes in MTX32.2 Kernel Demonstration System of MTX PMTX: 32-bit Protected Mode MTX Using Dynamic Paging PMTX Virtual Address Spaces PMTX Kernel Startup Sequence PMTX Kernel Virtual Address Mapping PMTX Kernel Page Directory and Page Tables Manage Page Frames

16 Contents xix Changes in PMTX Kernel Page Faults and Demand-Paging Page Replacement Paging and I/O Buffer Management PMTX Demonstration System Extensions of 32-bit Protected Mode MTX bit Operating Systems x86-64 CPUs Function Call Convention in 64-bit Mode Summary References Symmetric Multiprocessing MTX Multiprocessor Systems SMP-Compliant Systems SMP System Startup Sequence SMP Data Structures Configure IOAPIC Configure Local APICs Send IPIs to Activate APs Trampoline Code of APs From UP to SMP Giant Lock Stage Coarse Grain Locking Stage Fine Grain Locking Stage SMP_PMTX in 32-bit Protected Mode Running PROCs and CPU Structures Spinlocks and Semaphores Use Sleep/Wakeup in SMP Protect Kernel Data Structures Adapt UP Algorithms for SMP Adapt UP Process Scheduling Algorithm for SMP Adapt UP Pipe Algorithm for SMP Adapt UP I/O Buffer Management Algorithm for SMP Device Driver and Interrupt Handlers for SMP SMP_PMTX Kernel Organization Bootable SMP_PMTX Image SMP_PMTX Kernel Startup Sequence Enter 32-bit Protected Mode Set up Initial Paging and GDTs Find Number of CPUs in SMP Initialize CPU Structures

17 xx Contents CPU Kernel Mode Page Table Load GDT and Enable Paging Initialize SMP Kernel Configure IOAPIC to Route Interrupts Configure APIC and APIC timer Start up APs APs Execute Startup Code APstart(cpuid) SMP_PMTX Demonstration System SMP_MTX using Parallel Algorithms Parallel Algorithms for Process Scheduling Parallel Algorithms for Resource Management Manage PROC Structures by Parallel Algorithm Manage In-memory Inodes by Parallel Algorithm Manage Page Frames by Parallel Algorithm Manage Other Resources by Parallel Algorithms Parallel Pipe Algorithm for SMP Parallel I/O Buffer Management Algorithms Unix MP Buffer Management Algorithm New Parallel I/O Buffer Management Algorithm for SMP I/O Buffer Management in SMP_MTX Parallel fork-exec Algorithms Parallel Algorithms for File System Functions Parallel mkdir-rmdir Algorithms Performance of Parallel Algorithms SMP_MTX Demonstration System SMP and Real-time Operating Systems SMP_MTX for Real-time Processing SMP in 16-bit Real Mode Real-mode SMP_RMTX startup sequence SMP_RMTX Kernel SMP_RMTX Demonstration System Limitations and Future Work Summary of PMTX and SMP_MTX PMTX and SMP_MTX Source File Tree PMTX and SMP_MTX Kernel Files Process Management in PMTX and SMP_MTX Process Scheduling in PMTX and SMP Device Drivers File System

18 Contents xxi PMTX and SMP Startup and login PMTX Startup Sequence SMP_MTX Startup Sequence User Interface and System Call Functions Recompile PMTX and SMP_MTX References Hybrid Operating Systems Monolithic Kernel Microkernel Comparison of Monolithic and Microkernel Based OS Hybrid Operating Systems References Appendix Index

Embedded and Real-Time Operating Systems

Embedded and Real-Time Operating Systems Embedded and Real-Time Operating Systems K.C. Wang Embedded and Real-Time Operating Systems 123 K.C. Wang School of Electrical Engineering and Computer Science Washington State University Pullman, WA USA

More information

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition FPGA Design Philip Andrew Simpson FPGA Design Best Practices for Team-based Reuse Second Edition Philip Andrew Simpson San Jose, CA, USA ISBN 978-3-319-17923-0 DOI 10.1007/978-3-319-17924-7 ISBN 978-3-319-17924-7

More information

To Everyone... iii To Educators... v To Students... vi Acknowledgments... vii Final Words... ix References... x. 1 ADialogueontheBook 1

To Everyone... iii To Educators... v To Students... vi Acknowledgments... vii Final Words... ix References... x. 1 ADialogueontheBook 1 Contents To Everyone.............................. iii To Educators.............................. v To Students............................... vi Acknowledgments........................... vii Final Words..............................

More information

Failure-Modes-Based Software Reading

Failure-Modes-Based Software Reading SPRINGER BRIEFS IN COMPUTER SCIENCE Yang-Ming Zhu Failure-Modes-Based Software Reading SpringerBriefs in Computer Science More information about this series at http://www.springer.com/series/10028 Yang-Ming

More information

Low Level X Window Programming

Low Level X Window Programming Low Level X Window Programming Ross J. Maloney Low Level X Window Programming An Introduction by Examples 123 Dr. Ross J. Maloney Yenolam Corporation Booragoon, WA Australia ISBN 978-3-319-74249-6 ISBN

More information

UNIT I Linux Utilities

UNIT I Linux Utilities UNIT I Linux Utilities 1. a) How does Linux differ from Unix? Discuss the features of Linux. 5M b) Explain various text processing utilities, with a suitable example for each. 5M 2. a) Explain briefly

More information

George Grätzer. Practical L A TEX

George Grätzer. Practical L A TEX Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN

More information

CSC 4320 Test 1 Spring 2017

CSC 4320 Test 1 Spring 2017 CSC 4320 Test 1 Spring 2017 Name 1. What are the three main purposes of an operating system? 2. Which of the following instructions should be privileged? a. Set value of timer. b. Read the clock. c. Clear

More information

Research on Industrial Security Theory

Research on Industrial Security Theory Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3

More information

Introduction. Yolanda Becerra Fontal Juan José Costa Prats

Introduction. Yolanda Becerra Fontal Juan José Costa Prats Introduction Yolanda Becerra Fontal Juan José Costa Prats Facultat d'informàtica de Barcelona (FIB) Universitat Politècnica de Catalunya (UPC) BarcelonaTech 2015-2016 QT Content Previous concepts Architecture

More information

Timers 1 / 46. Jiffies. Potent and Evil Magic

Timers 1 / 46. Jiffies. Potent and Evil Magic Timers 1 / 46 Jiffies Each timer tick, a variable called jiffies is incremented It is thus (roughly) the number of HZ since system boot A 32-bit counter incremented at 1000 Hz wraps around in about 50

More information

Linux Kernel Architecture

Linux Kernel Architecture Professional Linux Kernel Architecture Wolf gang Mauerer WILEY Wiley Publishing, Inc. Introduction xxvii Chapter 1: Introduction and Overview 1 Tasks of the Kernel v -- 2 Implementation Strategies 3 Elements

More information

CIS 21 Final Study Guide. Final covers ch. 1-20, except for 17. Need to know:

CIS 21 Final Study Guide. Final covers ch. 1-20, except for 17. Need to know: CIS 21 Final Study Guide Final covers ch. 1-20, except for 17. Need to know: I. Amdahl's Law II. Moore s Law III. Processes and Threading A. What is a process? B. What is a thread? C. Modes (kernel mode,

More information

Processes and Non-Preemptive Scheduling. Otto J. Anshus

Processes and Non-Preemptive Scheduling. Otto J. Anshus Processes and Non-Preemptive Scheduling Otto J. Anshus Threads Processes Processes Kernel An aside on concurrency Timing and sequence of events are key concurrency issues We will study classical OS concurrency

More information

Linux Driver and Embedded Developer

Linux Driver and Embedded Developer Linux Driver and Embedded Developer Course Highlights The flagship training program from Veda Solutions, successfully being conducted from the past 10 years A comprehensive expert level course covering

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin (Sherman) Shen Borko Furht V.S. Subrahmanian Martial Hebert

More information

(MCQZ-CS604 Operating Systems)

(MCQZ-CS604 Operating Systems) command to resume the execution of a suspended job in the foreground fg (Page 68) bg jobs kill commands in Linux is used to copy file is cp (Page 30) mv mkdir The process id returned to the child process

More information

CPSC/ECE 3220 Fall 2017 Exam Give the definition (note: not the roles) for an operating system as stated in the textbook. (2 pts.

CPSC/ECE 3220 Fall 2017 Exam Give the definition (note: not the roles) for an operating system as stated in the textbook. (2 pts. CPSC/ECE 3220 Fall 2017 Exam 1 Name: 1. Give the definition (note: not the roles) for an operating system as stated in the textbook. (2 pts.) Referee / Illusionist / Glue. Circle only one of R, I, or G.

More information

Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering)

Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering) A. Multiple Choice Questions (60 questions) Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering) Unit-I 1. What is operating system? a) collection of programs that manages hardware

More information

Application Programming

Application Programming Multicore Application Programming For Windows, Linux, and Oracle Solaris Darryl Gove AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris

More information

Programming with POSIX Threads

Programming with POSIX Threads Programming with POSIX Threads David R. Butenhof :vaddison-wesley Boston San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sidney Tokyo Singapore Mexico City Contents List of

More information

Operating System Review

Operating System Review COP 4225 Advanced Unix Programming Operating System Review Chi Zhang czhang@cs.fiu.edu 1 About the Course Prerequisite: COP 4610 Concepts and Principles Programming System Calls Advanced Topics Internals,

More information

UNIT I Linux Utilities and Working with Bash

UNIT I Linux Utilities and Working with Bash Subject with Code :(16MC814)Course& Branch: MCA Year & Sem: II-MCA& I-Sem UNIT I Linux Utilities and Working with Bash 1. a) How does Linux differ from Unix? Discuss the features of Linux.6M b) Explain

More information

MARUTHI SCHOOL OF BANKING (MSB)

MARUTHI SCHOOL OF BANKING (MSB) MARUTHI SCHOOL OF BANKING (MSB) SO IT - OPERATING SYSTEM(2017) 1. is mainly responsible for allocating the resources as per process requirement? 1.RAM 2.Compiler 3.Operating Systems 4.Software 2.Which

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 Operating Systems Overview Chapter 2 Operating System A program that controls the execution of application programs An interface between the user and hardware Masks the details of the hardware Layers and

More information

Fundamentals of Operating Systems. Fifth Edition

Fundamentals of Operating Systems. Fifth Edition Fundamentals of Operating Systems Fifth Edition Fundamentals of Operating Systems A.M. Lister University of Queensland R. D. Eager University of Kent at Canterbury Fifth Edition Springer Science+Business

More information

An Implementation Of Multiprocessor Linux

An Implementation Of Multiprocessor Linux An Implementation Of Multiprocessor Linux This document describes the implementation of a simple SMP Linux kernel extension and how to use this to develop SMP Linux kernels for architectures other than

More information

Mid Term from Feb-2005 to Nov 2012 CS604- Operating System

Mid Term from Feb-2005 to Nov 2012 CS604- Operating System Mid Term from Feb-2005 to Nov 2012 CS604- Operating System Latest Solved from Mid term Papers Resource Person Hina 1-The problem with priority scheduling algorithm is. Deadlock Starvation (Page# 84) Aging

More information

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK Computer Communications and Networks Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK The Computer Communications and Networks series is a range

More information

OPERATING SYSTEMS OVERVIEW. Operating Systems 2015 Spring by Euiseong Seo

OPERATING SYSTEMS OVERVIEW. Operating Systems 2015 Spring by Euiseong Seo OPERATING SYSTEMS OVERVIEW Operating Systems 2015 Spring by Euiseong Seo What is an Operating System? A program that acts as an intermediary between a user of a computer and computer hardware Operating

More information

Mobile Phone Security and Forensics

Mobile Phone Security and Forensics Mobile Phone Security and Forensics Iosif I. Androulidakis Mobile Phone Security and Forensics A Practical Approach Second Edition Iosif I. Androulidakis Pedini Ioannina Greece ISBN 978-3-319-29741-5

More information

Processes and Threads

Processes and Threads COS 318: Operating Systems Processes and Threads Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318 Today s Topics u Concurrency

More information

Wireless Networks. Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada

Wireless Networks. Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada Wireless Networks Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada More information about this series at http://www.springer.com/series/14180 Sachin Shetty Xuebiao Yuchi

More information

CS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University

CS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University CS 571 Operating Systems Midterm Review Angelos Stavrou, George Mason University Class Midterm: Grading 2 Grading Midterm: 25% Theory Part 60% (1h 30m) Programming Part 40% (1h) Theory Part (Closed Books):

More information

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR / ODD SEMESTER

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR / ODD SEMESTER KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR 2011-2012 / ODD SEMESTER Question Bank Subject Code/Name: CS1005-Unix Internals Year / Sem: IV / VII UNIT I- GENERAL

More information

Software Development & Education Center

Software Development & Education Center Software Development & Education Center Embedded Linux & RTOS With ARM 9 µc Embedded Linux and RTOS with ARM9 µc Introduction The course is designed for those who want to pursue Linux based Embedded Systems.

More information

Microkernels. Overview. Required reading: Improving IPC by kernel design

Microkernels. Overview. Required reading: Improving IPC by kernel design Microkernels Required reading: Improving IPC by kernel design Overview This lecture looks at the microkernel organization. In a microkernel, services that a monolithic kernel implements in the kernel are

More information

3.1 Introduction. Computers perform operations concurrently

3.1 Introduction. Computers perform operations concurrently PROCESS CONCEPTS 1 3.1 Introduction Computers perform operations concurrently For example, compiling a program, sending a file to a printer, rendering a Web page, playing music and receiving e-mail Processes

More information

Guide to OSI and TCP/IP Models

Guide to OSI and TCP/IP Models SPRINGER BRIEFS IN COMPUTER SCIENCE Mohammed M. Alani Guide to OSI and TCP/IP Models SpringerBriefs in Computer Science Series editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi

More information

Operating Systems. Computer Science & Information Technology (CS) Rank under AIR 100

Operating Systems. Computer Science & Information Technology (CS) Rank under AIR 100 GATE- 2016-17 Postal Correspondence 1 Operating Systems Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory, Practice Set Key concepts,

More information

Multidimensional Queueing Models in Telecommunication Networks

Multidimensional Queueing Models in Telecommunication Networks Multidimensional Queueing Models in Telecommunication Networks ThiS is a FM Blank Page Agassi Melikov Leonid Ponomarenko Multidimensional Queueing Models in Telecommunication Networks Agassi Melikov Department

More information

Essential Angular for ASP.NET Core MVC

Essential Angular for ASP.NET Core MVC Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3

More information

Embedded Linux Architecture

Embedded Linux Architecture Embedded Linux Architecture Types of Operating Systems Real-Time Executive Monolithic Kernel Microkernel Real-Time Executive For MMU-less processors The entire address space is flat or linear with no memory

More information

Department of Computer Science and Technology, UTU 2014

Department of Computer Science and Technology, UTU 2014 Short Questions 060010601 Unix Internals Unit 1 : Introduction and Overview of UNIX 1. What were the goals of Multics System? 2. List out the levels in which UNIX system architecture is divided. 3. Which

More information

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve?

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve? What is an Operating System? A Whirlwind Tour of Operating Systems Trusted software interposed between the hardware and application/utilities to improve efficiency and usability Most computing systems

More information

Main Points of the Computer Organization and System Software Module

Main Points of the Computer Organization and System Software Module Main Points of the Computer Organization and System Software Module You can find below the topics we have covered during the COSS module. Reading the relevant parts of the textbooks is essential for a

More information

Stefan Waldmann. Topology. An Introduction

Stefan Waldmann. Topology. An Introduction Topology Stefan Waldmann Topology An Introduction 123 Stefan Waldmann Julius Maximilian University of Würzburg Würzburg Germany ISBN 978-3-319-09679-7 ISBN 978-3-319-09680-3 (ebook) DOI 10.1007/978-3-319-09680-3

More information

Introduction to Computer Networking

Introduction to Computer Networking Introduction to Computer Networking Thomas G. Robertazzi Introduction to Computer Networking 123 Thomas G. Robertazzi Department of Electrical and Computer Engineering Stony Brook University Stony Brook,

More information

Professional Multicore Programming. Design and Implementation for C++ Developers

Professional Multicore Programming. Design and Implementation for C++ Developers Professional Multicore Programming Design and Implementation for C++ Developers Cameron Hughes Tracey Hughes WILEY Wiley Publishing, Inc. Introduction xxi Chapter 1: The New Architecture 1 What Is a Multicore?

More information

Contents. 1.1 What Operating Systems Do Computer-System Organization Computer-System Architecture 12. Operating-System Structures

Contents. 1.1 What Operating Systems Do Computer-System Organization Computer-System Architecture 12. Operating-System Structures Contents PART ONE Chapter 1 Introduction OVERVIEW 1.1 What Operating Systems Do 3 1.2 Computer-System Organization 6 1.3 Computer-System Architecture 12 1.4 Operating-System Structure 18 1.5 Operating-System

More information

QUESTION BANK UNIT I

QUESTION BANK UNIT I QUESTION BANK Subject Name: Operating Systems UNIT I 1) Differentiate between tightly coupled systems and loosely coupled systems. 2) Define OS 3) What are the differences between Batch OS and Multiprogramming?

More information

Processes. Sanzheng Qiao. December, Department of Computing and Software

Processes. Sanzheng Qiao. December, Department of Computing and Software Processes Sanzheng Qiao Department of Computing and Software December, 2012 What is a process? The notion of process is an abstraction. It has been given many definitions. Program in execution is the most

More information

CSI3131 Final Exam Review

CSI3131 Final Exam Review CSI3131 Final Exam Review Final Exam: When: April 24, 2015 2:00 PM Where: SMD 425 File Systems I/O Hard Drive Virtual Memory Swap Memory Storage and I/O Introduction CSI3131 Topics Process Computing Systems

More information

Functional Programming in R

Functional Programming in R Functional Programming in R Advanced Statistical Programming for Data Science, Analysis and Finance Thomas Mailund Functional Programming in R: Advanced Statistical Programming for Data Science, Analysis

More information

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. OS and Computer Architecture Last class: OS and Architecture OS and Computer Architecture OS Service Protection Interrupts System Calls IO Scheduling Synchronization Virtual Memory Hardware Support Kernel/User Mode Protected Instructions

More information

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components Last class: OS and Architecture Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation

More information

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management Last class: OS and Architecture OS and Computer Architecture OS Service Protection Interrupts System Calls IO Scheduling Synchronization Virtual Memory Hardware Support Kernel/User Mode Protected Instructions

More information

Lecture 15: I/O Devices & Drivers

Lecture 15: I/O Devices & Drivers CS 422/522 Design & Implementation of Operating Systems Lecture 15: I/O Devices & Drivers Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions

More information

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017 ECE 550D Fundamentals of Computer Systems and Engineering Fall 2017 The Operating System (OS) Prof. John Board Duke University Slides are derived from work by Profs. Tyler Bletsch and Andrew Hilton (Duke)

More information

PROCESS CONTROL: PROCESS CREATION: UNIT-VI PROCESS CONTROL III-II R

PROCESS CONTROL: PROCESS CREATION: UNIT-VI PROCESS CONTROL III-II R PROCESS CONTROL: This will describe the use and implementation of the system calls that control the process context. The fork system call creates a new process, the exit call terminates process execution,

More information

Kernel Internals. Course Duration: 5 days. Pre-Requisites : Course Objective: Course Outline

Kernel Internals. Course Duration: 5 days. Pre-Requisites : Course Objective: Course Outline Course Duration: 5 days Pre-Requisites : Good C programming skills. Required knowledge Linux as a User Course Objective: To get Kernel and User Space of Linux and related programming Linux Advance Programming

More information

Operating Systems. II. Processes

Operating Systems. II. Processes Operating Systems II. Processes Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ @OS Eurecom Outline Concepts Definitions and basic concepts Process

More information

Architectural Support for OS

Architectural Support for OS Architectural Support for OS Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong (jinkyu@skku.edu)

More information

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian Pro MERN Stack Full Stack Web App Development with Mongo, Express, React, and Node Vasan Subramanian Pro MERN Stack Vasan Subramanian Bangalore, Karnataka, India ISBN-13 (pbk): 978-1-4842-2652-0 ISBN-13

More information

EXAMS CS604- OPERATING SYSTEMS

EXAMS CS604- OPERATING SYSTEMS MUHAMMAD FAISAL MIT 4 th Semester Al-Barq Campus (VGJW01) Gujranwala faisalgrw123@gmail.com Solved Reference MCQ s For Final TERM EXAMS CS604- OPERATING SYSTEMS Question No: 1 ( Marks: 1 ) - Please choose

More information

Sistemas Operacionais I. Valeria Menezes Bastos

Sistemas Operacionais I. Valeria Menezes Bastos Sistemas Operacionais I Valeria Menezes Bastos Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Summary Basic Elements Evolution

More information

Iterative Design of Teaching-Learning Sequences

Iterative Design of Teaching-Learning Sequences Iterative Design of Teaching-Learning Sequences Dimitris Psillos Petros Kariotoglou Editors Iterative Design of Teaching- Learning Sequences Introducing the Science of Materials in European Schools Editors

More information

ELEC 377 Operating Systems. Week 1 Class 2

ELEC 377 Operating Systems. Week 1 Class 2 Operating Systems Week 1 Class 2 Labs vs. Assignments The only work to turn in are the labs. In some of the handouts I refer to the labs as assignments. There are no assignments separate from the labs.

More information

Deadlock. Concurrency: Deadlock and Starvation. Reusable Resources

Deadlock. Concurrency: Deadlock and Starvation. Reusable Resources Concurrency: Deadlock and Starvation Chapter 6 Deadlock Permanent blocking of a set of processes that either compete for system resources or communicate with each other No efficient solution Involve conflicting

More information

Exam Guide COMPSCI 386

Exam Guide COMPSCI 386 FOUNDATIONS We discussed in broad terms the three primary responsibilities of an operating system. Describe each. What is a process? What is a thread? What parts of a process are shared by threads? What

More information

Chap 4, 5: Process. Dongkun Shin, SKKU

Chap 4, 5: Process. Dongkun Shin, SKKU Chap 4, 5: Process 1 Process Concept Job A bundle of program and data to be executed An entity before submission for execution Process (= running program) An entity that is registered to kernel for execution

More information

for Operating Systems Computer Systems Laboratory Sungkyunkwan University

for Operating Systems Computer Systems Laboratory Sungkyunkwan University Architectural t Support for Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics Basic computer system architecture

More information

Process Description and Control

Process Description and Control Process Description and Control 1 Process:the concept Process = a program in execution Example processes: OS kernel OS shell Program executing after compilation www-browser Process management by OS : Allocate

More information

9/19/18. COS 318: Operating Systems. Overview. Important Times. Hardware of A Typical Computer. Today CPU. I/O bus. Network

9/19/18. COS 318: Operating Systems. Overview. Important Times. Hardware of A Typical Computer. Today CPU. I/O bus. Network Important Times COS 318: Operating Systems Overview Jaswinder Pal Singh and a Fabulous Course Staff Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) u Precepts:

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING AND TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI

SHRI ANGALAMMAN COLLEGE OF ENGINEERING AND TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI SHRI ANGALAMMAN COLLEGE OF ENGINEERING AND TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI 621 105 DEPARTMENT OF COMPUTER SCIENCE AND ENGG. Cs 1005- UNIX INTERNALS UNIT

More information

CLASS: II YEAR / IV SEMESTER CSE SUBJECT CODE AND NAME: CS6401 OPERATING SYSTEMS UNIT I OPERATING SYSTEMS OVERVIEW

CLASS: II YEAR / IV SEMESTER CSE SUBJECT CODE AND NAME: CS6401 OPERATING SYSTEMS UNIT I OPERATING SYSTEMS OVERVIEW CLASS: II YEAR / IV SEMESTER CSE SUBJECT CODE AND NAME: CS6401 OPERATING SYSTEMS SYLLABUS UNIT I OPERATING SYSTEMS OVERVIEW Computer System Overview-Basic Elements, Instruction Execution, Interrupts, Memory

More information

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto Ricardo Rocha Department of Computer Science Faculty of Sciences University of Porto Slides based on the book Operating System Concepts, 9th Edition, Abraham Silberschatz, Peter B. Galvin and Greg Gagne,

More information

Java Quick Syntax Reference. Second Edition. Mikael Olsson

Java Quick Syntax Reference. Second Edition. Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):

More information

Advanced Programming in the UNIX Environment W. Richard Stevens

Advanced Programming in the UNIX Environment W. Richard Stevens Advanced Programming in the UNIX Environment W. Richard Stevens ADDISON-WESLEY PUBLISHING COMPANY Reading, Massachusetts Menlo Park, California New York Don Mills, Ontario Wokingham, England Amsterdam

More information

Architectural Support. Processes. OS Structure. Threads. Scheduling. CSE 451: Operating Systems Spring Module 28 Course Review

Architectural Support. Processes. OS Structure. Threads. Scheduling. CSE 451: Operating Systems Spring Module 28 Course Review Architectural Support CSE 451: Operating Systems Spring 2012 Module 28 Course Review Ed Lazowska lazowska@cs.washington.edu Allen Center 570 Privileged instructions what are they? how does the CPU know

More information

Operating Systems Comprehensive Exam. Spring Student ID # 3/16/2006

Operating Systems Comprehensive Exam. Spring Student ID # 3/16/2006 Operating Systems Comprehensive Exam Spring 2006 Student ID # 3/16/2006 You must complete all of part I (60%) You must complete two of the three sections in part II (20% each) In Part I, circle or select

More information

- Knowledge of basic computer architecture and organization, ECE 445

- Knowledge of basic computer architecture and organization, ECE 445 ECE 446: Device Driver Development Fall 2014 Wednesdays 7:20-10 PM Office hours: Wednesdays 6:15-7:15 PM or by appointment, Adjunct office Engineering Building room 3707/3708 Last updated: 8/24/14 Instructor:

More information

Processes. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Processes. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Processes Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu OS Internals User space shell ls trap shell ps Kernel space File System Management I/O

More information

3. Process Management in xv6

3. Process Management in xv6 Lecture Notes for CS347: Operating Systems Mythili Vutukuru, Department of Computer Science and Engineering, IIT Bombay 3. Process Management in xv6 We begin understanding xv6 process management by looking

More information

System Call. Preview. System Call. System Call. System Call 9/7/2018

System Call. Preview. System Call. System Call. System Call 9/7/2018 Preview Operating System Structure Monolithic Layered System Microkernel Virtual Machine Process Management Process Models Process Creation Process Termination Process State Process Implementation Operating

More information

CSC Operating Systems Spring Lecture - XII Midterm Review. Tevfik Ko!ar. Louisiana State University. March 4 th, 2008.

CSC Operating Systems Spring Lecture - XII Midterm Review. Tevfik Ko!ar. Louisiana State University. March 4 th, 2008. CSC 4103 - Operating Systems Spring 2008 Lecture - XII Midterm Review Tevfik Ko!ar Louisiana State University March 4 th, 2008 1 I/O Structure After I/O starts, control returns to user program only upon

More information

Operating Systemss and Multicore Programming (1DT089)

Operating Systemss and Multicore Programming (1DT089) Operating Systemss and Multicore Programming (1DT089) Introduction to Operating Systemss (Chapter 1) Wednesday january 23 Uppsala University 2013 karl.marklund@it.uu.se Chapter 1: Introduction Chapter

More information

CSC 453 Operating Systems

CSC 453 Operating Systems CSC 453 Operating Systems Lecture 3: Operating-System Structures Operating System Components Operating systems are large and complex - the only way to manage such a project is to divide it into smaller

More information

CSL373/CSL633 Major Exam Solutions Operating Systems Sem II, May 6, 2013 Answer all 8 questions Max. Marks: 56

CSL373/CSL633 Major Exam Solutions Operating Systems Sem II, May 6, 2013 Answer all 8 questions Max. Marks: 56 CSL373/CSL633 Major Exam Solutions Operating Systems Sem II, 2012 13 May 6, 2013 Answer all 8 questions Max. Marks: 56 1. True or False. Give reasons and/or brief explanation. No marks for incomplete/wrong

More information

PROCESSES & THREADS. Charles Abzug, Ph.D. Department of Computer Science James Madison University Harrisonburg, VA Charles Abzug

PROCESSES & THREADS. Charles Abzug, Ph.D. Department of Computer Science James Madison University Harrisonburg, VA Charles Abzug PROCESSES & THREADS Charles Abzug, Ph.D. Department of Computer Science James Madison University Harrisonburg, VA 22807 Voice Phone: 540-568-8746; Cell Phone: 443-956-9424 E-mail: abzugcx@jmu.edu OR CharlesAbzug@ACM.org

More information

English for Academic Research. Series editor Adrian Wallwork Pisa Italy

English for Academic Research. Series editor Adrian Wallwork Pisa Italy English for Academic Research Series editor Adrian Wallwork Pisa Italy This series aims to help non-native, English-speaking researchers communicate in English. The books in this series are designed like

More information

COS 318: Operating Systems

COS 318: Operating Systems COS 318: Operating Systems Overview Kai Li Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) Important Times Lectures 9/20 Lecture is here Other lectures in

More information

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University Architectural Support for Operating Systems Jinkyu Jeong ( jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics Basic services of OS Basic computer system

More information

Techno India Batanagar Department of Computer Science & Engineering. Model Questions. Multiple Choice Questions:

Techno India Batanagar Department of Computer Science & Engineering. Model Questions. Multiple Choice Questions: Techno India Batanagar Department of Computer Science & Engineering Model Questions Subject Name: Operating System Multiple Choice Questions: Subject Code: CS603 1) Shell is the exclusive feature of a)

More information

The Kernel Abstraction. Chapter 2 OSPP Part I

The Kernel Abstraction. Chapter 2 OSPP Part I The Kernel Abstraction Chapter 2 OSPP Part I Kernel The software component that controls the hardware directly, and implements the core privileged OS functions. Modern hardware has features that allow

More information

Table of Contents. Preface... xi

Table of Contents. Preface... xi ,ldr3toc.fm.4587 Page v Thursday, January 20, 2005 9:30 AM Table of Contents Preface................................................................. xi 1. An Introduction to Device Drivers.....................................

More information

B. V. Patel Institute of Business Management, Computer &Information Technology, UTU

B. V. Patel Institute of Business Management, Computer &Information Technology, UTU BCA-3 rd Semester 030010304-Fundamentals Of Operating Systems Unit: 1 Introduction Short Answer Questions : 1. State two ways of process communication. 2. State any two uses of operating system according

More information

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey CSC400 - Operating Systems 3. Process Concepts J. Sumey Overview Concurrency Processes & Process States Process Accounting Interrupts & Interrupt Processing Interprocess Communication CSC400 - Process

More information

CSE 4/521 Introduction to Operating Systems. Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018

CSE 4/521 Introduction to Operating Systems. Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018 CSE 4/521 Introduction to Operating Systems Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018 Overview Objective: To explore the principles upon which

More information

PROCESS STATES AND TRANSITIONS:

PROCESS STATES AND TRANSITIONS: The kernel contains a process table with an entry that describes the state of every active process in the system. The u area contains additional information that controls the operation of a process. The

More information