Subject Name: System Modeling & Simulation. Prepared By : Ms. Pramela Devi( ASCP) Department : Computer Science & Engineering

Size: px
Start display at page:

Download "Subject Name: System Modeling & Simulation. Prepared By : Ms. Pramela Devi( ASCP) Department : Computer Science & Engineering"

Transcription

1 Subject Name: System Modeling & Simulation Subject Code: 10CS82 Prepared By : Ms. Pramela Devi( ASCP) Department : Computer Science & Engineering Date : /4/2015

2 UNIT 2 General Principles and Simulation Software Engineered for Tomorrow Client So & So Software Pvt. Ltd Date dd.mm.y y Descriptor Lorem Ipsum Dolor Sit Amet, Consectetuer Adipiscing

3 Topic Details 1) Concepts in Discrete-Event Simulation: 2) The Event-Scheduling / Time-Advance Algorithm, 3) World Views, 4) Manual simulation Using Event Scheduling; 5) List processing. 6) Simulation in Java; 7) Simulation in GPSS. 8) Self check Exercise 9) Summary 3/4/2015

4 Learning Outcome: Students will understand:- The basic concepts in Discrete-Event Simulation The detailed description on the Event-Scheduling / Time-Advance Algorithm Basics of World Views How to perform manual simulation Using Event Scheduling Definition of list processing. How to perform simulation in Java How to perform Simulation in GPSS 3/4/2015

5 w 1.Concepts in Discrete Event Simulation System - a collection of entities that act and interact toward the accomplishment of some logical end Model An abstract representation of a system, contains structural, logical and mathematical relationship and describe a system in term of state, entities, attributes, sets, process, events, activities and delays System State- A collection of variable describe a system over a time Entity- Object or component in the system that requires explicit representation Attribute Properties of a given entity List Collection of entities ordered in some logical fashion Event An instantaneous occurrence that change the state of a system Event Notice A record of an event to occur at random time Event List A list of event notices for future events known as FEL

6 1.Concepts in Discrete Event Simulation Continued Activity A duration of time of specified length, example service time or inter arrival time Delay A duration of time of unspecified indefinite length, which is not known until it ends (e.g. a customer s delay in a last-in-first-out waiting line which, when it begins, depends on future arrivals). Clock- Variable representing simulated time Deterministic Model - a deterministic simulation model is one that contains no random variables. All variables are known with certainty, or in other words, no probability is associated with them.

7 1.Concepts in Discrete Event Simulation Continued Stochastic Model - a stochastic simulation model contains random variables Static Model - a static simulation model is a representation of a system at a particular point in time. Dynamic Model - a dynamic simulation is a representation of a system as it evolves over time.

8 Event Scheduling/Time Advance Algorithm Future Event List FEL: contains all the notices for events scheduled to occur at a future time At any given time (t), the FEL contains all previously scheduled future events and their associated event times, e.g.: t1, t2, t3,, etc. See Fig. The FEL is ordered by event time, i.e. events are arranged chronologically so that the event time satisfies t t1 t2 tn At time (t), i.e. CLOCK = t, the event associated with t1 is called the imminent event. That is, the event that will occur

9 Advancing Simulation Time and Updating System Image Clock t System state Entities and Attribute Set1 Set 2 Future Event List FEL Cumulative statistics and Counters t (x,y,z,.) (3,t 1 ) Type 3 event to occur at time t 1 (1,t 2 ) Type 1 event to occur at time t 2 Prototype System Snapshot at simulation time t

10 Advancing Simulation Time and Updating System Image Clock t System state Future Event List FEL t (5,1,6) (3,t 1 ) Type 3 event to occur at time t 1 (1,t 2 ) Type 1 event to occur at time t 2 (1,t 3 ) Type 1 event to occur at time t 3. (1,t 3 ) Type 2 event to occur at time t n Old System Snapshot at simulation time t

11 Event Scheduling / time advance algorithm Step 1. Remove the event notice for the imminent event (event 3, time t1) from the FEL Step 2. Advance CLOCK to imminent event time (i.e. advance CLOCK from t to t1) Step 3. Execute imminent event; update system state; change entity attributes; and set membership as needed Step 4. Generate future events (if necessary) and place their event notices on the FEL, ranked by event time, e.g. event 4 to occur at time t*, where t1 < t*< t1 Step 5. Update cumulative statistics and counters

12 Advancing Simulation Time and Updating System Image Clock t System state Future Event List FEL t (5,1,5) (1,t 2 ) Type 1 event to occur at time t 2 (4,t * ) Type 4 event to occur at time t * (1,t 3 ) Type 1 event to occur at time t 3. (2,t n ) Type 2 event to occur at time t n New System Snapshot at simulation time t

13 Arriv al Time 0 Generation of External Arrival Stream by Bootsrapping occur at future time t n n t t *. CLO CK = Between successive arrival events, other types of events may occur, causing system state to change At simulated time t, assumed to be the instant of the nth arrival, generate interarrival time a*, compute t*= t + a* and schedule future arrival on FEL to a * Arriv al Time

14 Stopping a Simulation At time 0, schedule a stop simulation event at a specified future time TE. The simulation will run over the time interval [0, TE] Example: Simulate a shop for 8 hours Run length TE is determined by the simulation itself. TE is the time of occurrence of some event E. - Example: TE = time of the 100th service completion

15 3 World Views When using a simulation package or even when doing hand simulation, a modeler adopts a world view or orientation for developing a model. The most prevalent world views are 1. the event-scheduling world view 2. the process-interaction world view 3. the activity-scanning world view. Particular simulation packages (e.g. Arena) usually support one of these world views.

