This document provides an overview of memory management techniques in operating systems, including segmentation and paging. It discusses segmentation, where memory is divided into logical segments of variable sizes. Paging is also covered, where memory is divided into fixed-size pages that can be placed non-contiguously in physical memory frames. The document describes segmentation and paging hardware, address translation, and protection mechanisms. It provides examples of memory management on Intel and ARM architectures.