E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux驱动信号量
Semaphore的简单使用
Semaphore
信号量
(Semaphore)是一种用于控制多个进程对共享资源的访问的同步机制。
信号量
通常由一个计数器和一组等待队列组成。计数器表示当前可以访问资源的进程数。
曾大浩
·
2024-01-05 03:35
java
freeRTOS——队列集知识总结及实战
1队列集概念可以在任务间传递不同数据类型的消息作用:用于对多个队列或
信号量
进行“监听”,其中不管哪一个消息到来,都可让任务退出阻塞状态2队列集API函数1)创建队列集QueueSetHandle_txQueueCreateSet
m0_libinc++
·
2024-01-04 23:24
单片机
stm32
嵌入式硬件
FreeRTOS——互斥
信号量
知识总结及其实战
1互斥
信号量
的概念1)互斥
信号量
:是一个拥有优先级继承的二值
信号量
,在同步的应用中二值
信号量
最适合。互斥
信号量
适合用于那些需要互斥访问的应用中!
m0_libinc++
·
2024-01-04 23:53
单片机
嵌入式硬件
freertos——任务通知知识总结与任务通知模拟及
信号量
实验、消息邮箱实验、事件标志组实验
ulNotifiedValue就是这个通知值,不需要另外创建一个结构体可以直接接受别人发过来的通知2.任务通知的优势及劣势任务通知的优势:效率更高:使用任务通知向任务发送事件或数据比使用队列、事件标志组或
信号量
快得多使用内存更小
m0_libinc++
·
2024-01-04 23:52
单片机
嵌入式硬件
stm32
信号量
以下转载自安富莱电子:http://forum.armfly.com/forum.php
信号量
的概念及其作用
信号量
(semaphores)是20世纪60年代中期EdgserDijkstra发明的。
crethdom
·
2024-01-04 17:20
信号量
机制(重要)-第二十八天
目录前言
信号量
机制
信号量
S整型
信号量
记录型
信号量
四个原语实例(对于单核CPU的情况)本节思维导图前言之前我们学习了关于进程互斥的四种软件实现方法(单标志法、双标志先检查法、双标志后检查法、Peterson
无聊看看天T^T
·
2024-01-04 17:50
计算机操作系统-初阶
ubuntu
linux
windows
centos
gnu
进程间通信(IPC)---------------信号(Signal)与
信号量
(Semaphore)
信号与
信号量
1.IPC的几种方式2.信号(Signal)3.
信号量
3.1
信号量
的概念3.2使用步骤3.3函数原型3.4代码示例1.IPC的几种方式首先,先来讲一下fork之后,发生了什么事情。
懵懂的小新
·
2024-01-04 17:19
linux
ipc
Python——
信号量
、条件变量、事件
1.
信号量
(Semaphore)
信号量
通常用于保护数量有限的资源,例如数据库服务器。在资源数量固定的任何情况下,都应该使用有界
信号量
。在生成任何工作线程前,应该在主线程中初始化
信号量
。
说酒话的猫
·
2024-01-04 17:19
Python
python
linux 多线程
信号量
(盘子水果问题)
桌上有一空盘,允许存放一只水果。爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时一次只能放一只水果供吃者取用,请用P、V原语实现爸爸、儿子、女儿三个并发进程的同步。#include#include#include#include#include#includetypedefstruct{intfrt_tp;sem_tsem_product;sem_ts
最后冰吻free
·
2024-01-04 10:57
linux
C
信号量
sem
linux 多线程
信号量
(生产者消费者问题)
生产者消费者问题这是一个非常经典的多线程题目,题目大意如下:有一个生产者在生产产品,这些产品将提供给若干个消费者去消费,为了使生产者和消费者能并发执行,在两者之间设置一个有多个缓冲区的缓冲池,生产者将它生产的产品放入一个缓冲区中,消费者可以从缓冲区中取走产品进行消费,所有生产者和消费者都是异步方式运行的,但它们必须保持同步,即不允许消费者到一个空的缓冲区中取产品,也不允许生产者向一个已经装满产品且
最后冰吻free
·
2024-01-04 10:56
linux
C
生产者消费者
信号量
多线程
Linux系统编程之
信号量
什么是:
信号量
(Semaphore)是一种用于控制多个进程或线程之间同步和互斥访问共享资源的机制。它是由一个整数值和与之关联的一组操作组成的。
烬奇小云
·
2024-01-04 05:44
Linux
linux
算法
运维
Linux驱动
学习—ioctl接口
1、unlock_ioctl和ioctl有什么区别?kernel2.6.36中已经完全删除了structfile_operations中的ioctl函数指针,取而代之的是unlocked_ioctl。ioctl是老的内核版本中的驱动API,unlock_ioctl是当下常用的驱动API。unlocked_ioctl实际上取代了用了很久的ioctl,主要的改进就是不再需要上大内核锁(BKL)(调用之
suifen_
·
2024-01-03 22:13
linux
学习
驱动开发
c语言
Linux驱动
学习—平台总线模型
1、平台总线模型介绍①什么是平台总线模型?平台总线模型也叫platform总线模型。是Linux内核虚拟出来的一条总线,不是真实的导线。平台总线模型就是把原来的驱动C文件给分成两个C文件,一个是device.c,一个是driver.c把稳定不变的放在driver.c里面,需要变得放在devic.c里面。②为什么会有平台总线模型?(1)可以提高代码的重用性(2)建设重复性代码③怎么编写以平台总线模型
suifen_
·
2024-01-03 22:43
linux
学习
驱动开发
c语言
运维
linux驱动
开发学习3 pinctl和gpio子系统试验
linux对于gpio有专门的驱动框架借助pinctl子系统做pin的复用·和电气属性借助gpio子系统来使用gpio大多数SOC的pin都是支持复用的,比如I.MX6ULL的GPIO1_IO03既可以作为普通的GPIO使用,也可以作为I2C1的SDA等等。此外我们还需要配置pin的电气特性,比如上/下拉、速度、驱动能力等等。传统的配置pin的方式就是直接操作相应的寄存器,但是这种配置方式比较繁琐
西伯利亚大草原的狼
·
2024-01-03 21:11
Linux驱动层开发
linux
学习
运维
迅为嵌入式
linux驱动
开发笔记(五)—pinctl和gpio子系统
一、pinctl和gpio子系统pinctrl子系统设置引脚的复用关系和电气属性。2、LinuxPinctrl子系统提供的功能是什么?(1)管理系统中所有的可以控制的pin,在系统初始化的时候,枚举所有可以控制的pin,并标识这些pin。(2)管理这些pin的复用(Multiplexing)。对于SOC而言,其引脚除了配置成普通的GPIO之外,若干个引脚还可以组成一个pingroup,形成特定的功
梅山剑客
·
2024-01-03 21:11
Linux操作系统
#
嵌入式驱动linux
linux
学习
单片机
arm
驱动开发
Linux驱动
学习—pinctl和gpio子系统
1、pinctl和gpio子系统(一)1.1pinctrl子系统主要工作内容获取设备树中pin信息,管理系统中所有的可以控制的pin,在系统初始化的时候,枚举所有可以控制的pin,并标识这些pin。根据获取到的pin信息来设置pin的复用功能,对于SOC而言,其引脚除了配置成普通的GPIO之外,若干个引脚还可以组成一个pingroup,形成特定的功能。根据获取到的pin信息来设置pin的电气特性,
suifen_
·
2024-01-03 21:40
linux
学习
驱动开发
Linux内核--进程管理(十一)进程间通信之信号
sigaction五、发送信号六、信号的处理------>6.1、总结一、引言众所周知,SystemVIPC进程间通信机制体系中有着多种多样的进程间通信方式,如管道和有名管道,消息队列,信号,共享内存和
信号量
文艺小少年
·
2024-01-03 18:31
CPU性能分析与操作系统的构建
linux
服务器
java
Linux内核--进程管理(十二)共享内存和
信号量
目录一、引言二、基础知识三、统一封装的接口------>3.1、kern_ipc_perm四、共享内存的创建和映射------>4.1、创建共享内存------>4.2、共享内存的映射五、
信号量
的创建和使用
文艺小少年
·
2024-01-03 18:59
CPU性能分析与操作系统的构建
linux
java
服务器
嵌入式Linux系统中对GPIO操作的方法总结
在Linux系统里操作GPIO的方法有以下几个:1.写驱动的方式需要自己编写
linux驱动
,在驱动里操控GPIO,应用通过驱动提供的节点来控制GPIO。优点是结构清晰,可扩展性强,比较灵活。
不醒的兔子
·
2024-01-03 06:29
哲学家进餐问题-第三十二天
整理思路:根据各进程的操作流程确定P、V操作的大致顺序只有互斥关系:与之前不同的是,每个哲学家进程需要同时持有两个临界资源才能开始吃饭如何避免临界资源分配不当造成的死锁现象,是哲学家问题的精髓3、设置
信号量
无聊看看天T^T
·
2024-01-03 00:48
计算机操作系统-初阶
linux
harmonyos
ubuntu
windows
centos
读者-写者问题-第三十二天
关系分析:找出题目中描述的各个进程,分析它们之间的同步、互斥关系只有互斥关系:写进程与写进程互斥、写进程与读进程互斥、读进程与读进程不互斥2、整理思路:根据各进程的操作流程确定P、V操作的大致顺序3、设置
信号量
无聊看看天T^T
·
2024-01-03 00:47
计算机操作系统-初阶
ubuntu
linux
windows
centos
gnu
多生产者-多消费者问题-第三十一天
目录多生产者-多消费者问题可不可以不使用互斥
信号量
?当缓冲区的大小为2呢?
无聊看看天T^T
·
2024-01-03 00:47
计算机操作系统-初阶
windows
linux
ubuntu
gnu
centos
吸烟者问题-第三十一天
目录问题描述解决问题是否需要设置一个专门的互斥
信号量
?
无聊看看天T^T
·
2024-01-03 00:17
计算机操作系统-初阶
linux
ubuntu
windows
centos
gnu
Semaphore 详解
1、Semaphore是什么Semaphore通常我们叫它
信号量
,可以用来控制同时访问特定资源的线程数量,通过协调各个线程,以保证合理的使用资源。
遨游在知识的海洋里无法自拔
·
2024-01-02 22:06
数据库
Linux:进程间通信——匿名管道
常用的进程间通信的方式有管道、共享内存、消息队列和
信号量
。匿名管道管道有分为匿名管道和命名管道两种,接下来主要介绍管道通信中的匿名管道。匿名管道就是指在内核中创建出
℃绝心恋
·
2024-01-02 15:44
Linux
linux
嵌入式学习DAY27 --- System V 共享内存 ,POSIX
信号量
,POSIX 消息队列
DAY27概述:一、SystemV共享内存二、POSIX
信号量
三、POSIX消息队列笔记:注意:不论是怎样的通信,只要牵扯公共资源读读不互斥读写互斥写写互斥一、SystemV共享内存1.概念:可以说,共享内存是一种最为高效的进程间通信方式
楼台的春风
·
2024-01-02 14:30
多线程
嵌入式
c语言
ubuntu
多进程
【复习】计算机操作系统 第二章
第二章进程的描述与控制2.1程序执行2.2进程的描述(重点)2.4进程同步(重点)2.4
信号量
机制(含大题)
信号量
是一种只能进行PV操作的特殊变量。
lsy永烨
·
2024-01-02 13:37
os复习
os
编译器屏障是什么
同步机制包括锁、
信号量
CharlesKai
·
2024-01-02 12:51
多处理器编程
屏障
编译器
Linux驱动
开发学习笔记7《并发与竞争》
目录一、并发与竞争1、并发与竞争简介2、保护内容是什么二、原子操作1、原子操作简介2、原子整形操作API函数3、原子位操作API函数4、实验(1)修改设备树文件(2)LED驱动修改(3)编写测试APP(4)运行测试三、自旋锁1、自旋锁简介2、自旋锁API函数3、其他类型的锁(1)读写自旋锁(2)顺序锁4、自旋锁使用注意事项5、自旋锁实验(1)修改设备树文件(2)LED驱动修改(3)测试APP(4)
ssz__
·
2024-01-01 23:19
Linux驱动开发学习
学习
笔记
linux
驱动开发
c语言
ubuntu
Python多线程编程
文章目录进程多进程多进程的问题进程的创建进程池什么是进程池进程池的创建进程锁进程的通信线程threading模块线程对象------ThreadThread的生命周期多线程线程池的创建线程同步,锁Lock(锁对象)RLock(递归锁对象)条件对象-----Condition
信号量
对象
初学小白Lu
·
2024-01-01 23:08
python
python
线程
进程
锁
java多线程- 互斥锁 自旋锁
互斥锁互斥锁又称互斥型
信号量
,是一种特殊的二值性
信号量
,用于实现对共享资源的独占式处理。任意时刻互斥锁的状态只有两种:开锁或闭锁。当有任务持有时,互斥锁处于闭锁状态,这个任务获得该互斥锁的
悔建阿里杰克马
·
2024-01-01 22:25
java并发
java
多线程
iOS GCD实战之多个网络请求的并发
在实际的开发过程当中,我们往往遇到多个请求任务,在新的任务执行之前,多个异步请求的任务需要等到执行的请求结果,有以下的两种处理方式:一,GCD实战处理多个网络请求的并发//创建
信号量
dispatch_semaphore_tsemaphore
可乐小子
·
2024-01-01 20:15
【Linux】生产者消费者模型(阻塞队列与环形队列)和POSIX
信号量
文章目录一、生产者消费者模型二、基于BlockingQueue的生产者消费者模型1.BlockQueue.hpp2.Task.hpp3.main.cc三、POSIX
信号量
四、基于环形队列的生产消费模型1
椿融雪
·
2024-01-01 18:53
Linux系统编程
linux
生产者消费者模型
阻塞队列
环形队列
POSIX信号量
多线程
FreeRTOS 初步认识
1.FreeRTOS提供的功能包括:任务管理、时间管理、
信号量
、消息队列、内存管理。与平台有关的文件包含在portable文件夹中,主要是port.c,portmacro.h两个文件。
痞子IT
·
2024-01-01 15:39
RTOS
Linux驱动
学习—设备树及设备树下的platform总线
1、什么是设备树?设备树是一种描述硬件资源的数据结构。他通过bootloader将硬件资源传给内核,使得内核和硬件资源描述相对独立。2、设备树的由来2.1平台总线的由来要想了解为什么会有设备树,设备树是怎么来的,我们就要先来回顾以下在没有设备树之前我们是怎么来写一个驱动程序的。以字符设备驱动代码框架为例,我们一起一起来回顾下。任何的设备驱动的编写,Linux已经为我们打好了框架,我们只需要做完形填
suifen_
·
2024-01-01 07:26
linux
驱动开发
c语言
运维
linux驱动
(一):led
本文主要探讨210的led驱动相关知识。驱动操作系统驱动硬件的代码,驱动上层是系统调用API,下层是硬件宏内核:内核整体上为一个过程实现,运行在同一地址空间,相互调用简单高效微内核:功能为独立过程,过程间通过IPC通信linux本质上是宏内核兼具微内核模块化特性静态模块化编译时可裁剪但需重新编译,动态模块化模块自动安装和卸载字符设备软件是以字节为单位进行操作的,块设备,块设备是以块(多字节)为单位
菜_小_白
·
2024-01-01 00:47
linux
运维
服务器
Linux系统编程之常用线程同步的三种方法
Linux系统编程之线程同步高效率编程~~~~~~~~Linux系统中线程最大的特点就是共享性,线程同步问题较为困难也很重要,最常用的三种是:条件变量、互斥锁、无名
信号量
。
觉皇嵌入式
·
2023-12-31 23:58
Linux
信号量
互斥锁
条件变量
线程同步
Linux信号(signal) 机制和Linux
信号量
(semaphore)机制的区别
首先,一句话总结它们之间的区别:字面上相似,但是本质上存在巨大的差别!请看详细解答...Linux信号(signal)机制signal,又简称为信号(软中断信号)用来通知进程发生了异步事件。原理:一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是进程间通信机制中唯一的异步通信机制,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。进程之间可以互相通
亚瑟-灰太狼
·
2023-12-31 20:16
Linux
分布式锁介绍和一些例子
背景多进程和多线程中有时候需要加锁,分布式锁是不同主机的不同线程之间需要加锁,加锁的目的就是保证数据一致性,防止数据竞争,单机中有很多保证数据一致性的手段,比如互斥锁、
信号量
、条件变量等等,那么多主机多线程就需要分布式锁分布式锁是个啥分布式锁其实算一种资源
nullptroot
·
2023-12-31 09:49
分布式
Framework框架概述
Framework框架框架中包含三个主要部分,分别为服务端、客户端和
Linux驱动
。
首都浪子
·
2023-12-31 07:20
Android
框架
Android
linux驱动
加载的时候提示“WARNING: CPU: 7 PID: 1 at kernel/time/timer.c:800 init_timer_key”
前言在集成一个触摸驱动到android系统内核(linux5.10)以后,系统内核运行加载报错,具体报错如下:[5.268357]WARNING:CPU:7PID:1atkernel/time/timer.c:800init_timer_key+0x60/0x11c[5.268361]Moduleslinkedin:[5.268369]CPU:7PID:1Comm:swapper/0Nottain
hi安同学
·
2023-12-31 06:07
Android系统差异化开发
linux
c语言
驱动
Java中Semaphore的深入解析与实战应用
Java提供了多种同步机制,其中Semaphore(
信号量
)是一个非常强大的工具,它可以用来控制对共享资源的访问。在这篇博客中,我们将深入探讨Semaphore的概念、用法,并通过实例来加深理解。
一休哥助手
·
2023-12-31 04:57
java
开发语言
【
Linux驱动
】驱动框架的进化 | 总线设备驱动模型
作者:一只大喵咪1201专栏:《
Linux驱动
》格言:你只管努力,剩下的交给时间!
一只大喵咪1201
·
2023-12-31 02:33
Linux驱动
linux
c语言
驱动开发
【
Linux驱动
】设备树简介 | 内核对设备树的处理
作者:一只大喵咪1201专栏:《
Linux驱动
》格言:你只管努力,剩下的交给时间!
一只大喵咪1201
·
2023-12-31 02:32
Linux驱动
linux
c语言
驱动开发
arm开发
QT
信号量
QSemaphore基础学习
QT
信号量
QSemaphore基础学习QSemaphore作为QT中的
信号量
,相当于多把互斥锁,QMutex只锁一次,而QSemaphore能锁多次,且控制多个条件。
东方忘忧
·
2023-12-30 19:02
QT
c/c++
qt
单片机通用复用组件C语言
组件内容:组件包含内容有:MODBUS主从机管理(支持RTU和ASCII),内存管理(小内存管理算法),串口管理,消息队列,环形缓冲区,类线程间同步方法(
信号量
、互斥锁、事件集),软件定时器,命令交互客户端
阿衰0110
·
2023-12-30 14:28
STM32开发经历
c语言
单片机
stm32
单片机通用组件
单片机复用组件
Linux驱动
开发简易流程
推荐视频:正点原子【第四期】手把手教你学Linux之驱动开发篇小智-学长嵌入式Linux&Android底层开发入门教程能力矩阵基础能力矩阵熟悉c/c++、熟悉数据结构熟悉linux系统,Shell脚本,Makefile/cmake/mk文件IO、多线程、竞争、并发、阻塞、同步、中断、网络熟悉调试工具,gdb、gdbserver、tcpdump行业能力矩阵平台相关:海思/君正/安霸MTK/NXP/
苏柘_level6
·
2023-12-30 12:51
linux
驱动开发
Linux驱动
开发学习笔记6《蜂鸣器实验》
目录一、蜂鸣器驱动原理二、硬件原理分析三、实验程序编写1、修改设备树文件(1)添加pinctrl节点(2)添加BEEP设备节点(3)检查PIN是否被其他外设使用2、蜂鸣器驱动程序编写3、编写测试APP四、运行测试一、蜂鸣器驱动原理蜂鸣器常用于计算机、打印机、报警器、电子玩具等电子产品中,常用的蜂鸣器有两种:有源蜂鸣器和无源蜂鸣器,这里的有“源”不是电源,而是震荡源,有源蜂鸣器内部带有震荡源,所以有
ssz__
·
2023-12-30 11:00
Linux驱动开发学习
驱动开发
学习
笔记
c语言
linux
Linux 线程安全 (2)
文章目录线程同步概念条件变量使用生产消费模型
信号量
的使用读写锁的使用Linux线程安全(1)线程同步概念竞态条件:因为时序问题,而导致程序异常.饥饿问题:只使用互相锁保证线程安全时,锁资源总被某一个线程占用的情况
梦 梦见木
·
2023-12-30 07:02
linux
Linux
操作系统
个人学习
多线程详解
阻塞一般是在等待某些资源或
信号量
的时候出现。不确定什么时候恢复。【3】Sleep()
隐士Xbox
·
2023-12-30 07:35
算法
c#
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他