Tagged articles
31 articles
Page 1 of 1
Deepin Linux
Deepin Linux
Dec 12, 2025 · Fundamentals

Unlocking ARM64 Memory: How Virtual Addresses Map to Physical Memory

This article explains the fundamentals of Linux arm64 memory management, covering virtual and physical memory concepts, MMU operation, page table structures, address translation steps, page fault handling, and practical C++ examples for allocation, mapping, and performance optimization using huge pages and pre‑paging techniques.

ARM64Memory Managementlinux
0 likes · 38 min read
Unlocking ARM64 Memory: How Virtual Addresses Map to Physical Memory
Xiao Liu Lab
Xiao Liu Lab
Oct 31, 2025 · Databases

Why Redis Exits on ARM64: Fix the THP COW Bug and Prevent Data Loss

Redis on ARM64 platforms may abort startup with a warning about a kernel COW bug when Transparent Huge Pages are enabled, risking RDB corruption; this guide explains the underlying issue, when it’s safe to ignore the warning, and provides two solutions—disabling THP or configuring ignore‑warnings—to ensure safe operation.

ARM64COW bugTransparent Huge Pages
0 likes · 7 min read
Why Redis Exits on ARM64: Fix the THP COW Bug and Prevent Data Loss
Linux Kernel Journey
Linux Kernel Journey
Mar 30, 2025 · Fundamentals

Analyzing KVM Misc Device Initialization and Access on Linux

This article walks through the registration of the KVM misc device in the Linux 5.9 kernel for arm64, explains how /dev/kvm is created via misc_register, and demonstrates a user‑space program that opens the device and uses an ioctl to retrieve the KVM API version, with detailed code analysis.

ARM64KVMLinux kernel
0 likes · 13 min read
Analyzing KVM Misc Device Initialization and Access on Linux
Linux Kernel Journey
Linux Kernel Journey
Mar 3, 2025 · Fundamentals

Understanding KVM Hyp Mode Memory Mapping Initialization

This article walks through the step‑by‑step initialization of KVM's hyp mode memory mapping on ARM64, covering EL2 register setup, identity mapping, page‑table allocation, stack preparation, and code section mappings required for a functional hypervisor environment.

ARM64EL2KVM
0 likes · 13 min read
Understanding KVM Hyp Mode Memory Mapping Initialization
Linux Kernel Journey
Linux Kernel Journey
Jan 18, 2025 · Fundamentals

Understanding Type‑1 vs Type‑2 Hypervisors on ARM64

The article explains how Type‑1 and Type‑2 hypervisors differ in their use of ARM64 exception levels, outlines their shared responsibilities such as resource, scheduling, and device management, and compares their architectures and performance through a serial‑port example, highlighting the trade‑offs of each approach.

ARM64KVMVirtualization
0 likes · 7 min read
Understanding Type‑1 vs Type‑2 Hypervisors on ARM64
Linux Kernel Journey
Linux Kernel Journey
Dec 16, 2024 · Fundamentals

eBPF Talk: Manually Performing Backtrace in arm64 fentry

The article explains why backtracing with eBPF fentry on arm64 is harder than on x86, details the stack layout differences, shows how recent commits changed register saving, and provides a practical detection routine to locate the frame pointer and retrieve the tracee's instruction pointer.

ARM64BPFbacktrace
0 likes · 5 min read
eBPF Talk: Manually Performing Backtrace in arm64 fentry
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Dec 6, 2024 · Fundamentals

Developing a Bare-Metal OS for ARM64 Architecture

This guide walks developers with C and assembly experience through building a simple bare‑metal operating system that runs directly on ARM64 hardware without any existing OS or bootloader, offering a hands‑on introduction to low‑level system concepts for students, embedded engineers, and computer‑system enthusiasts.

ARM architectureARM64Bare Metal
0 likes · 9 min read
Developing a Bare-Metal OS for ARM64 Architecture
Linux Code Review Hub
Linux Code Review Hub
Jul 25, 2024 · Fundamentals

How openEuler 24.03 LTS’s Dynamic Composite Page Boosts Memory Performance

The openEuler 24.03 LTS release introduces a dynamic composite page (large folio) that retains 4 KB base‑page compatibility while enabling 64 KB page performance gains, reducing TLB misses and memory overhead, and delivering double‑digit benchmark improvements for big‑data, Kafka, MySQL, I/O and memory‑allocation workloads.

