Memory Management in Operating Systems

Verified

Added on  2019/10/01

|9
|2696
|265
Report
AI Summary
Memory management is a crucial aspect in computer operating systems, which ensures that all memory is stored effectively. The assignment discusses various aspects of memory management, including segmentation, paging, and allocation. It highlights the importance of memory protection, fragmentation, and page tables in managing memory efficiently. Additionally, it explains different types of memory allocation schemes, such as first fit, best fit, and worst fit. The conclusion emphasizes the significance of understanding these concepts to make effective decisions about memory allocation and recycling.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: Blog Writing
BLOG WRITING

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Running head: Blog Writing
MEMORY MANAGEMENT
July 23rd, 2019
INTRODUCTION TO MEMORY MANAGEMENT
Memory management is being regarded as the type of resource management which
applies to computer memory. In accordance with the given context, it can be depicted that
Memory management is the systematic process in which computer memories are controlled as
well as coordinated. Here, different portions are called blocks that are being used for the purpose
to run the various programs in order to optimize the overall performance of the system in an
effectual way. In the operating system, Memory management plays a vita role. This is because;
it assures that the memory of the computer should not be filled with the data. Thus, here we will
carry out major discussion on the given aspect only and learn more about the major concepts that
are being related to Memory management in an efficient way.
KEY AREAS OF MEMORY MANAGEMENT
Memory management is being recognized as one of the most complex fields of computer
science. Hence, there is a number of techniques have been developed with an aim to make the
respective function more efficient in nature. There are three major areas in which the whole
Memory management is divided. The details about the same are depicted below:
Hardware memory management
The very first area related to Memory management is hardware memory management.
Herein, it can be depicted that hardware memory management is concerned with the hardware
devices. In other words, it can also be said that it is basically related to the electronic devices that
store the data of the computer. This includes devices like RAM (Random Access Memory) and
caches memory.
Operating system memory management
It is being regarded as another form of Memory management. In this regard, in the
operating system, the memory of the computer should be allocated to the user program.
However, it is being reused by another program when it will be seen that the memory is no
longer will be required. Herein, the computer can also pretend that it has more memory to store
than the actual capacity. On the other hand, each program that is involved in it has the machine
1
Document Page
Running head: Blog Writing
memory. Thus, these are being regarded as the main feature of the virtual memory that is also
one of the most important concepts in the computer program.
Application memory management
Another key area of Memory management is application memory management. It
basically involves the process of supplying the memory that is being needed for the data
structure and program objects. Here, the memory is recycled when it is of no use or when it is no
longer required. The application memory does not possess the capability to predict how much
memory it will require. It basically possesses two types of tasks such as allocations and
recycling.
Allocation: This happens when the program requests the block of the memory, thus in the
respective situation the memory manager has to allocate the blocks out of the larger
blocks that have been received by it from the operating system. The respective function
which is being performed by the individual is called by the name of allocators.
Recycling: It is another task of application memory. In this, the blocks are recycled for
the reuse purpose when the memory blocks are allocated and the data which they possess
is no longer required. This includes two basic approaches of the recycling memory and
these are manual memory management and automatic memory management.
PROBLEMS RELATED TO MEMORY MANAGEMENT
However, before getting details about the manual and automatic memory management, it
is very much important for the individual that they should get the idea about the main problems
that are related to the concepts such as Memory management in an effectual way. By getting an
idea about the same, some more main details about the Memory management can be gathered.
The detail explanations of the same are given below:
Premature fees and the dangling pointers: There are many programs that tend to give up
the memory, however, they still make an attempt to access it later and behave randomly.
The given type of situation is called by the name of premature fees. But, the surviving
reference to the memory is called as the dangling pointers in an effectual way.
Memory leak: It is another issue that is related to memory management. In accordance
with the given context, there are some programs that continually allocate the memory
2
Document Page
Running head: Blog Writing
without giving up on the same and as a result of this, they will run out of the memory.
The respective type of condition is called as the memory leak.
The poor locality of the references: It is another problem that comes from the layout of
the allocated blocks. Here, modern hardware and the manager of the operating system
handle the memory. The access to the successive memory is faster when it is very much
near to the memory locations.
Inflexible design: The manager of memory can also cause the serve performance
problem. This happens when they are being designed with the one use in mind but
actually, they are being in different ways. The given problem will occur because here the
solutions of memory management tend to make the varied type of assumptions in relation
to the manner in which program is being used. Therefore, it is very correct to say that
these are some main problems that are related to Memory management.
ABOUT MANUAL MEMORY MANAGEMENT
As discussed above also that the recycling can be done in two way and thus in this
section discussion is being carried out in relation to the manual memory management. In the
given type of memory management, the programmer will tend to have direct control over the
memory, thus it has to make a decision that when memory should be recycled. The given thing is
usually done by explicit calls with an aim to heap the management functions or it is done through
the language construct that will have influence over the control stack. In this regard, it can be
depicted that the main feature of the manual memory manager is to state the program to say
different things such as “Have the memory has a back” or “am I finished with it”. The
advantages and disadvantages that are associated with the same are depicted below:
Advantages of manual memory management program
For the programmer, it is very much easier to get the idea that what is exactly going on
There is some manual memory manager that tends to perform better when they are short
of the memory.
Disadvantages of manual memory management program
The programmer here has to write so many codes with an aim to perform the repetitive
bookkeeping of the memory in an effectual way.
3

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Running head: Blog Writing
It should form a significant part of any type of module interface.
It also requires more memory per the overhead object instead of others.
The bugs that are being identified in the manual memory management are very much
common. Thus, it can be said that these are some main advantages and disadvantages of
manual memory management.
ABOUT AUTOMATIC MEMORY MANAGEMENT
It is another type of Memory management. The automatic memory management is
basically the type of service or it is the part of the language that automatically recycles that
specific memory that the computer program will not use again. The managers of the automatic
memory usually perform their job of doing recycling the blocks that are not reachable from the
program variables. However, there are some advantages as well as disadvantages are also being
assessed in relation to automatic memory management. The details of the same are given below:
Advantages of automatic memory management
The programmer of the given memory is freed to work on the actual problem in an
effectual way.
There is very much clear modular interface.
The bugs that are being involved in it are not that much.
It is more efficient in comparison to the other type of memory management.
Disadvantages of automatic memory management
The memory here is retained, but it is of no use for the users.
At present, there is very much limited availability is being seen in relation to the memory
manager.
BASIC CONCEPTS RELATED TO MEMORY MANAGEMENT
In order to know more about memory management, it is very much important for the
individual that it should have an idea about the main concepts that are related to memory
management. This is because it is by complying with a given type of activity only more details
about the memory management can be gathered. The details about the major concepts are
depicted below:
Swapping
4
Document Page
Running head: Blog Writing
The very first concept of memory management is swapping. It is the type of process
which is being required in memory for the execution purpose. But, many times this happens that
there is not enough main memory left with an aim to hold all the active processes in the
timesharing type of system. Thus, it is due to the presence of respective aspect only the access
processes are being kept on the desk and afterward, they are brought in for the purpose to run it
dynamically. In simple words, it is very right to say that swapping is the systematic process to
bring each and every process in the main memory, they are being run for the while and
afterward, they are again being put up in the disk.
Contiguous memory allocation
In the contiguous memory allocation, each process is being contained in the single
contiguous block of the memory. Herein, it can be said that in the respective approach the
memory of the computer is being divided into several fixed partitions. On the other hand, each
partition that is being involved in it tends to possess one process. Thus, when the partition is free
then in this situation from the process queue, an input is selected and the same thing is loaded in
it. The free blocks in the memory are being called by the name of holes. Further, different sets of
holes are searched in order to examine which specific hole is good.
Memory protection
In memory management, it is also considered as another most important aspect. It is
basically the type of phenomenon which enables an individual to carry out control over memory
access rights on the computers. The main aim of the given protection is to prevent the processing
of that specific memory that has not been allocated to it in an effectual way. Thus, it is through
this way only it prevents the bugs within the process that is being affected by another process.
Further, the results of segmentation faults are being used in order to disrupt the whole process.
Memory allocation
It is the systematic process with the help of which computer program are being assigned
with the memory or space. It is of three types such as first fit, best fit, and the worst fit. The first
fit is the first hole that is very much big enough to allocate to the program. Moreover, the best fit
is the smallest hole that is very much big enough to allocate to the program. Apart from this, the
last fit is the worst fit that will have the largest hole that is very much big enough to allocate to
the program.
5
Document Page
Running head: Blog Writing
Fragmentation
It is being considered as one of the most important concepts of memory management.
This will occur in the dynamic memory allocation system in which many of the free blocks are
very much small with an aim to satisfy any kind of request. In other words, it can be said that
fragmentation is also called as the activity which is not able to use available memory of
computer effectively.
Hence, in the respective type of condition processes are being removed and loaded from
the memory. Thus, due to the presence of given aspect free holes are exist to satisfy the mistakes
but actually, they are non contiguous which means that memory is being fragmented into a large
number of the small holes. The whole process is called by the name of external fragmentation in
an effectual manner.
Apart from this, there are many times it happens when the physical memory is being
broken down into the fixed-size blocks. In this type of condition, the memory is being allocated
in the unit size of blocks. The memory which is allocated in it is slightly larger than the
requested memory. The difference that exists between allocated and required memory is called
by the name of internal fragmentation.
Page table
A page table is being regarded as the type of data structure that is being used by the
virtual memory system in the operating system of the computer. This is done with an aim to store
the mapping between both physical address and the virtual address. Herein, it can be depicted
that virtual address is also called by the name of logical address and it is being generated by the
CPU (Central Processing Unit). But, the physical address is the type of address that actually
exists in the memory.
Paging
It is also being considered as the main solution to all type of fragmentation problem. The
paging is basically the type of memory management mechanism that will allow the physical
address space of the process to be non-contiguous. The physical memory of the computer is
being divided into blocks that are of even size. This is called by the name of pages in an effectual
way. Moreover, the pages belong to the certain processes that are being loaded in the available
memory frames.
6

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Running head: Blog Writing
Segmentation
It is also being regarded as another concept of memory management. The given scheme
will basically give support to the user-view of memory. The segmentation will allow the
breaking of the virtual address space of the single process into different segments that are being
placed in the non-contiguous area of the physical memory. Thus, it is very right to say that by
having the clear idea about these all given major concepts an individual can get detailed insight
in the memory of the computer system and thus it can also gather different type of ideas in
relation to the same in an effectual way.
7
Document Page
Running head: Blog Writing
CONCLUSION
From the whole analysis, it can be concluded that in the operating system of the computer
Memory management has a vital role. This is due to the reason that it assures that all the
memory of the computers should be stored in an effectual manner. Further, by having the idea
about the main areas of Memory management, the programmer can make an effective decision
in relation to the allocation as well as recycling of the memory in an efficient way. Further, by
having good knowledge about the concepts of Memory management, the programmer can assess
a quick solution to the problem. Further, with the help of mentioned concepts detailed knowledge
about memory management can be gained.
8
1 out of 9
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]