16 Event Scheduling World Views Engineered for Tomorrow Concentrates on events and their effects on system state It makes use of the Future Event List and variable time increments This is the approach we have just discussed It is a very flexible approach using which any system can be simulated It requires lots of mechanisms (e.g. FEL handling) to be coded, which may slow down the development of the simulation model for very simple systems. This is the world view that is usually used when the simulation program is directly coded on a general-purpose programming language such as Java.

17 Process Interaction World View Engineered for Tomorrow Models the system in terms of processes Concentrates on entities, and their life cycles as they flow through the system, demanding resources and queueing to wait for resources. A process is a time-sequenced list of events, activities and delays that define the life cycle of one entity as it moves through a system. Some activities might require resources that are limited, which may cause delays in the process

18 Process Interaction World View En for Tomorrow This approach is easier for the modeler since people usually perceive the systems in terms of the processes the entities experience But this approach is usually harder to implement directly, especially when the systems to be simulated are complex Thus, many simulation packages (including ARENA) use this view for the modeler to describe the system (user-interface), but an event-scheduling approach is used operationally to perform the simulation run, hidden from the user.

19 Activity Scanning World View Concentrates on activities and conditions that allow them to begin It uses fixed time increments At each clock advance, the conditions for each activity are checked, and if the conditions hold, then the corresponding activity starts. The (M,N) inventory system simulation we used last week used activity-scanning approach. The time increment used was a day. Simple in concept and leads to modular models that are easier to maintain, understand and modify. The repeated scanning (at each time increment) results in slow runtime on computers

20 Manual Simulation Using Event Scheduling (1) Entities : The server and customers Events : Arrival (A), Departure (D) Stopping event (E), scheduled to occur at time 60. System state (LQ(t), LS(t)) : LQ(t) is the number of customers in the waiting line LS(t) is the number being served (0 or 1) at time t (A, t ), representing an arrival event to occur at future time t (D, t ), representing a customer departure at future time t (E, 60), representing the simulation-stop event at future time 60. Activities : Interarrival time Service time Delay : Customer time spent in waiting line.

21

22

23 Manual Simulation Using Event Scheduling The interarrival times and service Initial conditions The system snapshot at time zero (CLOCK = 0) LQ(0) = 0, LS(0) = 1 both a departure event and arrival event on the FEL. The simulation is scheduled to stop at time 60. Server utilization : total server busy time (B) / total time (TE). a* : the generated interarrival time s* : the generated service times

24 Manual Simulation Using Event Scheduling (4)

25 Manual Simulation Using Event Scheduling Example 3.5 (The Dump Truck Problem) Traveling Loading Loader queue Weighing queue Scale First-Come First-Served First-Come First-Served The distributions of loading time, weighing time, and travel time are given in Tables The purpose of the simulation is to estimate the loader and scale utilizations (percentage of time busy).

26 Manual Simulation Using Event Scheduling (9) The activity times are taken from the following list as needed:

27 Manual Simulation Using Event Scheduling (10) System state [LQ(t), L(t), WQ(t), W(t)] LQ(t) = number of trucks in loader queue L(t) = number of trucks (0, 1, or 2) being loaded WQ(t) = number of trucks in weigh queue W(t) = number of trucks (0 or 1) being weighed, all at simulation time t Event notices :(ALQ, t, DTi ), dump truck i arrives at loader queue (ALQ) at time t (EL, t, DTi), dump truck i ends loading (EL) at time t (EW, t, DTi), dump truck i ends weighing (EW) at time t Entities : The six dump trucks (DT 1,, DT 6)

28 Manual Simulation Using Event Scheduling (11) Loader queue : all trucks waiting to begin loading, ordered on a first come, first served basis Weigh queue : all trucks waiting to be weighed, ordered on a first come, first served basis Activities : Loading time, weighing time, and travel time Delays : Delay at loader queue, and delay at scale It has been assumed that five of the trucks are at the loaders and one is at the scale at time 0.

29

30

31 Manual Simulation Using Event Scheduling (13) The utilizations are estimated as follows: average loader utilization average scale utilization 49 / These estimates cannot be regarded as accurate estimates of the long-run steady-state utilizations of the loader and scale.

32 3.2 List Processing List : Basic Properties and Operations (1) Head Pointer Event type Event type Event type Event type Event time Event time Event time Event time Any data Any data Any data Any data Next pointer Next pointer Next pointer Next pointer Record Record Record List : a set of ordered or ranked records. Record : one entity or one event notice. Tail Pointer Field : an entity identifier and its attributes : the event type, event time, and any other event related data

33 3.2.1 List : Basic Properties and Operations (2) How to store record in a physical location in computer memory in arrays : successive records in contiguous locations by pointers to a record : structures in C, classes in C++ The main operations on a list : Removing a record from the top of the list. when time is advanced and the imminent event is due to be executed. by adjusting the head pointer on the FEL by removing the event at the top of the FEL. Removing a record from any location on the list.

34 3.2.1 List : Basic Properties and Operations (3) The main operations on a list (Cont.) Adding an entity record to the top or bottom of the list. when an entity joins the back of a first-in first-out queue. by adjusting the tail pointer on the FEL by adding an entity to the bottom of the FEL Adding a record to an arbitrary position on the list, determined by the ranking rule. if a queue has a ranking rule of earliest due date first (EDF). by making a partial search through the list. The goal of list-processing techniques : to make second and fourth operations efficient

