# linux_learn **Repository Path**: remainderyu/linux_learn ## Basic Information - **Project Name**: linux_learn - **Description**: 2026年--全新linux内核之路 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-18 - **Last Updated**: 2026-07-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 整体技术体系总览 **定位**:ARM64 架构下 底层系统 + 安全内核 + 边缘智能 + 虚拟化 全栈技术 **四大主分类**: 1. Linux 内核(ARM64 平台) 2. 边缘人工智能(ARM64 端侧部署) 3. Rust 安全操作系统开发 4. ARM64 平台虚拟化技术 --- # 一、Linux 内核(ARM64 架构) ## 分类1:基础运行环境 & 架构基础 ### 1.1 ARM64 硬件架构基础 - 核心内容:AArch64 寄存器、运行模式、异常/中断体系、MMU 内存管理、缓存机制、多核SMP - 配套学习:ARM64 汇编、芯片手册(RK3568)、设备树(DTS)原理 ### 1.2 Linux 内核基础能力 - 内核编译与移植:Linux 5.10 定制编译、defconfig 配置、交叉编译(aarch64)、镜像/设备树打包、系统启动流程(U-Boot → 内核 → 根文件系统) - 根文件系统:BusyBox / Buildroot 裁剪、文件系统结构、启动脚本 ## 分类2:内核核心子系统 ### 2.1 内存管理 页表、伙伴系统、SLUB/SLOB、OOM、ARM64 地址空间布局 ### 2.2 进程调度 & 实时性 调度器源码、PREEMPT_RT 实时补丁、调度延迟、任务优先级、实时任务调优(适配车载/边缘实时场景) ### 2.3 中断与时钟 硬中断、软中断、中断线程化、中断上下文限制、时钟子系统 ### 2.4 驱动开发(嵌入式落地) 字符设备、平台驱动、GPIO/I2C/SPI/V4L2(摄像头)、NPU 驱动框架、dma-buf 内存共享(AI场景高频) ## 分类3:内核观测 & 性能调优(高阶) - 工具:eBPF、perf、ftrace、npu-smi、内核日志分析 - 实战:内核性能瓶颈排查、调度/中断延迟优化、NPU+CPU 协同调优 - 载体:你之前的 **车载eBPF实时监控工程**、RK3568 NPU 性能调优 --- # 二、边缘人工智能(ARM64 嵌入式平台) ## 分类1:AI 理论与基础工具链 ### 1.1 深度学习基础 CNN 卷积网络、目标检测/图像分类模型原理、模型结构(YOLO、MobileNet)、损失函数、推理基本概念 ### 1.2 数据与图像处理 OpenCV 图像读写、色彩空间转换、图像预处理(缩放/裁剪/归一化)、V4L2+MPP 硬件图像采集(RK平台) ## 分类2:模型转换与量化(边缘核心) ### 2.1 模型链路 PyTorch/TensorFlow 原生模型 → ONNX 中间格式 → 端侧推理模型 ### 2.2 量化技术 INT8/INT4 离线量化、校准数据集、量化精度与速度权衡、模型剪枝/轻量化 ## 分类3:端侧推理框架(按硬件适配划分) ### 3.1 通用推理框架 TensorFlow Lite、ONNX Runtime(ARM64 跨平台通用) ### 3.2 硬件NPU专属框架 瑞芯微 **RKNPU2 / RKNN**(RK3568 主力):模型转换工具、C/Python 推理API、NPU 算子适配 ## 分类4:工程实战场景 - 视觉AI:摄像头实时目标检测、工业缺陷检测、人脸识别 - 系统联动:Linux 应用层 + NPU 推理联合开发、多进程/多线程推理服务 - 实战载体:RK3568 全套AI Demo、自定义业务推理程序 --- # 三、Rust + 安全操作系统(安全OS方向) ## 分类1:Rust 语言底层能力(系统编程向) ### 1.1 Rust 核心语法与安全特性 所有权、借用、生命周期、内存安全、`unsafe` 边界、并发安全、异步编程 ### 1.2 系统级 Rust 编程 裸指针、内存布局、FFI 跨语言调用(Rust ↔ C)、嵌入式Rust、无标准库 `no_std` 开发 ## 分类2:开源 Rust OS 学习与二次开发 ### 2.1 主流项目研读 - ArceOS(星绽):Framekernel 架构、Linux ABI 兼容、Safe Rust 内核、NixOS 适配 - Redox OS:微内核架构、完整桌面/服务生态 - DragonOS:国产宏内核、Linux 二进制兼容、云原生场景 ### 2.2 编译与运行环境 Docker 容器构建 OS 编译环境、交叉编译(ARM64/x86_64/RISC-V)、QEMU 模拟器运行调试 ## 分类3:安全内核设计思想 ### 3.1 内核架构 微内核 / 宏内核 / 混合内核 优劣、可信计算基(TCB)最小化设计 ### 3.2 安全能力 内存安全、漏洞防护、权限隔离、沙箱机制、工业级安全OS落地思路 ## 分类4:实战方向 - 阅读内核源码、新增系统调用、驱动模块适配 - 基于 ArceOS 做功能扩展、ARM64 平台移植优化 --- # 四、ARM64 平台虚拟化技术 ## 分类1:虚拟化基础理论 - 虚拟化类型:全虚拟化、半虚拟化、容器虚拟化 - ARM64 硬件虚拟化扩展:ARM Virtualization Extensions (ARM-VHE)、EL2 异常级别、虚拟机内存/中断虚拟化 ## 分类2:主流虚拟化组件(ARM64 平台) ### 2.1 QEMU QEMU 源码编译(多架构:AArch64/RISC-V/X86)、QEMU 命令行、设备模拟、网络/存储虚拟化 ### 2.2 KVM(Linux 原生虚拟化) ARM64 KVM 架构、虚拟机生命周期、VCPU 调度、内存虚拟化、IO 虚拟化、KVM 调试与性能调优 ### 2.3 容器虚拟化 Docker / Containerd 底层原理、镜像构建(你当前 ArceOS Docker 环境)、容器隔离(Namespace/Cgroup)、ARM64 容器镜像适配 ## 分类3:虚拟化实战场景 1. 开发环境:基于容器搭建跨架构编译环境(Rust OS、内核、AI工具链) 2. 系统仿真:QEMU+KVM 运行 ARM64 虚拟机、多虚拟机集群 3. 边缘虚拟化:边缘设备上虚拟机/容器混合部署、资源隔离 --- # 补充:整体学习路线优先级 & 交叉关联 ## 1. 技术交叉点(重点发力方向) 1. **ARM64 贯穿全部四大方向**:所有技术最终落地在 ARM64 硬件 2. **Linux 内核 + 边缘AI**:NPU驱动、dma-buf、硬件编解码、CPU/NPU 协同调度 3. **Linux 内核 + 虚拟化**:KVM 依赖内核、容器依赖内核隔离技术 4. **Rust OS + 虚拟化**:Rust 内核对接 QEMU/KVM、安全虚拟机隔离 ## 2. 推荐学习顺序(由底向上) 1. 夯实 **Linux 内核(ARM64)** 基础(底层根基) 2. 同步学习 **边缘AI**(业务落地,快速出成果) 3. 进阶 **ARM64 虚拟化**(环境搭建、系统仿真能力) 4. 深耕 **Rust 安全OS**(高阶底层创新方向) ## 3. 个人技术标签总结 **ARM64 架构下:Linux内核研发 + 边缘AI部署 + Rust安全操作系统 + 平台虚拟化 全栈工程师**