原文:RT-thread内核之邮箱

一 邮箱控制块:在include rtdef.h中 二 邮箱相关接口:在src ipc.c中 三 小结 邮箱相关源码主要是在发送与接收上。发送时,由于当前邮箱可能空间已满,放不下要发送的邮件,此时,不得不挂起当前发送线程 如果存在时间参数的话 ,只要在接收函数读取出一条邮件时才会唤醒它。同理,如果当前邮箱为空,则接收函数会挂起当前的接收线程,直到有新的邮件到达 在发送函数中唤醒接收线程 或等待超时 ...

2015-03-05 18:28 0 2054 推荐指数:

查看详情

RT-thread内核之异常与中断

一、什么是中断? 中断有两种,一种是CPU本身在执行程序的过程中产生的,一种是由CPU外部产生的。 cpu外部中断,就是通常所讲的“中断”(interrupt)。对于执行程序来说,这种“中断”的发生 ...

Fri Feb 13 20:00:00 CST 2015 0 2383
RT-thread内核之事件

一、事件控制块:在include/rtdef.h中 二、事件相关接口:在src/ipc.c中 ...

Thu Mar 05 19:59:00 CST 2015 0 2624
RT-thread内核之系统时钟

一、系统时钟 rt-thread的系统时钟模块采用全局变量rt_tick作为系统时钟节拍,该变量在系统时钟中断函数中不断加1。而系统时钟中断源和中断间隔一般由MCU硬件定时器(如stm32的嘀嗒定时器)决定,rt_tick初始值为0,每次MCU产生硬件定时中断后,在中断函数中不断加 ...

Tue Feb 10 19:50:00 CST 2015 0 3931
RT-thread内核之信号量

一、信号量控制块:在include/rtdef.h中 信号量是用来解决线程同步和互斥的通用工具,和互斥量类似,信号量也可用作资源互斥访问,但信号量没有所有者的概念,在应用上比互斥量更广 ...

Thu Mar 05 01:20:00 CST 2015 0 3686
RT-thread内核之小内存管理算法

一、动态内存管理 动态内存管理是一个真实的堆(Heap)内存管理模块,可以在当前资源满足的情况下,根据用户的需求分配任意大小的内存块。而当用户不需要再使用这些内存块时,又可以释放回堆中供其他应用分配使用。RT-Thread系统为了满足不同的需求,提供了两套不同的动态内存管理 ...

Wed Feb 11 04:14:00 CST 2015 0 3232
RT-thread内核之线程调度算法

一个操作系统如果只是具备了高优先级任务能够“立即”获得处理器并得到执行的特点,那么它仍然不算是实时操作系统。因为这个查找最高优先级线程的过程决定了调度时间是否具有确定性,例如一个包含n个就 ...

Sun Feb 08 19:30:00 CST 2015 0 2457
RT-thread内核之定时器管理

一、前言 rt-thread采用软件定时器线程模式或硬件定时器中断模式来实现系统定时器管理。而rt-thread操作系统在默认情况下是采用的硬件定时器中断模式的方式,用户可以通过宏定义RT_USING_TIMER_SOFT来修改定时器管理模式。 硬件定时器中断模式是利用MCU芯片本身提供的硬件 ...

Tue Feb 10 05:40:00 CST 2015 0 4066
RT-thread内核之进程间通信

一、进程间通信机制 rt-thread操作系统的IPC(Inter-Process Communication,进程间同步与通信)包含有中断锁、调度器锁、信号量、互斥锁、事件、邮箱、消息队列。其中前5个主要表现为线程间同步,邮箱与消息队列表现为线程间通信。本文主要介绍它们的一些特性及使用 ...

Wed Mar 04 20:06:00 CST 2015 0 3608
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM