Fading Coder

One Final Commit for the Last Sprint

Understanding Linux Signals: A Comprehensive Guide

1. Signal Fundamentals Signals in Linux are software interrupts delivered to a process by the operating system or other processes. They serve as notifications that a particular event has occurred, requiring attention or action from the receiving process. When a process receives a signal, it can: Exe...

STM32 LED Blinking with Assembly on Linux

Setting Up Embededd Development Environment To develop STM32 applications on Linux, configure the ARM GNU toolchain for cross-compilation. Download the latest ARM GNU Toolchain from Arm Developer and extract it to /opt/gcc-arm-none-eabi. Add the binary path to your shell configuration: export PATH=$...

Comprehensive Guide to Linux Command Line Operations

Linux vs. Windows Linux offers several advantages over Windows in server and development environments: Stability and Efficiency: Known for high uptime and efficient resource utilization. Cost: Generally free and open-source, though enterprise support may incur costs. Security: Fewer vulnerabilities...

Essential Linux Command-Line Text Processing Utilities

Core Text Processing UtilitiesLinux systems rely heavily on text manipulation, governed primarily by three tools known as the 'text processing triad': grep, sed, and awk.grep: Searches text using patterns defined by regular expressions.sed: A stream editor for filtering and transforming text.awk: A...

Linux File I/O Fundamentals: Descriptors, System Calls, and Positional Control

Linux treats all I/O resources uniformly through the file abstraction—regular files, pipes, devices, and sockets are all accessed using the same interface. At the core of this model lies the file descriptor: a small non-negative integer that serves as an index into a per-process table of open files...

RISC-V Assembly Programming with openEuler on QEMU

Introduction to openEuler for RISC-V Development This guide provides a comprehensive approach to setting up a RISC-V development environment using openEuler Linux distribution. After working extensively with various distributions on RISC-V architecture, I found that openEuler offers superior stabili...

Linux Process Lifecycle and Administration

Understanding Process Execution In Linux environments, a clear distinction exists between a program and a process. A program is a static executable file stored on the disk, such as a binary located in /usr/sbin/. Conversely, a process represents the dynamic execution of that program. It has a lifecy...

Understanding Shell Types and Environment Configuration in Unix-like Systems

In Unix-based operating systems (including Linux distributions and macOS), the shell serves as an intermediary between users and the kernel. Commands typed at the keyboard are parsed by the shell and forwarded to the kernel for execution. 1 Unix Shell Variants Modern Unix systems typically include m...

Newly Created User Cannot Log in to Linux Graphical Desktop: A Step-by-Step Fix

Creating Users in Linux and Enabling Graphical Login Many Linux beginners encounter a problem after creating a new user: they can switch to the user in a terminal but cannot log in to the graphical desktop. This usually happens because the user is created without a proper home directory or sufficien...

GNU/Linux Fundamentals

Console Shell Superuser root CLI management tools File Fundamentals Directories Links Device files Console Shell When you start a Linux system without a graphical interface, you are placed in a CLI GUI (Graphical User Interface): interaction via visual windows, using mouse priamrily, keyboard secon...