4/4 清明work

2024-04-04 00:20
文章标签 work 清明

本文主要是介绍4/4 清明work,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.总结二进制信号量和计数型信号量的区别,以及他们的使用场景。


二进制信号量:最快的最常用的信号量,可用于同步或互斥。
二进制信号量能够满足任务间的互斥和同步,需要
的系统开销最小,因此也称快速信号量。二进制信
号量可以看成一个标志,对应资源是可用还是不可
用。当一个任务调用semTake ()请求一个信号量时
,如果此时信号量可用,信号量会被清零,并且任务
立即继续执行;如果信号量不可用,任务会被阻塞来
等待信号量。
计数信号量:类似于二进制信号量,但是随信号量释
放的次数改变而改变。计数器信号量是实现任务同步
和互斥的另一种手段,在具体实现上有点差异。计数器
信号量除了像二进制信号量那样工作外,还保持对信号
量释放次数的跟踪。


2.使用技术型信号量完成生产者和消费者模型实验。

for(;;){//share_data=1;printf("shop is ok\r\n");osThreadFlagsSet(myEvent01Handle,SHOP);osDelay(500);printf("wash is ok\r\n");osThreadFlagsSet(myEvent01Handle,WASH);osDelay(500);;printf("cook is ok\r\n");osThreadFlagsSet(myEvent01Handle,COOK);osDelay(500);;
}for(;;){printf("I want to eat\r\n");osThreadFlagsWait(SHOP| WASH|COOK,osFlagsWaitAll,osWaitForever);printf("go to eat\r\n");osDelay(500);}

3.总结FreeRTOS中同步和互斥的五种方法的使用方法

队列、信号量、互斥量、事件组、任务通知。


4.总结任务通知和其他任务通信机制的区别


队列、信号量、互斥量、事件组在使用之前都需要先创建,才能使用。
任务通知无需创建即可使用。
队列、信号量、互斥量、事件组  多对多通信。
任务通知是多对一通信。(只需要知道要通知的任务ID即可)
队列、信号量、互斥量、事件组需要被创建,所以消耗的资源也是比较多。
任务通知不需要被创建消耗的资源少。


5.根据文档和录屏学习一下软件定时器,了解软件定时器的作用和软件定时器和硬件定时器的区别


一般硬件定时器集成在CPU的内部,有的可以使用外置的硬件定时器芯片,可以人
为通过编程来设置硬件定时器的工作频率,硬件定时器一旦设定好了工作频率,只要
上电,那么硬件定时器就会周期性的给CPU输出一个中断信号,称这个中断信号为时
钟中断,linux内核已经实现好了时钟中断对应的服务程序,这个服务程序也称之为
时钟中断服务函数,既然硬件定时器周期性的给CPU产生时钟中断,那么对应的中断
服务程序就会被内核周期性的调用
软件定时器是在硬件定时器基础之上出来的定时器,可以由一个硬件定时器模拟出成千
上万个软件定时器,这样程序在需要使用较多定时器的时候就不会受限于硬件资源的不
足,这是软件定时器的一个优点,即数量不受限制。但由于软件定时器是通过程序实现
的,其运行和维护都需要耗费一定的CPU资源,同时精度也相对硬件定时器要差一些。
 

这篇关于4/4 清明work的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874359

相关文章

2015多校联合训练第三场Work(hdu5326)

题意: a是b的上司,b是c的上司,则a是c的上司,问构成一个树种,有多人是 k个人的上司 思路: 先找出root,然后dfs一下就行 #include <bits/stdc++.h>#define LL long longusing namespace std;const int MAXN = 1e6;int f[105];int n, k;int mp[101][101];

HOW DO VISION TRANSFORMERS WORK

HOW DO VISION TRANSFORMERS WORK Namuk Park1,2, Songkuk Kim1 1Yonsei University, 2NAVER AI Lab{namuk.park,songkuk}@yonsei.ac.kr 总结 MSA 改善模型泛化能力: MSA 不仅提高了模型的准确性,还通过平滑损失景观来提高泛化能力。损失景观的平坦化使得模型更容易优化,表现

work note

1:  sum_total 是什么意思?  没有百度出来 见proce:  rptMohthCdr

【RabbitMQ】work模式

上一篇博客的作为rabbitMQ的入门程序,也是简单队列模式,一个生产者,一个消费者,今天这篇博客介绍work模式,一个生产者,多个消费者,下面的例子模拟两个消费者的情况。 图示:            一个生产者、两个消费者;一个消息只能被一个消费者获取。   在work模式中可以分为两种模式,一种是两个消费者平均消费队列中的消息,即使他们的消费能力是不一样的,

Cognos Schedules does not work

Schedules在正常使用了若干时间后忽然不能触发 有三种解决思路: 1.检查schedule end date, 看报表运行日期是否超过了该日期。 2.检查用户AD账号密码是否更改过,如果有过更改,那么更新安全证书。 3.使用Burst 的方式进行发送测试。因为Burst可以看到错误警告而schedule不执行根本没有提示。 更新安全证书的步骤: 1.Connectio

SpringBoot的RabbitMQ消息队列: 三、第二模式Work queues

上一节的两个工程,一个负责发送,一个负责接收,也就是一一对于的关系。      只要消息发出了,接收者就处理;当接收效率较低时,就会出现接收者处理不过来,我们就可能会处理不过来,于是我们就可能多配置接受者。这个模式就是"Work queues",它的结构如下     多个接收者,它们会出现什么情况呢?是否像大锅饭,有的人撑死,有的人饿死。这个通过例子验证。 一、再建一个接

How can OpenAI Gym‘s visualizations work within Docker?

题意:OpenAI Gym 的可视化功能如何在 Docker 中运行? 问题背景: I'd like to get OpenAI Gym working with the rendered OpenGL visualizations within a docker container. 我想在 Docker 容器中让 OpenAI Gym 与渲染的 OpenGL 可视化一起工作

xamarn.android binding parse sdk for a week to work

Xamarin.Android PackageName 需要设置为项目命名空间且全小写。 http://blog.csdn.net/jameszhou/article/details/41806377

SharePoint At Work----SharePoint Data View Web Part

添加DVWP(数据视图Web部件) 1. SharePoint Designer中打开页面,光标放置在要添加DVWP的地方。建议使用拆分模式。 2. 插入----数据视图----空白数据视图。         如果你选择了某个列表或库,你将得到一个XLV而不是DVWP。         你将看到页面上你的DVWP。现在你只有DVWP的外壳,它声明其主要特征。典型的外壳可能

DC综合——Work目录整理

DC综合——Work目录整理 源起 DC流程的工程目录需要重新整理。 其中一个比较不优雅的现象是,综合过程中,工作目录下会有很多临时的文件,比如:*.mr,*.pvl,*.syn等类型的文件。 设计比较少的时候还可以接受这种不优雅。 但是设计源文件一多,那么目录下的文件也会非常多。 虽然不影响流程,但看着那么多的文件就很烦,找其他的文件也不好找,难以接受。 尝试了几个方法,终于在最后