04 2019 档案

module_init的加载和释放
摘要:像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件:#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h> 其中,init.h 阅读全文

posted @ 2019-04-18 17:11 怀想天空2013 阅读(422) 评论(0) 推荐(0) 编辑

__attribute__的一些相关属性
摘要:__attribute__((format())) 这个format有3个参数。 int my(NSString *str,NSString *str1,NSArray*str2,...) __attribute__((format(__NSString__,2,4))); 三个参数告诉编译器,第二 阅读全文

posted @ 2019-04-18 16:29 怀想天空2013 阅读(1999) 评论(0) 推荐(0) 编辑

内联函数 —— C 中关键字 inline 用法解析
摘要:一、什么是内联函数 在C语言中,如果一些函数被频繁调用,不断地有函数入栈,即函数栈,会造成栈空间或栈内存的大量消耗。 为了解决这个问题,特别的引入了inline修饰符,表示为内联函数。 栈空间就是指放置程式的局部数据也就是函数内数据的内存空间,在系统下,栈空间是有限的,假如频繁大量的使用就会造成因栈 阅读全文

posted @ 2019-04-18 16:02 怀想天空2013 阅读(706) 评论(0) 推荐(0) 编辑

利用gcc的__attribute__编译属性section子项构建初始化函数表
摘要:gcc的__attribute__编译属性有很多子项,用于改变作用对象的特性。这里讨论section子项的作用。 __attribute__的section子项使用方式为: __attribute__((section("section_name"))) 其作用是将作用的函数或数据放入指定名为"se 阅读全文

posted @ 2019-04-18 15:07 怀想天空2013 阅读(742) 评论(0) 推荐(0) 编辑

Linux 内核 hlist 详解
摘要:在Linux内核中,hlist(哈希链表)使用非常广泛。本文将对其数据结构和核心函数进行分析。 和hlist相关的数据结构有两个:hlist_head 和 hlist_node //hash桶的头结点struct hlist_head { struct hlist_node *first;//指向每 阅读全文

posted @ 2019-04-17 12:13 怀想天空2013 阅读(1657) 评论(0) 推荐(0) 编辑

#define宏定义中## #@ # \ 符号使用
摘要:C/C++ 宏命令的神奇用法。 先看下面三条语句: #define Conn(x,y) x##y#define ToChar(x) #@x#define ToString(x) #x1. ## 连接操作符##表示连接(token pasting, or token concatenation,mer 阅读全文

posted @ 2019-04-11 10:09 怀想天空2013 阅读(2133) 评论(0) 推荐(0) 编辑

Hi3519v101-uboot-start.S分析
摘要:00032: #include <config.h>00033: #include <version.h> 1)#include <config.h>。config.h是在include目录下的,这个文件不是源码中本身存在的文件,而是配置过程中自动生成的文件。(详见mkconfig脚本)。这个文件的 阅读全文

posted @ 2019-04-03 16:03 怀想天空2013 阅读(942) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示