0
点赞
收藏
分享

微信扫一扫

STM32第十课:串口发送

悄然丝语 03-14 09:30 阅读 4
linux

        大家好,为了进一步提升大家对实验的认识程度,每个控制实验将加入详细控制思路与流程,欢迎交流学习。

        今天给大家分享一下,linux系统里面信号量操作的具体实现,操作硬件为I.MX6ULL开发板。

第一:信号量基本简介

        信号量是同步的一种方式,linux内核也提供了信号量机制,信号量用于控制对共享资源的访问。

        信号量特点:

        1、信号量可以使等待资源线程进入休眠状态,因此适用于那些占用资源比较久的场合。

        2、信号量不能用于中断中,因为信号量会引起休眠,中断不能休眠。

        3、如果共享资源持有时间比较短,那就不适合使用共享资源了。

第二:信号量的API函数

        Linux内核使用semaphore结构体表示信号量,结构体如下:

struct semaphore {
 raw_spinlock_t lock;
 unsigned int count;
 struct list_head wait_list;
};

  第三:   信号量具体代码实现

#include <linux/types.h>

#include <linux/kernel.h>

#include <linux/delay.h>

#include <linux/ide.h>

#include &l
举报

相关推荐

0 条评论