Jeff's Lab

-Don't be evil-

Config解释

Code maturity level options 代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择 General setup 常规设置 ...

kernel内存优化调研

kernel内存优化调研

kernel内存优化调研,msm8937 32位,kernel3.18 物理内存加载 //start_kernel()->setup_arch()->early_init_dt_scan_nodes()->early_init_dt_scan_memory() //从dts文件中加载物理内存 early_init_dt_scan_memory() { earl...

Kernel_buddy系统之free_one_page

Kernel5.11.0-rc2 源码: static inline void __free_one_page(struct page *page,unsigned long pfn,struct zone *zone, unsigned int order,int migratetype, fpi_t fpi_flags) { struct capture_control ...

Android网络架构简介

一、 整体架构: 二、 WLAN驱动加载: 驱动源码目录: 三、 启动WPA_SUPPLICANT : wpa_supplicant是一个连接、配置WIFI的工具 源码位置 服务声明部分: device/qcom/common/rootdir/etc/init.qcom.rc 注意这个服务一开始是disable的 wpa_suppli...

Kernel 内存管理

Kernel 内存管理

Kernel 内存管理 AArch64 Linux通常使用以下配置: 4KB页面, 使用3级或4级转换表,支持39位(512GB)或48位(256TB)的虚拟地址。 64KB页面,使用2级转换表,支持42位(4TB)虚拟地址 他们的内存布局是一致的 以内核defconfig默认的4KB page + 4 levels配置为例,LINUX在arm架构上把虚拟地址空间...

Kernel Panic

Kernel Panic问题定位

Kernel Panic问题定位 问题描述一 严格说这个不属于panic只是一个warn ,仅以此引出问题定位方法 [ 3.204767] ------------[ cut here ]------------ [ 3.209696] WARNING: CPU: 5 PID: 1 at drivers/irqchip/irq-gic-v3.c:1031 gic_ir...

Kernel 5.10.2

Kernel 学习笔记

Kernel 学习笔记 内核常用到的宏: __read_mostly: ##宏定义在 arch/arm/include/asm/cache.h #define read_mostly __attribute((section(“.data..read_mostly”))) ##实例: bool early_boot_irqs_disabled __read_...

Kernel调试

Ubuntu下搭建Kernel调试环境

Ubuntu下搭建Kernel调试环境 下载Kernel https://www.kernel.org/ 本人下载的是最新版本:5.10.3,编译的时候会报gcc版本过低,我是升级到gcc-9.2.0或者更高才解决的,升级方式: 下载gcc源码: wget http://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz tar ...

Git指令整理

不适合阅读的整理的一些个人常用的 Git 指令

随便整理的一些自用的Git指令- GitHub创建仓库提示代码 echo "# 项目名" >> README.md git init git add README.md git commit -m "first commit" git remote add origin git@github.com:qiubaiying/项目名.git git push -u ori...