- Tag · algorithms-

2020

A comprehensive technical guide to Operating System memory management. This article explores the abstraction of physical RAM into logical address spaces, detailing program relocation, contiguous memory allocation algorithms (First Fit, Next Fit), the 50% Rule for fragmentation, and modern techniques like paging, segmentation, and their combination for efficient memory utilization and security.

2019

A comprehensive guide to understanding how operating systems schedule processes. It covers long-term and short-term schedulers, preemptive vs. non-preemptive scheduling, and various algorithms for batch (FIFO, SJN, SRTF), interactive (Round-Robin, Multilevel Feedback), and real-time processes (Rate-Monotonic, Earliest Deadline First). Includes performance analysis like average turnaround time and CPU utilization.

This article provides a comprehensive introduction to algorithm analysis, defining what algorithms are and distinguishing them from actual code implementations. It explores various algorithmic approaches, including deterministic, randomized, optimization, parallel, and distributed paradigms. Furthermore, it examines the critical resources consumed by algorithms—such as time, memory, power, bandwidth, circuitry, idleness, and load—and demonstrates how different data structure implementations (like array-based vs. linked lists) drastically affect performance for operations like insertion and retrieval.