35 3.2.2 Using Arrays for List Processing (1) The notation R(i) : the ith record in the array Advantage Any specified record, say the ith, can be retrieved quickly without searching, merely by referencing R(i ). Disadvantage When items are added to the middle of a list or the list must be rearranged. Arrays typically have a fixed size, determined at compile time or upon initial allocation when a program first begins to execute.in simulation, the maximum number of records for any list may be difficult or impossible to determine ahead of time, while the current number in a list may vary widely over the course of the simulation run.

36 3.2.2 Using Arrays for List Processing (2) Memory address adding move move move move Two methods for keeping track of the ranking of records in a list to store the first record in R(1), the second in R(2), and so on, and the last in R(tailptr), where tailptr is used to refer to the last item in the list. a variable called a head pointer, with name headptr, points to the record at the top of the list.

37 3.2.3 Using Dynamic Allocation and Linked Lists (1) In procedural languages such as C and C++, and in most simulation languages, entity records are dynamically created when an entity is created and event notice records are dynamically created whenever an event is scheduled on the future event list. The languages themselves, or the operating systems on which they are running, maintain a linked list of free chunks of computer memory and allocate a chunk of desired size upon request to running programs. With dynamic allocation, a record is referenced by a pointer instead of an array index. A pointer to a record can be thought of as the physical or logical address in computer memory of the record.

38 Simulation in Java Single Channel Queue

39 Simulation in Java continued

40 Engineered for Tomorrow Self Check Exercise

41 What is discrete event simulation? Explain event scheduling algorithm by generating system snapshots at clock time T and clock time T1 with diagrams. Explain the concepts of discrete event simulation. Six dump trucks are used to have coal from entrance of a mine to a rail road. Each truck is loaded by one of the two loaders. After loading, a truck immediately moves to the scale, to be weighed as soon as possible. Both loader and scale have first come first served waiting line for trucks. Travel time from loader to scale is considered negligible. After being weighed, a truck begins travel time and then afterwards returns to loader queue. The activities of loading, weighing and travel time are given in below table:

42 End of simulation is 40 minutes of completion of weighing from scale. Depict simulation table and estimate loader and scale utilizations. Assume that 5 trucks are at loaders and one truck is at scale at time 0. Draw the flowchart of the execution of the arrival event & departure event for a single channel queue using event scheduling. What do you mean by world view? Briefly explain different types of world view. Explain in detail about List Processing. Explain about simulation in GPSS. Explain in detail about the concepts of discrete event simulation Simulate the grocery counter problem using manual simulation using event scheduling with the following data.

43 Engineered for Tomorrow Summary

44 The concepts in simulation are System, Model System state, Entity Attribute, List, Event, Event Notice etc. Different types of simulation models are : Stochastic Model - a stochastic simulation model contains random variables Static Model - a static simulation model is a representation of a system at a particular point in time. Dynamic Model - a dynamic simulation is a representation of a system as it evolves over time. Future Event List FEL: contains all the notices for events scheduled to occur at a future time At any given time (t), the FEL contains all previously scheduled future events and their associated event times, e.g.: t1, t2, t3,, etc. See Fig. The FEL is ordered by event time, i.e. events are arranged chronologically so that the event time satisfies

Discrete-event simulation

Discrete-event simulation 1 SYSTEM MODELING AND SIMULATION UNIT-2 VIK UNIT 2 GENERAL PRINCIPLES, SIMULATION SOFTWARE: Concepts in Discrete-Event Simulation: The Event-Scheduling / Time-Advance Algorithm, World Views, Manual simulation

More information

Chapter 3 General Principles. Banks, Carson, Nelson & Nicol Discrete-Event System Simulation

Chapter 3 General Principles. Banks, Carson, Nelson & Nicol Discrete-Event System Simulation Chapter 3 General Principles Banks, Carson, Nelson & Nicol Discrete-Event System Simulation Purpose Develops a common framework for the modeling of complex systems. Covers the basic blocks for all discrete-event

More information

CPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017

CPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017 CPSC 531: System Modeling and Simulation Carey Williamson Department of Computer Science University of Calgary Fall 2017 Recap: Simulation Model Taxonomy 2 Recap: DES Model Development How to develop a

More information

General Simulation Principles

General Simulation Principles 1 / 24 General Simulation Principles Christos Alexopoulos and Dave Goldsman Georgia Institute of Technology, Atlanta, GA, USA 10/16/17 2 / 24 Outline 1 Steps in a Simulation Study 2 Some Definitions 3

More information

Overview of the Simulation Process. CS1538: Introduction to Simulations

Overview of the Simulation Process. CS1538: Introduction to Simulations Overview of the Simulation Process CS1538: Introduction to Simulations Simulation Fundamentals A computer simulation is a computer program that models the behavior of a physical system over time. Program

More information

Numerical approach estimate

Numerical approach estimate Simulation Nature of simulation Numericalapproachfor investigating models of systems. Data are gathered to estimatethe true characteristics of the model. Garbage in garbage out! One of the techniques of

More information

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008 Dynamic Storage Allocation CS 44: Operating Systems Spring 2 Memory Allocation Static Allocation (fixed in size) Sometimes we create data structures that are fixed and don t need to grow or shrink. Dynamic

More information

Modeling and Simulation (An Introduction)

Modeling and Simulation (An Introduction) Modeling and Simulation (An Introduction) 1 The Nature of Simulation Conceptions Application areas Impediments 2 Conceptions Simulation course is about techniques for using computers to imitate or simulate

