Tagged articles
5 articles
Page 1 of 1
Liangxu Linux
Liangxu Linux
Feb 26, 2025 · Fundamentals

How Can a Function Jump to an Uncalled Routine? Exploring Stack Tricks and Process Switching

The article explains how operating‑system multitasking and process switching share the same underlying mechanism as function calls, demonstrates a C program that overwrites a return address to jump to an unexpected function, and shows the resulting assembly to illustrate the similarity between buffer‑overflow attacks and legitimate context switches.

AssemblyC programmingbuffer overflow
0 likes · 7 min read
How Can a Function Jump to an Uncalled Routine? Exploring Stack Tricks and Process Switching
IT Architects Alliance
IT Architects Alliance
Nov 28, 2021 · Fundamentals

Understanding Synchronization, Blocking, and I/O Models in Linux

This article explains the concepts of synchronous vs. asynchronous execution, blocking vs. non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various Linux I/O models such as select, poll, epoll, signal‑driven and asynchronous I/O.

BlockingIO modelsLinux
0 likes · 15 min read
Understanding Synchronization, Blocking, and I/O Models in Linux
Architects' Tech Alliance
Architects' Tech Alliance
Nov 26, 2021 · Fundamentals

Understanding Synchrony, Blocking, Process Switching, File Descriptors, and I/O Models (select, poll, epoll)

This article explains the differences between synchronous and asynchronous execution, blocking and non‑blocking operations, user and kernel space, process switching, file descriptors, cache I/O, and compares various I/O models—including blocking, non‑blocking, multiplexing, signal‑driven, and asynchronous—while highlighting the characteristics of select, poll, and epoll.

BlockingIO modelsNon-blocking
0 likes · 15 min read
Understanding Synchrony, Blocking, Process Switching, File Descriptors, and I/O Models (select, poll, epoll)