In this project, you will use the what you have studied in the chapter Memory Management & Operating Systems to emulate how operating systems manage memory paging, allocation, deallocation and replacement. Upon completion of this project you will be able to:
Describe how operating systems manage memory
Use simple codes to emulate basic functionalities of operating systems
Sources
This assignment covers material presented in the chapter ‘Memory Management & Operating Systems’. You can refer particularly to the following lessons in order to help you working through your solution:
Memory Allocation Schemes: Definition & Uses
Paged Memory Allocation: Definition, Purpose & Structure
Memory Deallocation: Definition & Purpose
Page Replacement: Definition & Algorithms
Memory Management (MEM) Coding: Analysis & Example
Prompt
Consider the below settings to begin this project and keep them in mind:
Total Memory size = 20 Kbyte
Page size = 1 Kbyte
Run the following list of jobs given the above considerations.
Job ID Start Time Job required size Execution interval Job state at the end of the interval
1 1 2 7 End
2 2 3 8 Sleep
3 3 4 6 End
4 4 3 6 Sleep
5 5 2 9 Sleep
6 6 3 6 Sleep
7 7 2 6 Sleep
Using the functions you studied in the previously mentioned code that implement the different allocation, deallocation and replacement schemes, try three different scenarios in order to manage memory allocation for the following jobs
Job ID Start Time Job required size Execution interval Job state at the end of the interval
8 8 3 4 Sleep
9 9 5 5 Sleep
10 10 2 8 Sleep
11 11 4 6 End
12 12 6 5 Sleep
2 13 3 6 End
4 13 3 4 Sleep
13 13 5 3 End
7 13 2 3 End
9 17 4 4 Sleep
10 19 2 11 End
6 19 3 6 End
5 20 2 10 Sleep
4 21 3 12 Sleep
12 22 6 13 End
8 22 3 9 End
9 28 5 11 End
5 33 2 3 Sleep
4 34 3 10 End
5 38 2 10 End
Show the memory state for the different scenarios and analyze which choice is the best. Discuss the impact that Linux verses Windows might have on the ending memory state.
Here is a link as well just in case:
https://study.com/academy/lesson/operating-systems-assignment-1-solving-memory-management-problems.html