linux进程控制开发实例
摘要:fork.c exec.c waitpid.c 参考资料:《嵌入式Linux应用程序开发标准教程》
阅读全文
posted @
2017-06-14 21:44
amanlikethis
阅读(822)
推荐(0) 编辑
linux驱动编写之poll机制
摘要:一、概念 1、poll情景描述 以按键驱动为例进行说明,用阻塞的方式打开按键驱动文件/dev/buttons,应用程序使用read()函数来读取按键的键值。这样做的效果是:如果有按键按下了,调用该read()函数的进程,就成功读取到数据,应用程序得到继续执行;倘若没有按键按下,则要一直处于休眠状态,
阅读全文
posted @
2017-05-28 12:45
amanlikethis
阅读(17017)
推荐(1) 编辑
linux编程头文件所在路径的问题
摘要:一、问题引入 1、头文件与库 当我们在PC主机linux环境下(如ubuntu),编写linux应用程序,然后利用gcc来编译。在源代码的开始位置会写入头文件,那是因为我们使用了系统提供的库函数,例如printf、open、read、write等等。我们会写入类似的内容: 我们的应用程序代码编译过程
阅读全文
posted @
2017-05-27 19:45
amanlikethis
阅读(11411)
推荐(0) 编辑
linux编程之信号量
摘要:一、概念 linux信号量: 允许多个线程同时进入临界区,可以用于进程间的同步。 和互斥锁(mutex)的区别: 互斥锁只允许一个线程进入临界区。 所在头文件: semaphore.h 二、主要函数 初始化函数 int sem_init(sem_t *sem, int pshared, unsign
阅读全文
posted @
2017-05-26 17:20
amanlikethis
阅读(1111)
推荐(0) 编辑
linux系统原子操作
摘要:一、概念 原子操作提供了指令原子执行,中间没有中断。就像原子被认为是不可分割颗粒一样,原子操作(atomic operation)是不可分割的操作。 c语言中一个变量的自加1操作,看起来很简单,好像只需要一条指令而不被打断。但这个操作实现起来,CPU的执行是有一个过程的,分为读取到寄存器,寄存器数学
阅读全文
posted @
2017-05-26 16:20
amanlikethis
阅读(5295)
推荐(0) 编辑
linux应用编程之进程间同步
摘要:一、描述 在操作系统中,异步并发执行环境下的一组进程,因为相互制约关系,进而互相发送消息、互相合作、互相等待,使得各进程按一定的顺序和速度执行,称为进程间的同步。具有同步关系的一组并发进程,称为合作进程,合作进程间互相发送的信号,称为消息或事件。 这种需要进程间同步的情况,是可以想见的,例如几个进程
阅读全文
posted @
2016-05-29 20:50
amanlikethis
阅读(5433)
推荐(0) 编辑
linux创建线程之pthread_create
摘要:说明:本文转自多线程编程之pthread_create函数应用,在此基础上笔者做了些许改动。 pthread_create函数 函数简介 pthread_create是UNIX环境创建线程函数 头文件 #include<pthread.h> 函数声明 int pthread_create(pthre
阅读全文
posted @
2016-05-28 12:41
amanlikethis
阅读(83978)
推荐(5) 编辑