随笔分类 - Linux misc
摘要:可能有错,更新中。。。用2级页表将用户空间的0-3G线性地址映射到256MBSDRAM的物理地址3000 0000-3FFF FFFF中 2^10=1024=0x400 2^12=4096=0x1000 2^14=16384=0x40001个页目录-->覆盖3GB物理内存范围(可以4GB)1个页目录
阅读全文
摘要:进程是操作系统的一个核心概念。每个进程都有自己唯一的标识:进程ID,也有自己的生命周期。一个典型的进程的生命周期如图4-1所示。 进程都有父进程,父进程也有父进程,这就形成了一个以init进程为根的家族树。除此以外,进程还有其他层次关系:进程、进程组和会话。 进程组和会话在进程之间形成了两级的层次:
阅读全文
摘要:What is the purpose of the controlling terminal? Say that I have opened some program from the terminal, and I have redirected its stdin and stdout and
阅读全文
摘要:The /proc/PID/smaps is an extension based on maps, showing the memory consumption for each of the process's mappings. For each of mappings there is a
阅读全文
摘要:kernel cash时打印寄存器值以及寄存器指向的地址前后128字节的值 arch/arm64/kernel/process.c void __show_regs(struct pt_regs *regs) { int i, top_reg; u64 lr, sp; if (compat_user
阅读全文
摘要:概述 经常有用户问我,使用USB2XXX的USB2IIC功能的时候,从机地址应该怎么传递的问题,这个问题的根源在于不同的I2C从机厂商采用了不同的I2C总线地址约定,导致在说I2C总线的时候总是容易搞混,本文主要针对这个问题对I2C总线地址进行详细的说明。 7位寻址 在7位寻址过程中,从机地址在启动
阅读全文
摘要:要先修改linux kernel 源代码的顶层Makefile CC = $(CROSS_COMPILE)gcc 修改为CC = $(CROSS_COMPILE)gcc -g这样编译的内核模块就带有debug信息 #arm-linux-objdump -S -D opps.ko>log#vi log
阅读全文
摘要:地址分布虚拟地址都用64位无符号数表示。用户虚拟地址从高位的63到低位的48都是0,内核虚拟地址则相反,63~48都是1. TTBR x(Translation table base register)的选择是通过虚拟地址的第63 bit位来确定的。swapper_pg_dir只包含内核地址映射,而
阅读全文
摘要:在使用perf排查问题时,我们经常会发现[kernel.kallsyms]这个模块。这到底是个什么东西呢? 简介: 在2.6版的内核中,为了更方便的调试内核代码,开发者考虑将内核代码中所有函数以及所有非栈变量的地址抽取出来,形成是一个简单的数据块(data blob:符号和地址对应),并将此链接进
阅读全文
摘要:from: http://blog.chinaunix.net/uid-28414100-id-5753227.html 内核源码中#ifndef _ARM_ERRNO_H#define _ARM_ERRNO_H#define EPERM 1 /* Operation not permitted *
阅读全文
摘要:from: https://www.cnblogs.com/kex1n/p/8296623.html 1. sigprocmask函数提供屏蔽和解除屏蔽信号的功能。 从而实现关键代码的运行不被打断。 函数声明如下: int sigprocmask(int how, const sigset_t *s
阅读全文
摘要:from: https://www.cnblogs.com/subo_peng/p/5325326.html 【摘要】本文分析了Linux内核对于信号的实现机制和应用层 的相关处理。首先介绍了软中断信号的本质及信号的两种不同分类方法尤其是不可靠信号的原理。接着分析了内核对于信号的处理流程包括信号的触
阅读全文
摘要:首先: \r就是"回到行首",\n就是"到下一行" 即:\r是回车,\n是换行,前者使光标到行首,后者使光标下移一格。通常用的Enter是两个加起来的,即\r\n 直接这么说你可能没啥感觉,但是真正到了编码的时候你就发现了——全TM是吭先举个栗子瞅瞅: printf aaaa \r\n bbbbbb
阅读全文
摘要:NAME pthread_setname_np, pthread_getname_np - set/get the name of a thread SYNOPSIS
阅读全文
摘要:一:Linux虚拟地址空间布局 (转自:Linux虚拟地址空间布局) 在多任务操作系统中,每个进程都运行在属于自己的内存沙盘中。这个沙盘就是虚拟地址空间(Virtual Address Space),在32位模式下它是一个4GB的内存地址块。在Linux系统中, 内核进程和用户进程所占的虚拟内存比例
阅读全文
摘要:Tainted kernels:Some oops reports contain the string 'Tainted: ' after the programcounter. This indicates that the kernel has been tainted by somemech
阅读全文
摘要:Proc/pid/maps显示进程映射了的内存区域和访问权限。对应内核中的操作集为proc_pid_maps_op,具体的导出函数为show_map。内核中进程的一段地址空间用一个vm_area_struct结构体表示,所有地址空间存储在task->mm->mmap链表中。 一个文件可以映射到进程的
阅读全文
摘要:作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 在“纸上谈兵: 算法与数据结构”中,我在每一篇都会有一个C程序,用于实现算法和数据结构 (比如栈和相关的操作)。在同一个程序中,还有用于测试的main()函数,结构体定义,函数原型,
阅读全文
浙公网安备 33010602011771号