More information

Performance Evaluation

Performance Evaluation Performance Evaluation Chapter 4 A Complicated Queuing System (Acknowledgement: These slides have been prepared by Prof. Dr. Holger Karl) 1 Goal of this chapter! Understand implementation issues and solutions

More information

Lecture: Simulation. of Manufacturing Systems. Sivakumar AI. Simulation. SMA6304 M2 ---Factory Planning and scheduling. Simulation - A Predictive Tool

Lecture: Simulation. of Manufacturing Systems. Sivakumar AI. Simulation. SMA6304 M2 ---Factory Planning and scheduling. Simulation - A Predictive Tool SMA6304 M2 ---Factory Planning and scheduling Lecture Discrete Event of Manufacturing Systems Simulation Sivakumar AI Lecture: 12 copyright 2002 Sivakumar 1 Simulation Simulation - A Predictive Tool Next

More information

CHAPTER 5 NEXT-EVENT SIMULATION

CHAPTER 5 NEXT-EVENT SIMULATION CHAPTER 5 NEXT-EVENT SIMULATION Sections 5 Next-Event Simulation (program ssq3) 86 52 Next-Event Simulation Examples (programs sis3 and msq) 98 53 Event List Management (program ttr) 206 The three sections

More information

An algorithm for Performance Analysis of Single-Source Acyclic graphs

An algorithm for Performance Analysis of Single-Source Acyclic graphs An algorithm for Performance Analysis of Single-Source Acyclic graphs Gabriele Mencagli September 26, 2011 In this document we face with the problem of exploiting the performance analysis of acyclic graphs

More information

Object Oriented Discrete-Event Simulation with OOSimL CS 4632

Object Oriented Discrete-Event Simulation with OOSimL CS 4632 Object Oriented Discrete-Event Simulation with OOSimL CS 4632 Spring 2016 Dr. José M. Garrido Department of Computer Science College of Computing and Software Engineering Kennesaw State University Definitions

More information

SIMULATION OF A SINGLE-SERVER QUEUEING SYSTEM

SIMULATION OF A SINGLE-SERVER QUEUEING SYSTEM SIMULATION OF A SINGLE-SERVER QUEUEING SYSTEM Will show how to simulate a specific version of the single-server queuing system Though simple, it contains many features found in all simulation models 1-

More information

Discrete-Event Simulation:

Discrete-Event Simulation: Discrete-Event Simulation: A First Course Section 5.1: Next-Event Simulation Section 5.1: Next-Event Simulation Making small modifications to our simple discrete-event simulations is non-trivial Add feedback

More information

UNIT 4: QUEUEING MODELS

UNIT 4: QUEUEING MODELS UNIT 4: QUEUEING MODELS 4.1 Characteristics of Queueing System The key element s of queuing system are the customer and servers. Term Customer: Can refer to people, trucks, mechanics, airplanes or anything

More information

Event Scheduling Algorithm. Event Notice and Future Event List. Discrete Event Simulation. Event Scheduling Based on FEL

Event Scheduling Algorithm. Event Notice and Future Event List. Discrete Event Simulation. Event Scheduling Based on FEL Event Scheduling Algorithm Spreadsheet simulation tables for individual applications are structured in ad hoc ways. For larger applications, the approach can be unbearably complex. A more general, common

More information

Queuing Systems. 1 Lecturer: Hawraa Sh. Modeling & Simulation- Lecture -4-21/10/2012

Queuing Systems. 1 Lecturer: Hawraa Sh. Modeling & Simulation- Lecture -4-21/10/2012 Queuing Systems Queuing theory establishes a powerful tool in modeling and performance analysis of many complex systems, such as computer networks, telecommunication systems, call centers, manufacturing

More information

Lecture 5: Performance Analysis I

Lecture 5: Performance Analysis I CS 6323 : Modeling and Inference Lecture 5: Performance Analysis I Prof. Gregory Provan Department of Computer Science University College Cork Slides: Based on M. Yin (Performability Analysis) Overview

More information

Simulative Evaluation of Internet Protocol Functions

Simulative Evaluation of Internet Protocol Functions Simulative Evaluation of Internet Protocol Functions Introduction Course Objectives & Introduction Performance Evaluation & Simulation A Manual Simulation Example Resources http://www.tu-ilmenau.de/fakia/simpro.html

More information

Section 5.2: Next Event Simulation Examples

Section 5.2: Next Event Simulation Examples Section 52: Next Event Simulation Examples Discrete-Event Simulation: A First Course c 2006 Pearson Ed, Inc 0-13-142917-5 Discrete-Event Simulation: A First Course Section 52: Next Event Simulation Examples

More information

Processing, representing and interpreting data

Processing, representing and interpreting data Processing, representing and interpreting data 21 CHAPTER 2.1 A head CHAPTER 17 21.1 polygons A diagram can be drawn from grouped discrete data. A diagram looks the same as a bar chart except that the

More information

OLE Smarts115, Smarts116

OLE Smarts115, Smarts116 Each SMART File is listed in one or more of the categories below. Following the categories is a list of each model with a brief description of its application and the key modules or constructs used. Animation

More information

Next-Event Simulation

Next-Event Simulation Next-Event Simulation Lawrence M. Leemis and Stephen K. Park, Discrete-Event Simulation - A First Course, Prentice Hall, 2006 Hui Chen Computer Science Virginia State University Petersburg, Virginia March

More information

Chapter 5. File and Memory Management

