作者存档: 奔跑 - 第3页

Linux学习笔记(5)异步通知机制

异步通知
读取按键的几种方式:
查询: 耗资源
中断: 一直读取
poll:   指定超时时间
共同特点:应用程序主动读取按键
异步通知:有按键按下,触发应用程序去读取按键
进程之间发送信号的实现:

继续阅读 »

Linux学习笔记(4)poll机制的应用程序

这部分的学习目标:了解poll机制的实现原理,掌握poll实现按键读取的方式。
目前对poll机制的理解:poll机制的实质就是系统帮你在一定的等待时间之后或者有其他信号量时退出函数调用。
对于poll机制的深入了解可能还要花些时间,但是对于入门,我们先掌握poll机制的使用方法,达到能够构建对应的应用程序的目标。
1.poll机制实现按的代码分析

继续阅读 »

嵌入式Linux学习笔记(2) LED驱动

编译驱动
    上传驱动文件 first_drv.c 到 /opt/weidongshan/linux-2.6.22.6/drivers/char
    编辑该目录下的Makefile文件,添加一行 obj-m  += first_drv.o

继续阅读 »

Linux学习笔记(3)按键与中断

1.查询方式获取按键
    1.框架
        头文件
        file_operations结构体

继续阅读 »

理解KMP匹配算法

两篇比较好的文章:阮一峰的网络日志  和 jBoxer

下面是我阅读 Jake Boxer  的文章时做的笔记。应该可以帮助理解。

KMP的关键是“部分匹配表”。而理解KMP的关键是领会“部分匹配表”中值的含义。下面看看模式字符串”abababca”的部分匹配表。
char: | a | b | a | b | a | b | c | a |
index: | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
value: | 0 | 0 | 1 | 2 | 3 | 4 | 0 | 1 |
对于一个8个字符长度的模式串,部分匹配表长度也为8. 继续阅读 »

嵌入式Linux学习笔记(1) 开发环境搭建

整理最近的嵌入式Linux学习笔记,巩固知识,分享提高。
首先说明我使用的学习环境,因为一开始是按照Mini2440的手册和光盘搭建的系统,后来看韦东山老师的视频,又按视频搭建了环境,所以虚拟机还是用的 Fedora.
硬件:Micro2440
虚拟机:VMware6.5 + Fedora9

继续阅读 »

一个简单算法的不同处理方式

”’ ————-
要输出如下图形:
      * 
    * # * 
  * # * # * 
* # * # * # * 

继续阅读 »

C标准预定义宏__FILE__和f__LINE__等

C/C++标准定义了标准预定义宏,这些宏对所有遵循该标准编译器有效,这些宏在程序调试时是比较有用的。但我偶尔会忘了怎么写,在程序里到处找,所以把他记录到这里。这些预定义宏以双下划线开始、结束。

#include <stdio.h>
int main(int argc, char *argv[])
{
printf(“%s\n”, __FILE__);
printf(“%s\n”, __FUNCTION__);
printf(“%d\n”, __LINE__);
printf(“%s\n”, __DATE__);
printf(“%d\n”, __STDC__);
printf(“%s\n”, __TIME__);
}