首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
linux内核自锁旋spinlock常用宏解释
】的更多相关文章
linux内核自锁旋spinlock常用宏解释
转自:http://blog.sina.com.cn/s/blog_6929134b0100tdn8.html 自旋锁与互斥锁有点类似,只是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是否该自旋锁的保持者已经释放了锁,"自旋"一词就是因此而得名. 由于自旋锁使用者一般保持锁时间非常短,因此选择自旋而不是睡眠是非常必要的,自旋锁的效率远高于互斥锁. 信号量和读写信号量适合于保持时间较长的情况,它们会导致调用者睡眠,因此只能在进程上下文使用(_try…
Linux内核驱动基础(一)常用宏定义【转】
转自:http://blog.csdn.net/tommy_wxie/article/details/9427081 一: __init和__initdata : __exit和__exitdata __init和__initdata :仅用于模块初始化,在初始化结束后会丢弃,__init用来描述函数__initdata用来描述数据,比如说当内核启动完毕之后会打印如下语句Freeing unused kernel memory: 664k freed,多半就是__init宏和__initdat…
linux 内核(驱动)常用函数
2.4.1 内存申请和释放 include/linux/kernel.h里声明了kmalloc()和kfree().用于在内核模式下申请和释放内存. void *kmalloc(unsigned int len,int priority); void kfree(void *__ptr); 与用户模式下的malloc()不同,kmalloc()申请空间有大小限制.长度是2的整次方.可以申请的最大长度也有限制.另外kmalloc()有priority参数,通常使用时可以为GFP_KER…
(转)linux内核调优参数对比和解释
[net] ######################## cat /proc/sys/net/ipv4/tcp_syncookies # 默认值:1 # 作用:是否打开SYN Cookie功能,该功能可以防止部分SYN攻击 net.ipv4.tcp_syncookies = 1 ######################## cat /proc/sys/net/ipv4/ip_local_port_range # 默认值:32768 61000 # 作用:可用端口的范围 net.i…
C语言:类似linux内核的分等级DEBUG宏(打印宏)
总结几种log打印printf函数的宏定义 http://blog.chinaunix.net/uid-20564848-id-73402.html #include <stdio.h> #define lU_DEBUG_PREFIX "##########" #define LU_DEBUG_CMD 0x01 #define LU_DEBUG_DATA 0x02 #define LU_DEBUG_ERROR 0x04 #define LU_PRINTF_cmd(msg..…
Linux内核 设备树操作常用API【转】
转自:https://www.linuxidc.com/Linux/2017-02/140818.htm 一文中介绍了设备树的语法,这里主要介绍内核中提供的操作设备树的API,这些API通常都在"include/of.h"中声明. device_node 内核中用下面的这个结构描述设备树中的一个节点,后面的API都需要一个device_node对象作为参数传入. //include/of.h 46 struct device_node { 47 const char *name; 48…
Linux内核 设备树操作常用API
Linux设备树语法详解一文中介绍了设备树的语法,这里主要介绍内核中提供的操作设备树的API,这些API通常都在"include/of.h"中声明. device_node 内核中用下面的这个结构描述设备树中的一个节点,后面的API都需要一个device_node对象作为参数传入. //include/of.h 46 struct device_node { 47 const char *name; 48 const char *type; 49 phandle phandle; 50…
【转】linux内核中writesb(), writesw(), writesl() 宏函数
writesb(), writesw(), writesl() 宏函数 功能 : writesb() I/O 上写入 8 位数据流数据 (1字节) writesw() I/O 上写入 16 位流数据 (2字节) writesl() I/O 上写入 32 位流数据 ( 4字节 ) 原型 : 引用 #include <asm/io.h> void writesb (unsigned short ioaddr , void * addr , unsigned long coun…
Linux内核中大小端判定宏
#include <stdio.h> ];unsigned long mylong;} endian_test = { {'l','?','?','b'} }; #define ENDIANNESS ( (char) endian_test.mylong ) int main() { printf("%c",ENDIANNESS); } 略显简洁…
linux内核源码中常见宏定义
http://blog.csdn.net/yangdelong/article/details/5508057…