Linux内核
文章平均质量分 81
古月印象星空
热爱生活,热爱工作
展开
-
module_init和module_exit
本文参照:http://blog.163.com/xinbuqianjin@126/blog/static/167563447201010221231507/http://www.360doc.com/content/11/0917/11/7473909_148946026.shtmlAndroid的module_init和module_exit的定义在common/include/lin转载 2011-12-17 15:43:26 · 2412 阅读 · 0 评论 -
Linux内存映射(mmap)
本文编辑整理自:http://www.2cto.com/os/201204/129464.htmlhttp://hi.baidu.com/yoursguang/blog/item/81f77f387720022296ddd814.htmlhttp://mikeconan6.blog.163.com/blog/static/129723052200991811411776/?from转载 2012-05-26 18:37:01 · 4497 阅读 · 0 评论 -
关于寄存器ESP和EBP的一些理解
原文: http://blog.csdn.net/zsJum/article/details/6117043一直对寄存器ESP和EBP的概念总是有些混淆,查看定义ESP是栈顶指针,EBP是存取堆栈指针。还是不能很透彻理解。之后借于一段汇编代码,总算是对两者有个比较清晰的理解。下面是按调用约定__stdcall 调用函数test(int p1,int p2)的汇编代码假设执行函数前堆转载 2012-08-01 22:22:46 · 30338 阅读 · 5 评论 -
file_operations简介
原文:http://tldp.org/LDP/lkmpg/2.4/html/c577.htmThe file_operations structure is defined in linux/fs.h, and holds pointers to functions defined by the driver that perform various operations on t转载 2012-05-26 19:23:24 · 1986 阅读 · 0 评论 -
ioctl函数简介
本文摘自:http://decimal.blog.51cto.com/1484476/447630一、概述 ioctl用于向设备发控制和配置命令 ,有些命令也需要读写一些数据,但这些数据是不能用read/write读写的,称为Out-of-band数据。也就是说,read/write读写的数据是in-band数据,是I/O操作的主体,而ioctl命令传送的是控制信息 ,其中的数据转载 2012-05-26 18:35:09 · 1233 阅读 · 0 评论 -
Linux下的lds链接脚本简介(三)
八、 内存区域命令在默认情形下,连接器可以为section在程序地址空间内分配任意位置的存储区域。并通过输出section描述的> REGION属性显示地将该输出section限定于在程序地址空间内的某块存储区域,当存储区域大小不能满足要求时,连接器会报告该错误。你也可以用MEMORY命令让在SECTIONS命令内*未*引用的selection分配在程序地址空间内的某个存储区域内。注意转载 2011-12-16 11:00:59 · 2036 阅读 · 0 评论 -
Linux下的lds链接脚本简介(二)
七、 SECTIONS命令SECTIONS命令告诉ld如何把输入文件的sections映射到输出文件的各个section: 如何将输入section合为输出section; 如何把输出section放入程序地址空间(VMA)和进程地址空间(LMA).该命令格式如下:SECTIONS{SECTIONS-COMMANDSECTIONS-COMMAND…}SECTIO转载 2011-12-16 10:59:00 · 1998 阅读 · 0 评论 -
Linux下的lds链接脚本简介(四)
十一、 表达式lds中表达式的文法与C语言的表达式文法一致,表达式的值都是整型,如果ld的运行主机和生成文件的目标机都是32位,则表达式是32位数据,否则是64位数据。以下是一些常用的表达式:_fourk_1 = 4K; /* K、M单位 */_fourk_2 = 4096; /* 整数 */_fourk_3 = 0×1000; /* 16 进位 */_fourk_4 =转载 2011-12-16 11:03:21 · 1998 阅读 · 0 评论 -
Linux下的lds链接脚本简介(一)
转载自:http://linux.chinaunix.net/techdoc/beginner/2009/08/12/1129972.shtml一、 概论每一个链接过程都由链接脚本(linker script, 一般以lds作为文件的后缀名)控制. 链接脚本主要用于规定如何把输入文件内的section放入输出文件内, 并控制输出文件内各部分在程序地址空间内的布局. 但你也可以用转载 2011-12-15 11:41:03 · 5873 阅读 · 0 评论 -
Linux内核中的xx_initcall
本文编辑整理自:http://www.linuxidc.com/Linux/2011-09/43354.htm先看这些宏的定义(定义在文件include/linux/init.h中)#define pure_initcall(fn) __define_initcall("0",fn,0) #define core_initcall(fn)翻译 2011-12-15 10:52:11 · 1068 阅读 · 0 评论 -
linux内存中的__init和__exit宏
本文翻译整理自:http://www.faqs.org/docs/kernel/x277.html This demonstrates a feature of kernel 2.2 and later. Notice the change in the definitions of the init and cleanup functions. __init和__exit这两种修饰是翻译 2011-12-15 10:50:46 · 1251 阅读 · 0 评论 -
深入理解fork()
本文编辑整理自:http://blog.csdn.net/zjc0888/article/details/6396979 大家都知道fort()是用于创建一个子进程。但是对它可能并不是很理解。虽然我自认为大学时操作系统学到很不错,但是直到今天才算真正的理解的进程如何创建了一个子进程。实例1:1.c文件#include ;#include ;main (){翻译 2012-05-26 18:29:50 · 1798 阅读 · 3 评论