Chapter 5. File and Memory Management K. K. Wagh Polytechnic, Nashik Department: Information Technology Class: TYIF Sem: 5G System Subject: Operating Name of Staff: Suyog S.Dhoot Chapter 5. File and Memory Management A. Define file and explain

More information

OPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5

OPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5 OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:

More information

Simulation. Outline. Common Mistakes in Simulation (3 of 4) Common Mistakes in Simulation (2 of 4) Performance Modeling Lecture #8

Simulation. Outline. Common Mistakes in Simulation (3 of 4) Common Mistakes in Simulation (2 of 4) Performance Modeling Lecture #8 Introduction (1 of 3) The best advice to those about to embark on a very large simulation is often the same as Punch s famous advice to those about to marry: Don t! Bratley, Fox and Schrage (1986) Simulation

More information

Simulation Models for Manufacturing Systems

Simulation Models for Manufacturing Systems MFE4008 Manufacturing Systems Modelling and Control Models for Manufacturing Systems Dr Ing. Conrad Pace 1 Manufacturing System Models Models as any other model aim to achieve a platform for analysis and

More information

Algorithms for Dynamic Memory Management (236780) Lecture 4. Lecturer: Erez Petrank

Algorithms for Dynamic Memory Management (236780) Lecture 4. Lecturer: Erez Petrank Algorithms for Dynamic Memory Management (236780) Lecture 4 Lecturer: Erez Petrank!1 March 24, 2014 Topics last week The Copying Garbage Collector algorithm: Basics Cheney s collector Additional issues:

More information

Information Science 2

Information Science 2 Information Science 2 - Basic Data Structures- Week 02 College of Information Science and Engineering Ritsumeikan University Today s class outline l Basic data structures: Definitions and implementation

More information

CS370: System Architecture & Software [Fall 2014] Dept. Of Computer Science, Colorado State University

CS370: System Architecture & Software [Fall 2014] Dept. Of Computer Science, Colorado State University Frequently asked questions from the previous class survey CS 370: SYSTEM ARCHITECTURE & SOFTWARE [CPU SCHEDULING] Shrideep Pallickara Computer Science Colorado State University OpenMP compiler directives

More information

[2:3] Linked Lists, Stacks, Queues

[2:3] Linked Lists, Stacks, Queues [2:3] Linked Lists, Stacks, Queues Helpful Knowledge CS308 Abstract data structures vs concrete data types CS250 Memory management (stack) Pointers CS230 Modular Arithmetic !!!!! There s a lot of slides,

More information

Chapter 11 Running the Model

Chapter 11 Running the Model CHAPTER CONTENTS Simulation Menu 568 Section 1 Simulation Options...569 General Options & Settings 570 Output Reporting Options 572 Running a Specific Replication 574 Customized Reporting 574 Section 2

More information

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Computer Science Journal of Moldova, vol.13, no.3(39), 2005 Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Alexandr Savinov Abstract In the paper we describe a

More information

CSCI-1200 Data Structures Spring 2017 Lecture 27 Garbage Collection & Smart Pointers

CSCI-1200 Data Structures Spring 2017 Lecture 27 Garbage Collection & Smart Pointers CSCI-1200 Data Structures Spring 2017 Lecture 27 Garbage Collection & Smart Pointers Announcements Please fill out your course evaluations! Those of you interested in becoming an undergraduate mentor for

More information

Chapter 12. CPU Structure and Function. Yonsei University

Chapter 12. CPU Structure and Function. Yonsei University Chapter 12 CPU Structure and Function Contents Processor organization Register organization Instruction cycle Instruction pipelining The Pentium processor The PowerPC processor 12-2 CPU Structures Processor

More information

Unit 3 : Process Management

Unit 3 : Process Management Unit : Process Management Processes are the most widely used units of computation in programming and systems, although object and threads are becoming more prominent in contemporary systems. Process management

More information

Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises

Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises Text Book: Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 1 Practice Exercises #1 Chapter

More information

8.1 Model building, verification, and validation

8.1 Model building, verification, and validation UNIT 8: VERIFICATION AND VALIDATION OF SIMULATION MODELS, OPTIMIZATION: Model building, verification and validation; Verification of simulation models; Calibration and validation of models. Optimization

More information

C How to Program, 6/e by Pearson Education, Inc. All Rights Reserved.

C How to Program, 6/e by Pearson Education, Inc. All Rights Reserved. C How to Program, 6/e 1992-2010 by Pearson Education, Inc. 1992-2010 by Pearson Education, Inc. 1992-2010 by Pearson Education, Inc. This chapter serves as an introduction to the important topic of data

More information

Discrete-Event Simulation: A First Course. Steve Park and Larry Leemis College of William and Mary

Discrete-Event Simulation: A First Course. Steve Park and Larry Leemis College of William and Mary Discrete-Event Simulation: A First Course Steve Park and Larry Leemis College of William and Mary Technical Attractions of Simulation * Ability to compress time, expand time Ability to control sources

More information

Real-Time Component Software. slide credits: H. Kopetz, P. Puschner

Real-Time Component Software. slide credits: H. Kopetz, P. Puschner Real-Time Component Software slide credits: H. Kopetz, P. Puschner Overview OS services Task Structure Task Interaction Input/Output Error Detection 2 Operating System and Middleware Application Software

More information

Adaptive algorithm for High-Performance FPGA Cores

Adaptive algorithm for High-Performance FPGA Cores 1 Adaptive algorithm for High-Performance FPGA Cores Shankar Dheeraj Konidena dheeraj@ittc.ku.edu 2 Introduction Issue Background Architecture Implementation Results Conclusion & Future work Questions

