Highlights
1 Objectives
There are three key objectives for this assignment:
• Understand how a real problem can be mapped to various representations and their operations.
• Use a number of fundamental data structures to implement the runqueue abstract data type.
• Evaluate and contrast the performance of the data structures with respect to dif- ferent usage scenarios and input data.
2 Overview
Scheduling is the process of arranging, controlling and optimizing tasks and workloads. In computing, scheduling concerns about which task is assigned to resources that complete the task. The task may be virtual computation elements such as threads, processes or data flows, which are in turn scheduled onto hardware resources such as processors, network links or expansion cards [2]. Scheduling is an intrinsic part of the execution model of a computer system. It makes it possible to have computer multitasking with a single central processing unit (CPU). For more detailed information about scheduling, please refer to [2].
A process scheduler carries out the scheduling activity in an operating system. It arranges active processes in a runqueue. The runqueue represents a timeline for the
scheduled processes. For example, the Completely Fair Scheduler (CFS) is a process scheduler for the 2.6.23 (October 2007) release of the Linux kernel. Schedulers like the CFS keep track of time (in nanoseconds) a process has executed on processor, called vruntime. In this assignment, we will implement and analysis CFS types of schedulers that keep track of vruntime of a process. Processes that has got a small amount of time are boosted to the front of the runqueue to get the processor, those who got bigger amount of time are thwarted [1]. When the scheduler is invoked to run a new process: the process with the lowest vruntime from the runqueue is chosen, and sent for execution, then1. If the process simply completes execution, it is removed from the runqueue
2. Otherwise, if it is interrupted for a reason, it is reinserted into the runqueue based on its new vruntime. If there are multiple processes has the same vruntime, they follow a First-In-First-Out (FIFO) ordered.
This type of schedulers commonly require efficient data structure implementation of the runqueue to schedule new process, delete process, track process information and high- performance code to generate the schedules. Despite the name, the runqueue need not be implemented in the traditional way, e.g., as an array. In this assignment, wedefines the runqueue as an abstract data type similar to a PriorityQueue and consider the following two representations:
• The Sequential Representation
• The Tree Representation
We will implement both representations for the runqueue and evaluate how well they perform when representing some given runqueues and compute the average speed of various operations.
4 Tasks
The assignment is broken up into a number of tasks, to help you progressively complete the project.
3.1 Task A: Implement the runqueue representations and its operations
In this task, you will implement the runqueue using linear and tree representations, respectively. Each representation will be implemented by various data structures. Each element of the runqueue represents a process to be scheduled, containing a process label, and its vruntime.
3.1.1 Data Structure Details
In this assignment, each element of the runqueue (i.e., process) will be represented with an abstract data type Proc that consists of the following information:
This IT/Computer Assignment has been solved by our IT Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+ Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style. Be it a used or new solution, the quality of the work submitted by our assignment experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.
© Copyright 2026 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.