linux-kernel/CodingStyle】的更多相关文章

Linux kernel coding style | Linux内核编码风格 This is a short document describing the preferred coding style for the linux kernel. Coding style is very personal, and I won't force my views on anybody, but this is what goes for anything that I have to be ab…
转自:http://www.cppblog.com/flyonok/archive/2011/04/15/144316.html 如何进行Linux Kernel 开发? (Take 3) 译者序:这是一篇很重要的文档,它介绍了内核开发的方方面面.这篇文档已被加入到内核源码树的Documentation文档里(名字为HOWTO),你可以在最新的内核树里找到它.尽管已经有网友翻译过这篇文档,但是我还是决定自己再翻译一遍.翻译完之后,我的感触是如果依靠翻译来进行学习,速度太慢了.以后的技术文档直接看…
http://blog.csdn.net/blizmax6/article/details/6747601 linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 建立调试环境 发行版的选择和安装 安装交叉编译工具 bin工具集的使用 qemu的使用 initrd.img的原理与制作 x86虚拟调试环境的建立 arm虚拟调试环境的建立 arm开发板调试环…
Linux kernel 编译方法大全记录 一.这是一个我自己写的自动make脚本: #!/bin/sh export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- export CHEN_DTB="chenfl.dtb" if [ 1 -eq $# ]; then if [ $1 = "dtb" ]; then make -j2 $CHEN_DTB O=out cp ~/am335x/kernel4.4.12…
我们习惯在SI(Source Insight)中阅读Linux内核,SI会建立符号表数据库,能非常方便地跳转到变量.宏.函数等的定义处.但在处理系统调用的函数时,却会遇到一些麻烦:我们知道系统调用函数名的特点是sys_×××,例如我们想找open函数的内核系统调用代码,在SI提供的符号表中搜索sys_open,能找到函数的声明: asmlinkage long sys_open(const char __user *filename, int flags, umode_t mode); 原本SI…
本系列文章主要写我在阅读Linux内核过程中,关注的比较难以理解但又设计巧妙的代码片段(不关注OS的各个模块的设计思想,此部分我准备写在“深入理解Linux Kernel” 系列文章中),一来通过内核代码复习一下C语言及汇编语言的语法,二来学习内核开发大牛们书写代码的风格及思路. 在内核文件 include/linux/bug.h中,有下面两行的宏定义: 1 2 3 4 5 6   /* Force a compilation error if condition is true, but al…
linux kernel的中断子系统之(八):softirq http://www.wowotech.net/irq_subsystem/soft-irq.html http://www.ibm.com/developerworks/library/l-tasklets/index.html…
catalog . 程序功能概述 . 感染文件 . 前置知识 . 获取ROOT权限: Linux Kernel <= - Local Privilege Escalation 1. 程序功能概述 . 得到root权限 . 感染文件 . 进行破坏 Relevant Link: https://github.com/karottc/linux-virus 2. 感染文件 该病毒采取感染.C源代码文件的方式进行传播感染,即在每个被感染的源代码的主函数中插入恶意函数的调用,以及在文件的其他位置插入恶意逻…
有关Linux kernel 字符设备分析: 参考:http://blog.jobbole.com/86531/ 一.linux kernel 将设备分为3大类,字符设备,块设备,网络设备. 字符设备是指只能一个字节一个字节读写的设备, 常见的外设基本上都是字符设备. 块设备:常见的存储设备,硬盘,SD卡都归为块设备,块设备是按一块一块读取的. 网络设备:linux 将对外通信的一个机制抽象成一个设备, 通过套接字对其进行相关的操作. 每一个字符设备或块设备都在/dev目录下对应一个设备文件.l…
首先介绍一下背景吧,工作三个星期了.复习了一波u-boot,跟了一下事件上报,搞了下平台设备,扣了一个内存检查代码. 想想生活是不是有点无聊.对啊,真的很无聊!!!! 无聊也没有办法啊,所以找点方法去跟上生活的节奏. 第一天,就稍微讲一下linux  kernel 是干吗的吧. 前面介绍的u-boot做的不好我知道,但是慢慢来吧 kernel  是干嘛的,有很多人有这个疑问,在很久以前我也有这个疑问,我在很长一段时间都认为kernel 就是一堆驱动的集合,这个说是正确也是正确,但是不全面. 在现…