What is Context SwitchingΒ 

The article explains context switching and details the roles of the scheduler and kernel during the process. It highlights how efficient context switching is crucial for multitasking in operating systems, allowing multiple processes to share system resources seamlessly. For further insights, the article is available in PDF format.

Read More What is Context SwitchingΒ 

π‘ͺ𝒂𝒄𝒉𝒆 π‘Ύπ’“π’Šπ’•π’† π‘»π’‰π’“π’π’–π’ˆπ’‰ 𝒂𝒏𝒅 π‘ͺ𝒂𝒄𝒉𝒆 π‘Ύπ’“π’Šπ’•π’† π‘©π’‚π’„π’Œ

Modern computing relies on the efficient interaction of components, particularly involving cache memory. This article explores the Write-Through and Write-Back strategies, detailing their operations, benefits, and drawbacks. Understanding these mechanisms enhances knowledge of the performance dynamics that underpin today’s digital environments.

Read More π‘ͺ𝒂𝒄𝒉𝒆 π‘Ύπ’“π’Šπ’•π’† π‘»π’‰π’“π’π’–π’ˆπ’‰ 𝒂𝒏𝒅 π‘ͺ𝒂𝒄𝒉𝒆 π‘Ύπ’“π’Šπ’•π’† π‘©π’‚π’„π’Œ

Ellipsis and Variadic

In C, when a function is called, the arguments are typically placed onto the stack, a region of memory. The function retrieves these arguments from the stack based on the function’s known parameter list. But when the number of arguments is variable, the function needs a way to access these “extra” arguments from the stack. […]

Read More Ellipsis and Variadic

𝑨 π’…π’†π’•π’‚π’Šπ’π’†π’… π’π’Šπ’”π’• 𝒐𝒇 𝑢𝑩𝑱𝑫𝑼𝑴𝑷 π’„π’π’Žπ’Žπ’‚π’π’… π’π’‘π’•π’Šπ’π’π’”

π’π’ƒπ’‹π’…π’–π’Žπ’‘ is a command-line program that is part of the GNU Binutils suite of tools. It’s used primarily for displaying various information from object files, which are typically produced as intermediate files during the compilation of a program. objdump can show information from a wide range of object file formats, including ELF (Executable and Linkable […]

Read More 𝑨 π’…π’†π’•π’‚π’Šπ’π’†π’… π’π’Šπ’”π’• 𝒐𝒇 𝑢𝑩𝑱𝑫𝑼𝑴𝑷 π’„π’π’Žπ’Žπ’‚π’π’… π’π’‘π’•π’Šπ’π’π’”

π‘΄π’†π’Žπ’π’“π’š 𝑨𝒍𝒍𝒐𝒄𝒂𝒕𝒐𝒓𝒔 𝑷𝒂𝒓𝒕 – 𝟐

Memory allocation is like fitting puzzle pieces together in the world of computer programming. Every time a programmer uses commands like malloc or calloc, there’s a lot going on behind the scenes. It’s more than just asking for memory; it’s about making sure everything fits just right and works efficiently with the computer’s hardware. Consider […]

Read More π‘΄π’†π’Žπ’π’“π’š 𝑨𝒍𝒍𝒐𝒄𝒂𝒕𝒐𝒓𝒔 𝑷𝒂𝒓𝒕 – 𝟐

A Deep Dive Into Memory

Dynamic memory allocation functions like malloc(), calloc(), realloc(), and free() are crucial in programming. The improved version, dlmalloc(), is widely adopted due to its efficiency. When called, these functions trigger system calls like brk()/sbrk() and mmap() to allocate memory. Understanding these processes is essential for efficient memory management in programming.

Read More A Deep Dive Into Memory

Memory Allocators PART-II

The “Best Fit” strategy in memory allocation finds the closest match, reducing wasted memory and working well with diverse request sizes. However, it can lead to increased fragmentation over time. While efficient, it may result in many tiny, unusable spaces in memory, posing a trade-off between immediate efficiency and potential long-term fragmentation.

Read More Memory Allocators PART-II

Memory Allocators PART-I

Memory allocation in embedded systems is crucial due to limited memory. Different algorithms like Sequential Fits, Best Fit, First Fit, Next Fit, Good Fit, Segregated Free Lists, Segregated Fits, Buddy System, Indexed Fits, and Bitmapped Fits optimize memory use based on various requirements. Each approach has its pros and cons, making them suitable for different scenarios.

Read More Memory Allocators PART-I

FIND AND GREP

This post provides essential commands for navigating directories on Ubuntu/Linux, making directory navigation easier. The post includes commands for searching for specific patterns within files, filtering by file type, and excluding certain directories. Each command is accompanied by a brief explanation and example. This valuable resource can greatly enhance your Linux command line skills.

Read More FIND AND GREP