自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 资源 (1)
  • 收藏
  • 关注

原创 clone系统调用浅析

本文深入分析了Linux内核的clone系统调用机制。在用户态层面,通过glibc的__clone3函数触发系统调用,但内核并不直接使用用户态传入的入口函数地址,而是通过汇编指令在子线程中调用目标函数。内核态处理流程涉及kernel_clone、copy_process和架构相关的copy_thread函数,通过设置cpu_context结构实现线程上下文切换。文章还探讨了线程栈管理、寄存器上下文保存与恢复机制,并对比了x86和aarch64架构的实现差异,揭示了用户态线程与内核线程创建的底层原理。

2025-07-21 15:00:00 1888

原创 buildroot配置项介绍

Buildroot是一个轻量级的文件系统构建工具,适合嵌入式开发。本文介绍了使用Buildroot为QEMU虚拟板(aarch64架构)构建系统的配置过程。主要内容包括:工具链配置(推荐使用外部自定义工具链)、内核设置(支持自定义内核)、文件系统选项以及常见错误的解决方法(如wget证书验证和内核包哈希校验问题)。配置完成后,生成的系统镜像位于output/images/目录下,可直接用配套的start-qemu.sh脚本启动。相比手动构建rootfs,Buildroot提供了更便捷的自动化方案。

2025-07-21 11:00:00 265

原创 pthread浅析

本文梳理了pthread_create函数的主要实现流程

2025-07-03 15:00:00 770

原创 linux共享内存

本文介绍了Linux系统中的三种共享内存实现方式:SystemV、POSIX和mmap。SystemV使用shmget等接口,可通过ipcs命令查看;POSIX通过shm_open实现,实际存储在/dev/shm中;mmap则通过文件映射实现内存共享,但需要自行处理同步问题。文章分别提供了SystemV和POSIX的读写示例代码,并对比了它们的特点和使用方法。SystemV共享内存可通过ipcs管理,而POSIX共享内存则通过文件系统方式实现,两种机制完全不同。mmap虽非标准IPC方式,但适合处理大块内存

2025-07-03 11:00:00 396

原创 arm设备树基础知识

arm设备树简单节点介绍

2025-04-28 15:00:00 411

原创 ebpf入门程序

ebpf是一种很有趣的技术,早些时候是用于调试网络的(berkeley package filter)因为ebpf的机制是生成字节码交由内核中的虚拟机运行,因此有些调试无需重新编译内核/驱动即可完成。

2025-04-28 10:45:00 590

原创 pl011设备驱动浅析

ARM的公版uart驱动浅析

2025-04-11 15:00:00 704

原创 arm64架构的copy_from_user分析

一谈到内核-用户空间的数据拷贝,那肯定少不了copy_from_user/copy_to_user, 但底层是怎么实现的呢?本篇就来分析一下arm64架构的copy_from_user的流程。

2025-04-11 10:45:00 1074

原创 QEMU入门6:virt板源码分析

前前后后折腾了一年,终于可以入门qemu了QEMU入门1:ubuntu22.04搭建QEMU运行环境QEMU入门2:使用qemu简单的运行一个aarch64 linux内核QEMU入门3:制作initrd、根文件系统QEMU入门4:aarch64虚拟机安装grubQEMU入门5:为virt板引入一个sd-card。

2025-03-27 15:00:00 2034

原创 QEMU入门5:为virt板引入一个sd-card

virt默认不支持mmc设备,如果只是想引入一个sd/mmc设备,那直接在启动脚本里增加一个sdhci-pci,再在内核里新增sdhci-pci的驱动就可以了。本篇记录的是,通过修改virt板代码,引入一个pl181(sdhci),从而引入sdcard的流程。

2025-03-27 11:15:00 832

原创 ubuntu桌面使用技巧

记录一些让ubuntu桌面用起来更顺手的技巧,持续更新。

2025-03-21 11:15:00 289

原创 Docker打包本地服务

docker的使用入门

2025-03-18 15:00:00 1963 1

原创 C语言链接脚本浅析

1] 大部分内容是在讲合并段,比如.interp[2] 少部分内容是声明符号(提供地址)供c库使用。

2025-03-18 11:00:00 617

原创 nginx+ssh通过云服务器配置内网穿透

内网穿透说白了就是要有公网IP,网上的文章推荐的花生壳软件,他肯定也是挑了个公网IP分给你。

2025-03-17 15:00:00 283

原创 人工智能ollama+openwebui导入本地模型

网上查了一些文章,大部分是用ollama去拉取模型。但对于已经下载的模型 ,还拉什么呢?这篇文章记录一下直接导入本地模型的运行方式。

2025-03-17 11:00:00 800

原创 使用gpu加速llama-cpp-python

使用gpu加速llama-cpp-python

2025-03-05 15:00:00 646

