LinuxKernel
文章平均质量分 76
dadahacker
赶路不忘风景!
展开
-
内核定时器
/2.6.23/一、定义:/include/linux/timer.hstruct timer_list { struct list_head entry; unsigned long expires; void (*function)(unsigned long); unsigned long data; struct tvec_t_base_s *base; #ifdef CONFIG_TIMER_STATS void *start_site; char start_comm[16];转载 2011-03-04 13:46:00 · 845 阅读 · 0 评论 -
Linux 内核脚本文件Kconfig
<br />//Rocky@20110312<br /> Android Kconfig 入门<br /><br /> 万事开头难,希望可以说明白Linux内核脚本文件的语法。本文只讲基础简单入门型的。<br /><br /> 内核脚本文件语法主要包含以下几个方面<br /><br /> 一:菜单入口config<br /><br /><br /> 大多数的内核配置文件都对应Kconfig的一个菜单入口。也就是一项。最常见的如下所示:<br /> <br />原创 2011-03-12 10:46:00 · 2427 阅读 · 2 评论 -
Android 内核 Makefile入门
//Rocky@20110312 Android 内核 Makefile入门 Makefile文件极其复杂,语法规则如同江水之多,但是我们本着实用解决问题的原则,只去一瓢,够用就可以。 内核模块或者设备驱动开发者经常接触的Makefile语法包含以下几个部分。 一:目标定义: 目标定义用来定义哪些内容要作为模块编译,哪些内容要编译进内核。 例如1: obj-y +=foo.o 表示要由foo.c或者foo.s文件编译得到foo.原创 2011-03-12 11:35:00 · 1913 阅读 · 0 评论 -
Android BOOT Time 优化
<br />Android BOOT Time 优化<br /> Rocky@20110317<br /><br /> Android的启动和大多数的智能手机设备都一个通病,都是启动比较慢。这里的速度优化并不是从源代码的角度来优化,因为我相信Google已经做了非常多的工作。但是每个人的机器是不一样的。特别是我们做MID,产品差别很大,有必要针对自己的产品做一些裁剪工作,用这个裁剪来优化我们的开机速度。<br /> <br /> Android开机流程:<br /> <br /> Boo原创 2011-03-17 13:54:00 · 3699 阅读 · 0 评论 -
Linux 下串口编程入门
<br /> 上一篇我转载了一个Win32串口编程,这里我们也有一篇简单的介绍Linux下串口编程入门。比较下,发现方法是一样的,只是操作系统不同,使用了不同的API来表现而已。<br /> 转自: http://www.ibm.com/developerworks/cn/linux/l-serials/<br /> <br /> <br />串口简介<br />串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是 RS-232-C 接口(又称 EIA RS-232-C转载 2011-04-16 01:46:00 · 599 阅读 · 0 评论 -
dlopen dlsym dlclose解析
copy from :http://blog.csdn.net/yujixi123/archive/2010/07/28/5772117.aspx讲的很清楚,就当是笔记。 1. 打开动态链接库: #include void *dlopen(const char *filename, int flag); 该函数返回操作句柄,如: void *转载 2011-06-21 20:01:00 · 1304 阅读 · 0 评论 -
Linux中的work queue
这篇文章http://blog.sina.com.cn/s/blog_55465b470100qmrc.html 讲的非常通俗易懂,当做笔记,备份了。 工作队列(work queue)是Linux kernel中将工作推后执行的一种机制。这种机制和BH或Tasklets不同之处在于工作队列是把推后的工作交由一个内核线程去执行,因此工作队列的优势就在于它允许重新调度甚至睡眠。 工作队转载 2011-11-21 11:57:27 · 623 阅读 · 0 评论 -
linux 生成和使用动态链接库和静态链接库的Makefile编写
生成和使用动态链接库和静态链接库的Makefile编写 1. 概述 介绍linux下生成和使用动态链接库和静态链接库的Makefile的编写方法。 2. 生成动态链接库的Makefile 首先要有一个c或c++等工具编写出来的库函数文件,也就是里面写了一堆可以被别的函数调用的函数。比如: aaa.cpp #include void pf1(void) { pri转载 2011-12-28 11:13:53 · 15417 阅读 · 2 评论 -
linux驱动程序调试常用方法
驱动程序开发的一个重大难点就是不易调试。本文目的就是介绍驱动开发中常用的几种直接和间接的调试手段,它们是: 利用printk查看OOP消息利用strace利用内核内置的hacking选项利用ioctl方法利用/proc 文件系统使用kgdb 一、利用printk 这是驱动开发中最朴实无华,同时也是最常用和有效的手段。scull驱动的main.c第338行如下,就是使用printk转载 2013-11-04 19:25:42 · 1856 阅读 · 0 评论