ebook img

Performance Modeling of Operating Systems Using Object-Oriented Simulation: A Practical Introduction PDF

280 Pages·2002·3.38 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Performance Modeling of Operating Systems Using Object-Oriented Simulation: A Practical Introduction

Performance Modeling of Operating Systems Using Ob ject-O r iented Simulation A Practical Introduction PLENUM SERIES IN COMPUTER SCIENCE Series Editor: Rami G. MeIhem University of Pittsburgh Pittsburgh, Pennsylvania FUNDAMENTALS OF X PROGRAMMING Graphical User Interfaces and Beyond Theo Pavlidis INTRODUCTION TO PARALLEL PROCESSING Algorithms and Architectures Behrooz Parhami PERFORMANCE MODELING OF OPERATING SYSTEMS USING OBJECT-ORIENTED SIMULATION A Practical Introduction José M. Garrido Performance Modeling of Operating Systems Using Object-Oriented Simulation A Practical Introduction José M. Garrido Department of Computer Science and Information Systems Kennesaw State University Kennesaw, Georgia Kluwer Academic Publishers New York • Boston • Dordrecht • London • Moscow CD-ROM available only in print version. eBook ISBN: 0-306-46976-6 Print ISBN: 0-306-46459-4 ©2002 Kluwer Academic Publishers New York, Boston, Dordrecht, London, Moscow Print ©2000 Kluwer Academic / Plenum Publishers New York All rights reserved No part of this eBook may be reproduced or transmitted in any form or by any means, electronic, mechanical, recording, or otherwise, without written consent from the Publisher Created in the United States of America Visit Kluwer Online at: http://kluweronline.com and Kluwer's eBookstore at: http://ebooks.kluweronline.com PREFACE This book introduces the fundamental concepts and practical simulation tech- niques for modeling different aspects of operating systems to study their gen- eral behavior and their performance. The approaches applied are object- oriented modeling and process interaction approach to discrete-event simula- tion. The book depends on the basic modeling concepts and is more specialized than my previous book: Practical Process Simulation with Object-Oriented Techniques and C++, published by Artech House, Boston 1999. For a more detailed description see the Web location: http://science.kennesaw.edu/~jgarrido/mybook,html. Most other books on performance modeling use only analytical approaches, and very few apply these concepts to the study of operating systems. Thus, the unique feature of the book is that it concentrates on design aspects of operating systems using practical simulation techniques. In addition, the book illustrates the dynamic behavior of different aspects of operating systems using the various simulation models, with a general hands-on approach. This book is not a complete theoretic reference on performance measures of operating systems, or a complete reference on simulation. It only considers the practical aspects of object-oriented modeling and the construction of programs that implement the simulation models (in C++ and PsimL). It only includes the necessary basic theory of probability to support the construction of the simulation models of operating systems. Most other books include a complete treatment on performance issues and on operating system theory. In this respect, this book is a supplemental book to operating systems textbooks and concentrates on the practical and basic aspects of performance modeling with object-oriented simulation. For every topic discussed, a complete case study is presented and explained with the corresponding model implemented in C++ and in PsimL. The sim- ulation principles that are applied are discussed in detail in my first book (as mentioned above). The simulation software needed, which consists of the Psim library (a set of C++ classes), the PsimL translator, and the files with V vi Preface the various simulation models, is included in the accompanying CD. The most recent versions of the Psim software and the files with the simulation models are also available from the Web site: http://science.kennesaw.edu/~jgarrido/psim.html. The book was originally conceived as a teaching approach and the sup- porting software as a set of teaching tools. It is aimed at college students in computer science, electrical engineering, and systems engineering. It is also aimed at practitioners dealing with any type of modeling for solving or study- ing these types of systems, (systems analysts, network engineers, software engineers, scientists using mathematical modeling, and instructors). The important features of the book and software and the specific benefits that readers can expect to acquire are: • The presentation ofpractical aspects of performance measures ofoperat- ing systems using object-oriented modeling and the process interaction approach to Simulation. Performance and Functional models are intro- duced. • The use of the process interaction approach to modeling and simulation with C++ and the PsimL simulation language. • When used as a teaching tool, the book facilitates the understanding of large and complex systems to students, and gives them insight of how to approach a solution to these problems. • One ofthe benefits is the ease of modeling complex concepts and prob- lems, for example, systems dealing with concurrency. • The practical use of object-oriented concepts to solve real problems. • When using the book in training, the solution of practical problems is carried out from the first day. • The use ofthe simulation software as part ofa larger integrated software development effort. • It is a good practical source of material to understand the complexities of modeling and simulation, before deciding to acquire a more compre- hensive and expensive simulation system. As a final remark, several versions of the most recent implementations of all the models presented are available on the Psim Web page shown above. The latest supporting software is also available on that Web page. The various hardware platforms supported are: PCs, Sun Sparc, DEC Alpha, and SGI. The operating systems supported are: Windows ( 95, 98 and NT) and UNIX (Linux, Solaris, OSF1, and IRIX). I acknowledge partial support from The Yamacraw Initiative of the State of Georgia for a course release and for the acquisition of some additional Preface vii resources that I needed. I have had continuous support and encouragement from the chair of the Computer Science and Information Systems (CSIS) department, Dr. Martha Myers, and from the Dean of the College of Science and Mathematics, Dr. Larry Peterson. I ani also thankful to my colleagues in our Yamacraw group, specially Ken Hoganson and Britt Williams, who read part of the material and indicated a few errors. As with my first book, some of my students helped me in identifying bugs in the simulation models. My ultimate gratitude and dedication goes to my wife Gisela again, who has helped me in most of the work for this project and who continues to insist that I need to improve my writing. J.M. GARRIDO Kennesaw, GA CONTENTS 1 Overview ofSystem and Performance Modeling 1 1.1 Introduction 1 1.2 Systems, Models, and Modeling 1 1.2.1 Solutions of Mathematical Models 3 1.2.2 Stochastic Models 3 1.3 Dynamic Behavior ofSystems 4 1.3.1 Discrete-Event Simulation Models 5 1.3.2 Simulation Results 5 1.4 Modeling Operating Systems 5 1.5 Computer Systems and Operating Systems 6 1.6 Performance Measures and Performance Modeling 7 1.6.1 Performance Metrics 8 1.6.2 Workload 8 1.6.3 Additional Performance Concepts 9 1.7 Summary 9 2 Object Oriented Modeling 11 2.1 Introduction 11 2.2 Object Modeling 12 2.3 Objects and Classes 13 2.4 General Approach to UML Object-Oriented Modeling 13 2.5 Use Case Diagrams 14 2.6 Static Modeling 15 2.6.1 Class Diagrams 15 2.6.2 Associations 16 ix x Contents 2.6.3 Multiplicity of the Association 17 2.6.4 Aggregation 17 2.6.5 Generalization and Inheritance 18 2.7 Dynamic Modeling 19 2.7.1 Collaboration Diagrams 19 2.7.2 Sequence Diagrams 19 2.7.3 State Diagrams 20 2.8 Concurrency 21 2.9 Summary 22 2.10 Questions 22 3 Basic Probability Theory and Random Numbers 25 3.1 Introduction 25 3.2 Experiments and Outcomes 25 3.3 Long-term Behavior of Systems 26 3.4 Overview of Set Theory 26 3.5 Probabilities 27 3.6 Random Variable and Distribution Functions 27 3.7 Expected Values, Variance, and Covariance 28 3.8 The Geometric Distribution 29 3.9 The Binomial Distribution 30 3.10 The Exponential Distribution 31 3.11 The Poisson Distribution 31 3.12 The Uniform Distribution 32 3.13 The Normal Distribution 32 3.14 Stochastic Processes 32 3.15 Random Numbers in Simulation Models 33 3.16 Summary Statistics 34 3.17 Comparing Sample Data 34 3.18 Markov Models 35 3.18.1 State Dependencies 35 3.18.2 Markov Chains 36 3.19 Summary 38 3.20 Questions 38 4 Single-Server Models 41 4.1 Introduction 41 4.2 Simple Queuing Systems 42 4.2.1 General Queuing Theory 42 Contents xi 4.2.2 Basic Relationships and Laws 43 4.3 Performance and Workload Characterization 44 4.3.1 Workload Parameters 44 4.3.2 Performance Measures Depend on Workload 45 4.4 Review of Simulation with Psim and C++ 46 4.5 A Simulation Model of the Simple Batch Operating System 48 4.6 Performance Comparison for Various Workloads 57 4.7 Summary 58 4.8 Questions 58 5 Queuing Networks 61 5.1 Introduction 61 5.2 A Batch Operating System with 1/0 61 5.2.1 A System with no Multiprogramming 63 5.2.2 A System with Multiprogramming 74 5.3 General Queuing Networks 76 5.3.1 Modeling General Queuing Networks 77 5.3.2 A Simple Queuing Network Model 78 5.3.3 Detailed Structure of the Model 79 5.4 Summary 82 5.5 Questions 82 6 CPU Scheduling 85 6.1 Introduction 85 6.2 Basic Mechanism of the Scheduler 85 6.3 Multi-Class System 86 6.4 Scheduling Policies 87 6 .4.1 First-Come-First-Served 88 6.4.2 Shortest Job First 99 6.4.3 Longest Job First 101 6.4.4 Round Robin Scheduling 104 6.5 Summary 108 6.6 Questions 108 7 Process Synchronization 111 7.1 Introduction 111 7.2 Non-interference 111 7.3 Critical Section Problem 112 7.4 Semaphores 113

Description:
This book introduces the fundamental concepts and practical simulation te- niques for modeling different aspects of operating systems to study their g- eral behavior and their performance. The approaches applied are obje- oriented modeling and process interaction approach to discrete-event simu- tio
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.