1. Fragmentation :
Fragmentation, as name suggests, is basically a process in which free memory space is broken into little pieces. In this, memory blocks cannot be allocated to processes due to their small size and such blocks remain unused. It usually occurs in dynamic memory allocation system when many of free blocks are too small to satisfy any request.
2. Segmentation :
Segmentation, as name suggests, is basically a memory management technique that supports user’s view of memory and is also known as non-contiguous memory allocation technique. In this, each process is divided into number of segments and detail about each segment can be stored in table that is known as segment table. It is basically a process that creates variable-sized address spaces in computer storage for related data. Segments are not fixed in size.
Difference between Fragmentation and Segmentation in OS : Fragmentation Segmentation
In this, storage space is used inefficiently that in turn reduce capacity and performance. In this, memory is divided into variable size parts usually known as segments. Types of fragmentation includes internal and external fragmentation. Types of segmentation includes virtual memory and simple segmentation. Its main purpose is to help operating system use the available space on storage device. Its main purpose is to give user’s view of process. It reduces efficiency in memory management. It simply allows for better efficiency in memory management. In this, memory blocks are not used i.e., it remains unused. It usually works a memory management technique to execute processes. It is generally associated with IP. It is generally associated with TCP. It is an unwanted problem that causes wastage of memory and inflexibility. Its advantages include less overhead, larger segment size than actual page size, no internal fragmentation, etc.