ARM64Linux kernelMemory Management
0 likes · 11 min read
How openEuler 24.03 LTS’s Dynamic Composite Page Boosts Memory Performance
Sohu Tech Products
Sohu Tech Products
Mar 27, 2024 · Mobile Development

How to Convert Intel macOS Libraries to arm64 for Apple Silicon Simulators

This guide explains why Intel‑based macOS libraries need architecture conversion for Apple Silicon simulators, compares XCFramework and Rosetta solutions, and provides a step‑by‑step method using lipo, ar, and custom Swift code to replace load commands and rebuild arm64 binaries for simulator use.

ARM64BinaryMach-O
0 likes · 9 min read
How to Convert Intel macOS Libraries to arm64 for Apple Silicon Simulators
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Jan 5, 2024 · Fundamentals

Read‑Write Semaphore (rw_semaphore) and Per‑CPU rwsem in the Linux Kernel (ARM64)

The article explains Linux kernel read‑write semaphores, detailing the classic rw_semaphore’s optimistic‑spinning and hand‑off mechanisms, then introduces the per‑CPU rwsem for ARM64, which replaces global counters with per‑CPU data and an RCU fast‑path to cut cache‑coherency traffic at the cost of losing optimistic spinning.

ARM64Linux kerneloptimistic spinning
0 likes · 12 min read
Read‑Write Semaphore (rw_semaphore) and Per‑CPU rwsem in the Linux Kernel (ARM64)
Deepin Linux
Deepin Linux
Oct 21, 2023 · Fundamentals

Step-by-Step Guide to Building and Debugging an ARM64 Linux Kernel with QEMU

This tutorial details how to set up a cross‑compilation toolchain on Ubuntu 20.04, install QEMU, build a BusyBox‑based root filesystem, compile and configure the ARM64 Linux kernel, create a simulated disk, share files between host and guest, and perform kernel debugging using GDB and Eclipse.

ARM64Debuggingcross-compilation
0 likes · 15 min read
Step-by-Step Guide to Building and Debugging an ARM64 Linux Kernel with QEMU
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 22, 2023 · Fundamentals

18th China Linux Kernel Developer Conference (CLK 2023) Call for Papers

The 18th China Linux Kernel Developer Conference (CLK 2023) will be held in Shenzhen on October 28, 2023, hosted by OPPO, and invites Linux kernel developers to submit technical papers (open call from September 22, deadline October 10) on topics such as architecture, scheduling, memory, storage, networking, virtualization, performance, testing and kernel use in IoT, mobile, automotive, cloud and AI, with required author bio, title and abstract.

ARM64CLK 2023RISC-V
0 likes · 4 min read
18th China Linux Kernel Developer Conference (CLK 2023) Call for Papers
ByteDance SYS Tech
ByteDance SYS Tech
Jan 13, 2023 · Fundamentals

How HVO Cuts HugeTLB Memory Overhead by Up to 99% in Linux Kernels

This article, based on ByteDance STE’s 2022 Linux Kernel Developer Conference talk, explains the HVO (HugeTLB vmemmap Optimization) feature that dramatically reduces struct page memory for huge pages, details its latest enhancements, cross‑architecture support, usage steps, performance trade‑offs, and future plans.

ARM64HVOHugeTLB
0 likes · 13 min read
How HVO Cuts HugeTLB Memory Overhead by Up to 99% in Linux Kernels
21CTO
21CTO
Nov 9, 2022 · Backend Development

What’s New in .NET 7? Key Features, ARM64 Support, and Cloud‑Native Enhancements

Microsoft announced the official release of .NET 7 on November 9, highlighting major enhancements such as improved Base Class Library, native ARM64 support, expanded Linux and IBM Power compatibility, integrated .NET MAUI and Blazor updates, and streamlined container and Azure cloud‑native capabilities.

.net-7ARM64Backend Development
0 likes · 6 min read
What’s New in .NET 7? Key Features, ARM64 Support, and Cloud‑Native Enhancements
21CTO
21CTO
Aug 12, 2022 · Backend Development

Why .NET Framework 4.8.1’s Native Arm64 Support Matters for Developers

Microsoft’s .NET Framework 4.8.1 update, bundled with Visual Studio 2022 17.3, introduces native Arm64 support and official Arm64EC compatibility, enabling legacy .NET apps to run directly on Arm64 hardware without emulation, while dropping support for older Windows versions and providing new download links.

