subject

Giorgio's Discrete Event SimulatorDescriptionWe have been discussing virtualization, concurrency and the sharing of resources by the operating system. In order for the OS to enable the use of a single resource, it must provide a way to allocate the resource to a process and then release the resource when the process has finished using it. Since many processes may want to use the resource, there needs to be a mechanism for the OS to organize and order the use of the resource. This can be accomplished by having an ordered list of processed waiting to use the resource and choosing a user process from the list of waiters when the resource becomes available. At the same time, a process moves through various states; walting to use the CPU, executing and crunching numbers using the CPU, waiting for a request for the disk to complete a read or write, waiting for a user to click on something with a mouse, etc. We will study the various states that a process can move through and the relationships between states, later in the course. The purpose of this assignment is to gain some understanding of how processes move through a computing system and to put into practice some things that you've learned in 2107 and 2168, but might not have had a chance to use in a while. In this assignment, you'll create a discrete event simulation (Links to an external site.) in C that models the very simplified machine pictured below. The diagram shows the flow of a process through the different states in its execution history. It also shows that a process must wait to use a resource if the resource is in use or busy. [Some additional information about discrete event simulation is in Supplemental Information: Discrete-Event Simulation Problem]When a job arrives (perhaps because a user double-clicked on an icon to start a program), the job needs to spend some amount of time executing using the CPU. The job then either performs I/O on one of two disks, or sends a message to the network and returns to use the CPU, or the job is finished. Jobs alternate between the CPU and I/O devices in this manner until they're finished. It's possible that when a job arrives to use a device, the device is busy servicing another task. In this case, the job must wait in a queue until the device is no longer busy. For this project, all of your device queues are FIFO, however, this is not necessarily the case in real systems. For this assignment, we'll frequently note or record the time; however, we'll use a "logical clock"\ and think of things in terms that sound like, "at time 37, job 6 spent 5 units of time at the CPU" rather than "at 2:30:01 PM, job 6 spent 300 microseconds at the CPU".In your simulation, the amount of time that a job spends using the CPU, whether or not it's finished (i. e., has more computing to do), which disk contains the file a job needs, or whether to use thenetwork, and many other properties are determined at runtime, as random intervals. To generaterandom numbers in C, take a look at the Standard C Library functions rand() and srand() (so that your program doesn't use the same pseudo-random numbers in each run). Basic Mechanism The cycten behaves follower​

ansver
Answers: 3

Another question on Computers and Technology

question
Computers and Technology, 21.06.2019 18:40
Access defaults to searching for information on the
Answers: 1
question
Computers and Technology, 22.06.2019 15:10
Consider a direct-mapped cache with 216 words in main memory. the cache has 16 blocks of 8 words each. it is a word-addressable computer (rather than a byte-addressable computer which we normally discuss). (a) how many blocks of main memory are there? (b) what is the format of a memory address as seen by the cache, that is, what are the sizes of the tag, cache block, and block offset fields (if they apply)? (c) to which cache block will the memory reference db6316 map?
Answers: 1
question
Computers and Technology, 23.06.2019 06:00
Respond to the following in three to five sentences. select the workplace skill, habit, or attitude described in this chapter that you believe is most important for being a successful employee.
Answers: 1
question
Computers and Technology, 23.06.2019 07:30
Which option allows you to view slides on the full computer screen?
Answers: 1
You know the right answer?
Giorgio's Discrete Event SimulatorDescriptionWe have been discussing virtualization, concurrency and...
Questions
Questions on the website: 13722363