More information

Introduction. Step 1: Creating a Process Simulator Model. Open Tutorial File in Visio. Goal: 40 units/week of new component.

Introduction. Step 1: Creating a Process Simulator Model. Open Tutorial File in Visio. Goal: 40 units/week of new component. Introduction This tutorial places you in the position of a process manager for a specialty electronics manufacturing firm that makes small lots of prototype boards for medical device manufacturers. Your

More information

CSCI-1200 Data Structures Fall 2011 Lecture 24 Garbage Collection & Smart Pointers

CSCI-1200 Data Structures Fall 2011 Lecture 24 Garbage Collection & Smart Pointers CSCI-1200 Data Structures Fall 2011 Lecture 24 Garbage Collection & Smart Pointers Review from Lecture 23 Basic exception mechanisms: try/throw/catch Functions & exceptions, constructors & exceptions Today

More information

Operating Systems Lecture 6: Memory Management II

Operating Systems Lecture 6: Memory Management II CSCI-GA.2250-001 Operating Systems Lecture 6: Memory Management II Hubertus Franke frankeh@cims.nyu.edu What is the problem? Not enough memory Have enough memory is not possible with current technology

More information

What We ll Do... Random

What We ll Do... Random What We ll Do... Random- number generation Random Number Generation Generating random variates Nonstationary Poisson processes Variance reduction Sequential sampling Designing and executing simulation

More information

Read Chapter 4 of Kurose-Ross

Read Chapter 4 of Kurose-Ross CSE 422 Notes, Set 4 These slides contain materials provided with the text: Computer Networking: A Top Down Approach,5th edition, by Jim Kurose and Keith Ross, Addison-Wesley, April 2009. Additional figures

More information

In either case, remember to delete each array that you allocate.

In either case, remember to delete each array that you allocate. CS 103 Path-so-logical 1 Introduction In this programming assignment you will write a program to read a given maze (provided as an ASCII text file) and find the shortest path from start to finish. 2 Techniques

More information

A general purpose digital simulator and examples of its application

A general purpose digital simulator and examples of its application This part of the paper describes GPSS 11, a general purpose digital systems simulation program based on a block diagram language. The program is a result of incorporating improvements dictated by extensive

More information

Module 7:Application of stochastic processes in queueing theory Lecture 29:Application of stochastic processes in Queueing Theory

Module 7:Application of stochastic processes in queueing theory Lecture 29:Application of stochastic processes in Queueing Theory The Lecture Contains: Introdution For a queueing system we generally should define or know the following General system notations Example of Single servers What we can glean from the set of information

More information

Section 5.3: Event List Management

Section 5.3: Event List Management Section 53: Event List Management Discrete-Event Simulation: A First Course c 2006 Pearson Ed, Inc 0-3-4297-5 Discrete-Event Simulation: A First Course Section 53: Event List Management / 3 Section 53:

More information

Chapter 3 Structured Program Development in C Part II