ARM64Frameworkdotnet
0 likes · 4 min read
Why .NET Framework 4.8.1’s Native Arm64 Support Matters for Developers
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Aug 5, 2022 · Operations

Understanding Linux ftrace Function Graph Tracer on ARM64

The article details how Linux’s function‑graph ftrace tracer works on ARM64, explaining required kernel configs, how -pg inserts _mcount calls, the runtime patching of ftrace_graph_caller, register usage for argument passing, and return handling, and why shadow‑call‑stack must be disabled to enable precise call‑graph and timing analysis.

ARM64ftracefunction graph
0 likes · 10 min read
Understanding Linux ftrace Function Graph Tracer on ARM64
Laravel Tech Community
Laravel Tech Community
Aug 2, 2022 · Fundamentals

Linus Torvalds Releases Linux 5.19, First ARM64 Release on Apple M2 via Asahi Linux

Linus Torvalds announced the stable Linux 5.19 kernel, built on an Apple M2‑based ARM64 MacBook with Asahi Linux support, highlighting new features such as LoongArch support, FAT32 timestamps, AMD BRS sampling, RISC‑V 32‑bit compatibility, Zstd firmware compression, and a substantial increase in graphics driver code.

ARM64Asahi Linuxapple-m2
0 likes · 3 min read
Linus Torvalds Releases Linux 5.19, First ARM64 Release on Apple M2 via Asahi Linux
Liangxu Linux
Liangxu Linux
Nov 18, 2021 · Fundamentals

Why Does Linux Use Preemptible Kernels? A Deep Dive into Kernel Preemption Mechanics

This article explains the technical details of Linux kernel preemption, covering the difference between preemptible and non‑preemptible kernels, the role of the reschedule flag and preempt count, scheduling checkpoints and preempt points, low‑latency handling in non‑preemptible kernels, and the voluntary preemption model.

ARM64CFSOperating System
0 likes · 20 min read
Why Does Linux Use Preemptible Kernels? A Deep Dive into Kernel Preemption Mechanics
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 24, 2021 · Fundamentals

Overview of KVM and ARM64 Virtualization: Architecture, CPU, Memory, and I/O Virtualization

KVM turns the Linux kernel into a hypervisor that, together with QEMU, provides hardware‑assisted CPU and memory virtualization on ARM64 platforms, using EL2‑based Stage‑2 address translation, while offering multiple I/O virtualization methods such as emulation, virtio, device passthrough, and shared assignment for flexible guest performance and isolation.

ARM64KVMQEMU
0 likes · 9 min read
Overview of KVM and ARM64 Virtualization: Architecture, CPU, Memory, and I/O Virtualization
Tencent Music Tech Team
Tencent Music Tech Team
Feb 4, 2021 · Mobile Development

Adapting the QQ Music/Karaoke Android App to Arm64 Architecture

The QQ Music/Karaoke team migrated their Android app from 32‑bit to Arm64‑v8a by reconfiguring Gradle builds, recompiling or replacing over 120 native libraries, extending the dynamic‑resource loader for ABI selection, implementing ABI‑aware update channels, and fixing issues such as library path limits, I/O reliability, camera latency, and WebView cache corruption, completing the transition in early 2021.

ARM64AndroidBuild configuration
0 likes · 27 min read
Adapting the QQ Music/Karaoke Android App to Arm64 Architecture
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Jun 12, 2020 · Fundamentals

Linux Kernel Virtual Memory Management: Process Virtual Address Space and Allocation

The article explains Linux kernel virtual memory management on 64‑bit ARM64 Android systems, detailing user‑ and kernel‑space address layout, physical vs. linear addresses, allocation mechanisms such as brk and mmap, common allocators, key structures like mm_struct and vm_area_struct, and the functions that control mmap layout and unmapped‑area selection.

ARM64ASLRKernel Internals
0 likes · 20 min read
Linux Kernel Virtual Memory Management: Process Virtual Address Space and Allocation
Tencent TDS Service
Tencent TDS Service
Dec 6, 2018 · Mobile Development

Why IMP Calls Crash on ARM64 iOS: Uncovering Variadic ABI Pitfalls

This article investigates a crash caused by calling IMP pointers on ARM64 iOS devices, explains how variadic function argument passing differs from the standard ABI, demonstrates the issue with test code and assembly analysis, and provides a solution by explicitly casting IMP to the correct function type.

ARM64IMPObjective‑C
0 likes · 16 min read
Why IMP Calls Crash on ARM64 iOS: Uncovering Variadic ABI Pitfalls