内核控制的一些功能须要移植层提供,为了方便移植.这些API函数用宏来实现,比方上下文切换.进入和退出临界区.禁止和使能可屏蔽中断.内核控制函数还包含启动和停止调度器.挂起和恢复调度器以及用于低功耗模式的调整系统节拍函数. 1.强制上下文切换宏 taskYIELD:用于强制上下文切换的宏. 在中断服务程序中的等价版本号为portYIELD_FROM_ISR.这也是个宏,事实上现取决于移植层. 用于上下文切换的实际代码由移植层提供.对于Cortex-M3硬件.这个宏会引起PendSV中断. 2.进入…
转自:http://blog.csdn.net/zhzht19861011/article/details/49819309 版权声明:本文为博主原创文章,未经博主允许不得转载.联系邮箱:zhzhchang@126.com   目录(?)[-] 查找相关文档页 获取RTOS源代码 FreeRTOS源码目录结构 编译工程 运行演示例程   FreeRTOS可以被移植到很多不同架构的处理器和编译器.每一个RTOS移植都附带一个已经配置好的演示例程,可以方便快速启动开发.更好的是,每个演示例程都附带一…
本文介绍队列的基本知识,具体源代码分析见<FreeRTOS高级篇5---FreeRTOS队列分析> 1.FreeRTOS队列 队列是基本的任务间通讯方式.能够在任务与任务间.中断和任务间传送信息.大多数情况下,队列用于具有线程保护的FIFO(先进先出)缓冲区:新数据放在队列的后面.当然.数据也能够放在队列的前面,在下一篇讲队列API函数时,会涉及到数据的存放位置. 图1-1:读写队列 图1-1所看到的的队列中.最多能保存5个项目,而且假设队列永远不会满.任务A使用API函数xQueueSend…
注:本文介绍任务通知的基础知识,具体源代码分析见<FreeRTOS高级篇8---FreeRTOS任务通知分析> 每一个RTOS任务都有一个32位的通知值,任务创建时,这个值被初始化为0.RTOS任务通知相当于直接向任务发送一个事件,接收到通知的任务能够解除堵塞状态,前提是这个堵塞事件是因等待通知而引起的. 发送通知的同一时候.也能够可选的改变接收任务的通知值. 能够通过下列方法向接收任务更新通知: 不覆盖接收任务的通知值 覆盖接收任务的通知值 设置接收任务通知值的某些位 添加接收任务的通知值…
FreeRTOS的信号量包括二进制信号量.计数信号量.相互排斥信号量(以后简称相互排斥量)和递归相互排斥信号量(以后简称递归相互排斥量).我们能够把相互排斥量和递归相互排斥量看成特殊的信号量. 信号量API函数实际上都是宏.它使用现有的队列机制.这些宏定义在semphr.h文件里.假设使用信号量或者相互排斥量.须要包括semphr.h头文件. 二进制信号量.计数信号量和相互排斥量信号量的创建API函数是独立的,可是获取和释放API函数都是同样的:递归相互排斥信号量的创建.获取和释放API函数都是…
这是Mysql系列第13篇. 环境:mysql5.7.25,cmd命令中进行演示. 当数据的值为NULL的时候,可能出现各种意想不到的效果,让人防不胜防,我们来看看NULL导致的各种神坑,如何避免? 比较运算符中使用NULL 认真看下面的效果 mysql> select 1>NULL; +--------+ | 1>NULL | +--------+ | NULL | +--------+ 1 row in set (0.00 sec) mysql> select 1<NUL…
说明:本方法适用于安全矩阵和项目矩阵授权策略的Jenkins. 很多童鞋在使用jenkins的时候忘记配置权限或者权限配置错误,然后各种蛋疼.最近闲着无事,折腾了下.好了,闲话少扯. Jenkins的权限配置文件存放在JENKINS_HOME目录. 进入JENKINS_HOME目录,找到config.xml文件.嗯,就是它了.打开config.xml,里面有一堆的东西,找找...找到了<useSecurity>和<authorizationStrategy>节点.<useSe…
源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.说明 1.1 项目结构说明 本用例关于rabbitmq的整合提供简单消息发送和对象消费发送两种情况下的sample. rabbitBaseAnnotation.java中声明了topic类型的交换机.持久化队列.及其绑定关系,用于测试说明topic交换机路由键的绑定规则. rabbitObjectAnnotation.java中声明了direct类型的交换机,持久化队…
这是Mysql系列第10篇. 环境:mysql5.7.25,cmd命令中进行演示. MySQL 数值型函数 函数名称 作 用 abs 求绝对值 sqrt 求二次方根 mod 求余数 ceil 和 ceiling 两个函数功能相同,都是返回不小于参数的最小整数,即向上取整 floor 向下取整,返回值转化为一个BIGINT rand 生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列 round 对所传参数进行四舍五入 sign 返回参数的符号 pow 和 power 两个函数的功能相同…
这是Mysql系列第14篇. 环境:mysql5.7.25,cmd命令中进行演示. 开发过程中,会经常用到数据库事务,所以本章非常重要. 本篇内容 什么是事务,它有什么用? 事务的几个特性 事务常见操作指令详解 事务的隔离级别详解 脏读.不可重复读.可重复读.幻读详解 演示各种隔离级别产生的现象 关于隔离级别的选择 什么是事务? 数据库中的事务是指对数据库执行一批操作,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功的情况. 举个例子 比如A用户给B用户转账100操作,过程如下: 1…