原创 将程序同时编译成可执行的动态库(C语言

linux环境下 /lib64/ld-linux-x86-64.so.2这个文件是动态链接器,它既是动态库,又可以执行。

2025-03-05 11:00:00 281

原创 嵌入式linux系统suid提权

在嵌入式系统里,如何给普通用户提权

2025-03-03 15:00:00 262

原创 部署生成式AI大模型

最近deepseek很火,入门一下部署大模型

2025-03-03 11:00:00 281

原创 aarch64页表管理[2] 页操作常用宏及位定义简介

aarch64页操作常用宏及位定义简介

2025-01-15 15:30:00 434

原创 aarch64页表管理[1] 宏定义与头文件概览

aarch64页表管理宏定义与头文件概览

2025-01-15 11:00:00 993

原创 UEFI开发环境搭建

UEFI - grub - initrd - 内核这段启动流程,总得了解一下。

2025-01-01 17:15:21 331

原创 云服务器被部署恶意挖矿程序分析

没想到,2025年的跨年夜居然是在分析恶意程序。

2025-01-01 02:44:51 821

原创 ubuntu安装中文输入法(搜狗 & ibus)

ubuntu上ibus输入法和搜狗输入法的安装

2024-12-16 11:00:00 1792

原创 ubuntu显示器颜色异常问题

ubuntu DP接口显示器颜色异常问题

2024-12-16 11:00:00 1566 4

原创 QEMU入门4:aarch64虚拟机安装grub

网上关于在aarch64的qemu虚拟机使用的磁盘镜像中使用grub的文章较少,我自己摸索了一下

2024-12-02 14:45:00 2265

原创 vmware虚拟机桥接另一台主机

配置一台主机上vmware虚拟机和另一台linux物理机的网络互联

2024-12-02 11:00:00 401

原创 简单文件系统驱动

一个简单的文件系统驱动,以及创建该文件系统的工具

2024-11-07 11:00:00 599

原创 QEMU入门3:制作initrd、根文件系统

QEMU入门1:ubuntu22.04搭建QEMU运行环境QEMU入门2:使用qemu简单的运行一个aarch64 linux内核。

2024-11-05 10:45:00 1020

原创 交叉编译gcc

交叉编译aarch64平台的gcc

2024-11-05 10:30:00 1598

原创 制作交叉编译工具链

通常我们使用交叉编译,都是使用人家做好的交叉编译工具链,但这样没法定制,本篇介绍如何使用crosstool-ng这个工具来自己编译编译工具链;环境 ubutnu22.04。

2024-11-04 10:30:00 1086

原创 linux编译依赖解决汇总

编译时最头疼的就是依赖问题,这里写篇文章汇总一下常见的依赖问题解决方法。

2024-11-04 10:30:00 517

原创 QEMU入门1:ubuntu22.04搭建QEMU运行环境

我的环境经常被人搞坏掉😡,所以写篇文档记录下QEMU编译、运行环境搭建的流程。

2024-10-14 10:30:00 4820

原创 QEMU入门2:使用qemu简单的运行一个aarch64 linux内核

上篇ubuntu22.04搭建QEMU运行环境已经搭好了qemu环境,这篇来使用下。

2024-10-14 10:30:00 1560

原创 vscode-server安装和部分配置

vscode确实彳亍,虽然我觉得Clion(c/c++语言版的IDEA)更方便,但是毕竟我没钱买license;这里记录一下网页版的vscode-server的安装和配置。

2024-07-10 10:30:00 2414

原创 asan检测内存泄漏

ASAN是一个内存问题检测工具;类似的还有valgrind, 但是valgrind运行时会占用非常多的内存。

2024-07-10 10:30:00 1237

原创 Kconfig简介

linux内核Kconfig内容简介

2024-07-09 10:30:00 588

原创 划分带分区的文件系统镜像

学习qemu的时候,需要给虚拟机加一个emmc卡,启动脚本里指定了使用某个分区作为根文件系统;这样只用简单的文件系统镜像就不行了,需要划分分区

2024-07-09 10:30:00 539

原创 wget pip git git-lfs下载失败报错解决

三种常用的工具wget pip git下载失败报错解决。

2024-07-08 10:45:00 736

原创 ext2文件系统浅析

网上关于ext2文件系统的博客有很多,但看完之后还是有些云里雾里,于是我分析了一下数据结构和文件系统镜像二进制数据

2024-07-08 10:30:00 907 1

简单计算器安装包.zip

初学了MFC之后,我利用MFC制作的一个基于对话框的简单计算器。采用逆波兰算法实现带括号的四则运算功能。并利用将其打包,拥有安装和卸载功能。功能不多,但可供学习参考。(我真是醉了,明明设置的是0C币,不知道怎么被自动改成了1C币,还改不回来)

2020-06-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除