Thanks to visit codestin.com
Credit goes to www.scribd.com

100% found this document useful (1 vote)
29 views13 pages

Os 11

The document discusses memory management in operating systems, detailing concepts such as main memory, dynamic loading, swapping, contiguous memory allocation, and memory protection. It explains fragmentation, paging, and segmentation, including their definitions and mechanisms for managing memory efficiently. Additionally, it covers memory allocation strategies like FirstFit, BestFit, and WorstFit, as well as the combination of paging and segmentation for improved memory management.

Uploaded by

longplaceman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
29 views13 pages

Os 11

The document discusses memory management in operating systems, detailing concepts such as main memory, dynamic loading, swapping, contiguous memory allocation, and memory protection. It explains fragmentation, paging, and segmentation, including their definitions and mechanisms for managing memory efficiently. Additionally, it covers memory allocation strategies like FirstFit, BestFit, and WorstFit, as well as the combination of paging and segmentation for improved memory management.

Uploaded by

longplaceman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Operating Systems

(CS-315)
BS(CS/IT) 5th Semester
Lecture No: 11
CS&IT Department
BUET Turbat
Memory Management

• Main Memory refers to a physical memory that is the


internal memory to the computer.
• The word main is used to distinguish it from external mass
storage devices such as disk drives.
• Main memory is also known as RAM.
• The computer is able to change only data that is in main
memory.
• Therefore,
every program we execute and every file we
access must be copied from a storage device into main
memory.
• All the programs are loaded in the main memory for execution.
• Sometimes complete program is loaded into the memory, but some
times a certain part or routine of the program is loaded into the main
memory only when it is called by the program, this mechanism is
called Dynamic Loading, this enhance the performance.
• Also, at times one program is dependent on some other program.
• In such a case, rather than loading all the dependent programs,
CPU links the dependent programs to the main executing program
when its required.
• This mechanism is known as Dynamic Linking.
Swapping

• A process needs to be in memory for execution.


• But sometimes there is not enough main memory to hold all the
currently active processes in a timesharing system.
• So, excess process are kept on disk and brought in to run
dynamically.
• Swapping is the process of bringing in each process in main
memory, running it for a while and then putting it back to the
disk.
Contiguous Memory Allocation

• In contiguous memory allocation each process is contained in a


single contiguous block of memory.
• Memory is divided into several fixed size partitions.
• Each partition contains exactly one process. When a partition is
free, a process is selected from the input queue and loaded into
it.
• The free blocks of memory are known as holes. The set of holes
is searched to determine which hole is best to allocate.
Memory Protection

• Memory protection is a phenomenon by which we control


memory access rights on a computer.
• The main aim of it is to prevent a process from accessing
memory that has not been allocated to it.
• Hence prevents a bug within a process from affecting other
processes, or the operating system itself, and instead results in
a segmentation fault or storage violation exception being sent
to the disturbing process, generally killing of process.
Memory Allocation

• Memory allocation is a process by which computer programs


are assigned memory or space. It is of three types :
• FirstFit: The first hole that is big enough is allocated to
program.
• BestFit: The smallest hole that is big enough is allocated to
program.
• WorstFit: The largest hole that is big enough is allocated to
program.
Fragmentation
• Fragmentation occurs in a dynamic memory allocation system
when most of the free blocks are too small to satisfy any
request.
• It is generally termed as inability to use the available memory.
• In such situation processes are loaded and removed from the
memory.
• As a result of this, free holes exists to satisfy a request but is
non contiguous i.e. the memory is fragmented into large no. Of
small holes. This phenomenon is known as External
Fragmentation.
• Also,
at times the physical memory is broken into fixed size
blocks and memory is allocated in unit of block sizes.
• The memory allocated to a space may be slightly larger than
the requested memory.
• The difference between allocated and required memory is
known as Internal fragmentation i.e. the memory that is
internal to a partition but is of no use.
Paging

• A solution to fragmentation problem is Paging.


• Paging is a memory management mechanism that allows the
physical address space of a process to be non-contagious.
• Here physical memory is divided into blocks of equal size
called Pages.
• The pages belonging to a certain process are loaded into
available memory frames.
Page Table

•A Page Table is the data structure used by a virtual memory


system in a computer operating system to store the mapping
between virtual address and physical addresses.
• Virtual address is also known as Logical address and is
generated by the CPU. While Physical address is the address
that actually exists on memory.
Segmentation

• Segmentation is another memory management scheme that


supports the user-view of memory.
• Segmentation allows breaking of the virtual address space of
a single process into segments that may be placed in non-
contiguous areas of physical memory.
Segmentation with Paging

• Both paging and segmentation have their advantages and


disadvantages, it is better to combine these two schemes to improve
on each.
• The combined scheme is known as 'Page the Elements'. Each segment
in this scheme is divided into pages and each segment is maintained in
a page table.
• So the logical address is divided into following 3 parts :
• Segment numbers(S)
• Page number (P)
• The displacement or offset number (D)

You might also like