Chapter 3 Structured Program Development in C Part II Chapter 3 Structured Program Development in C Part II C How to Program, 8/e, GE 2016 Pearson Education, Ltd. All rights reserved. 1 3.7 The while Iteration Statement An iteration statement (also called

More information

General Objectives: To understand the process management in operating system. Specific Objectives: At the end of the unit you should be able to:

General Objectives: To understand the process management in operating system. Specific Objectives: At the end of the unit you should be able to: F2007/Unit5/1 UNIT 5 OBJECTIVES General Objectives: To understand the process management in operating system Specific Objectives: At the end of the unit you should be able to: define program, process and

More information

The RASTA Framework. Joel Becker October 3, 2001

The RASTA Framework. Joel Becker October 3, 2001 The RASTA Framework Joel Becker October 3, 2001 Abstract RASTA is an framework for describing tasks on a computer system. It is well known that casual and non-expert users prefer to be guided through tasks

More information

Modern Systems Analysis and Design

Modern Systems Analysis and Design Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Designing Databases Learning Objectives Concisely define each of the following key database design terms:

More information

CS Operating Systems

CS Operating Systems CS 4500 - Operating Systems Module 9: Memory Management - Part 1 Stanley Wileman Department of Computer Science University of Nebraska at Omaha Omaha, NE 68182-0500, USA June 9, 2017 In This Module...

More information

CS Operating Systems

CS Operating Systems CS 4500 - Operating Systems Module 9: Memory Management - Part 1 Stanley Wileman Department of Computer Science University of Nebraska at Omaha Omaha, NE 68182-0500, USA June 9, 2017 In This Module...

More information

CS 270 Algorithms. Oliver Kullmann. Binary search. Lists. Background: Pointers. Trees. Implementing rooted trees. Tutorial

CS 270 Algorithms. Oliver Kullmann. Binary search. Lists. Background: Pointers. Trees. Implementing rooted trees. Tutorial Week 7 General remarks Arrays, lists, pointers and 1 2 3 We conclude elementary data structures by discussing and implementing arrays, lists, and trees. Background information on pointers is provided (for

More information

Data Structures Lecture 2 : Part 1: Programming Methodologies Part 2: Memory Management

Data Structures Lecture 2 : Part 1: Programming Methodologies Part 2: Memory Management 0 Data Structures Lecture 2 : Part 2: Memory Management Dr. Essam Halim Houssein Lecturer, Faculty of Computers and Informatics, Benha University 2 Programming methodologies deal with different methods

More information

Arrays and Linked Lists

Arrays and Linked Lists Arrays and Linked Lists Abstract Data Types Stacks Queues Priority Queues and Deques John Edgar 2 And Stacks Reverse Polish Notation (RPN) Also known as postfix notation A mathematical notation Where every

More information

19 File Structure, Disk Scheduling

19 File Structure, Disk Scheduling 88 19 File Structure, Disk Scheduling Readings for this topic: Silberschatz et al., Chapters 10 11. File: a named collection of bytes stored on disk. From the OS standpoint, the file consists of a bunch

More information

Module 1. Introduction:

Module 1. Introduction: Module 1 Introduction: Operating system is the most fundamental of all the system programs. It is a layer of software on top of the hardware which constitutes the system and manages all parts of the system.

More information

22 File Structure, Disk Scheduling

22 File Structure, Disk Scheduling Operating Systems 102 22 File Structure, Disk Scheduling Readings for this topic: Silberschatz et al., Chapters 11-13; Anderson/Dahlin, Chapter 13. File: a named sequence of bytes stored on disk. From

More information

Stochastic Petri nets

Stochastic Petri nets Stochastic Petri nets 1 Stochastic Petri nets Markov Chain grows very fast with the dimension of the system Petri nets: High-level specification formalism Markovian Stochastic Petri nets adding temporal

More information

Tasks. Task Implementation and management

Tasks. Task Implementation and management Tasks Task Implementation and management Tasks Vocab Absolute time - real world time Relative time - time referenced to some event Interval - any slice of time characterized by start & end times Duration

More information

Function Call Stack and Activation Records

Function Call Stack and Activation Records 71 Function Call Stack and Activation Records To understand how C performs function calls, we first need to consider a data structure (i.e., collection of related data items) known as a stack. Students

More information

Queueing Networks 32-1

Queueing Networks 32-1 Queueing Networks Raj Jain Washington University in Saint Louis Jain@eecs.berkeley.edu or Jain@wustl.edu A Mini-Course offered at UC Berkeley, Sept-Oct 2012 These slides and audio/video recordings are

More information

Page 1. Goals for Today" TLB organization" CS162 Operating Systems and Systems Programming Lecture 11. Page Allocation and Replacement"

Page 1. Goals for Today TLB organization CS162 Operating Systems and Systems Programming Lecture 11. Page Allocation and Replacement Goals for Today" CS162 Operating Systems and Systems Programming Lecture 11 Page Allocation and Replacement" Finish discussion on TLBs! Page Replacement Policies! FIFO, LRU! Clock Algorithm!! Working Set/Thrashing!

More information

lecture notes September 2, How to sort?

lecture notes September 2, How to sort? .30 lecture notes September 2, 203 How to sort? Lecturer: Michel Goemans The task of sorting. Setup Suppose we have n objects that we need to sort according to some ordering. These could be integers or

More information

Object Orientated Analysis and Design. Benjamin Kenwright

Object Orientated Analysis and Design. Benjamin Kenwright Notation Part 2 Object Orientated Analysis and Design Benjamin Kenwright Outline Review What do we mean by Notation and UML? Types of UML View Continue UML Diagram Types Conclusion and Discussion Summary

More information

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 32 Multiple Server Queueing Models In this lecture, we continue our discussion

More information

1. Background. 2. Demand Paging

1. Background. 2. Demand Paging COSC4740-01 Operating Systems Design, Fall 2001, Byunggu Yu Chapter 10 Virtual Memory 1. Background PROBLEM: The entire process must be loaded into the memory to execute limits the size of a process (it

More information

Subject Teacher: Prof. Sheela Bankar

Subject Teacher: Prof. Sheela Bankar Peoples Empowerment Group ISB&M SCHOOL OF TECHNOLOGY, NANDE, PUNE DEPARTMENT OF COMPUTER ENGINEERING Academic Year 2017-18 Subject: SP&OS Class: T.E. computer Subject Teacher: Prof. Sheela Bankar 1. Explain

More information

3/3/2014! Anthony D. Joseph!!CS162! UCB Spring 2014!

3/3/2014! Anthony D. Joseph!!CS162! UCB Spring 2014! Post Project 1 Class Format" CS162 Operating Systems and Systems Programming Lecture 11 Page Allocation and Replacement" Mini quizzes after each topic Not graded Simple True/False Immediate feedback for

More information

Two hours. Question ONE is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. Date: Friday 25th January 2013 Time: 14:00-16:00

Two hours. Question ONE is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. Date: Friday 25th January 2013 Time: 14:00-16:00 Two hours Question ONE is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Operating Systems Date: Friday 25th January 2013 Time: 14:00-16:00 Please answer Question ONE and any TWO other

More information

Virtual Memory Management

Virtual Memory Management Virtual Memory Management CS-3013 Operating Systems Hugh C. Lauer (Slides include materials from Slides include materials from Modern Operating Systems, 3 rd ed., by Andrew Tanenbaum and from Operating

More information

Chapter 5. Minimization of Average Completion Time and Waiting Time in Cloud Computing Environment

Chapter 5. Minimization of Average Completion Time and Waiting Time in Cloud Computing Environment Chapter 5 Minimization of Average Completion Time and Waiting Time in Cloud Computing Cloud computing is the use of the Internet for the tasks the users performing on their computer. Cloud computing, also

More information

Earthwork 3D for Dummies Doing a digitized dirt takeoff calculation the swift and easy way

Earthwork 3D for Dummies Doing a digitized dirt takeoff calculation the swift and easy way Introduction Earthwork 3D for Dummies Doing a digitized dirt takeoff calculation the swift and easy way Getting to know you Earthwork has inherited its layout from its ancestors, Sitework 98 and Edge.

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

16. Linked Structures and Miscellaneous

16. Linked Structures and Miscellaneous 16. Linked Structures and Miscellaneous The main purpose of this section is to look at the cool topic of linked data structures. This is where we use one object to point to the next object in a structure

More information

FOURTH EDITION. Discrete-Event System Simulation

FOURTH EDITION. Discrete-Event System Simulation Discrete-Event System Simulation FOURTH EDITION Jerry Banks Independent Consultan f John S. Carson II Brooks Automation Barry L. Nelson North western University David M. Nicol University o f Illinois,

More information

More Counting Sort and Sorting-by-Key

More Counting Sort and Sorting-by-Key Tony Gong ITEE University of Queensland In the lectures last week we looked at the counting sort algorithm for sorting a set of integers that come from some specific domain, i.e. every integer is in some

More information

EP2200 Queueing theory and teletraffic systems

EP2200 Queueing theory and teletraffic systems EP2200 Queueing theory and teletraffic systems Viktoria Fodor Laboratory of Communication Networks School of Electrical Engineering Lecture 1 If you want to model networks Or a complex data flow A queue's

More information

Midterm Exam Solutions Amy Murphy 28 February 2001

Midterm Exam Solutions Amy Murphy 28 February 2001 University of Rochester Midterm Exam Solutions Amy Murphy 8 February 00 Computer Systems (CSC/56) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all

More information

HELLO WORLD. c Copyright Bluespec, Inc. All Rights Reserved. July 8, 2016

HELLO WORLD. c Copyright Bluespec, Inc. All Rights Reserved. July 8, 2016 HELLO WORLD c Copyright 2005 2006 Bluespec, Inc. All Rights Reserved. July 8, 2016 1 1 Introduction You have just finished the Bluespec training course, and wish to do your first design in Bluespec. So

More information

11. a b c d e. 12. a b c d e. 13. a b c d e. 14. a b c d e. 15. a b c d e

11. a b c d e. 12. a b c d e. 13. a b c d e. 14. a b c d e. 15. a b c d e CS-3160 Concepts of Programming Languages Spring 2015 EXAM #1 (Chapters 1-6) Name: SCORES MC: /75 PROB #1: /15 PROB #2: /10 TOTAL: /100 Multiple Choice Responses Each multiple choice question in the separate

More information

UNIT -3 PROCESS AND OPERATING SYSTEMS 2marks 1. Define Process? Process is a computational unit that processes on a CPU under the control of a scheduling kernel of an OS. It has a process structure, called

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 L20 Virtual Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Questions from last time Page

More information

Stream Control Transmission Protocol

Stream Control Transmission Protocol Chapter 13 Stream Control Transmission Protocol Objectives Upon completion you will be able to: Be able to name and understand the services offered by SCTP Understand SCTP s flow and error control and

More information

BUFFER STOCKS IN KANBAN CONTROLLED (TRADITIONAL) UNSATURATED MULTI-STAGE PRODUCTION SYSTEM

BUFFER STOCKS IN KANBAN CONTROLLED (TRADITIONAL) UNSATURATED MULTI-STAGE PRODUCTION SYSTEM VOL. 3, NO., FEBRUARY 008 ISSN 89-6608 006-008 Asian Research Publishing Network (ARPN). All rights reserved. BUFFER STOCKS IN KANBAN CONTROLLED (TRADITIONAL) UNSATURATED MULTI-STAGE PRODUCTION SYSTEM

More information

Lab 3 Process Scheduling Due date: 29-Nov-2018

Lab 3 Process Scheduling Due date: 29-Nov-2018 Introduction Lab 3 Process Scheduling Due date: 29-Nov-2018 Modern operating system employ scheduling algorithms that are based on the round-robin concept as described in class. The scheduling policy is

More information

CS2028 -UNIX INTERNALS

CS2028 -UNIX INTERNALS DHANALAKSHMI SRINIVASAN INSTITUTE OF RESEARCH AND TECHNOLOGY,SIRUVACHUR-621113. CS2028 -UNIX INTERNALS PART B UNIT 1 1. Explain briefly details about History of UNIX operating system? In 1965, Bell Telephone

More information

Simulation with Arena

Simulation with Arena Simulation with Arena Sixth Edition W. David Kelton Professor Department of Operations, Business Analytics, and Information Systems University of Cincinnati Randall P. Sadowski Retired Nancy B. Zupick

More information

Process- Concept &Process Scheduling OPERATING SYSTEMS

Process- Concept &Process Scheduling OPERATING SYSTEMS OPERATING SYSTEMS Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne PROCESS MANAGEMENT Current day computer systems allow multiple

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 32 Virtual Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Questions for you What is

More information

Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008.

Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008. Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008. Outline. Dynamic Allocation. Variables and Constants. Aliases and Problems. Garbage. Introduction. On Wednesday, we were talking

More information

Database Applications (15-415)

Database Applications (15-415) Database Applications (15-415) DBMS Internals: Part II Lecture 10, February 17, 2014 Mohammad Hammoud Last Session: DBMS Internals- Part I Today Today s Session: DBMS Internals- Part II Brief summaries

More information

COMP 202. More on OO. CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading

COMP 202. More on OO. CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading COMP 202 CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading More on OO COMP 202 - Week 7 1 Static member variables So far: Member variables

More information