对于RTOS 移植来说,移植平台至少要提供两方面的设备。
1、OS运行时,需要tick,所以需要提供Timer定时器
2、OS运行时,需要调度,就是挂起当前线程,把控制权交给系统,所以需要访问系统各个模式下栈的能力,以及使能屏蔽中断的能力。
从ARM平台上,要提供timer和swi处理。
其他的就不依赖平台了。
这里针对2410,发现定时器不准,调试时候,就找了一个差不多的。
这里在s...
分类:
其他好文 时间:
2014-11-02 22:34:53
阅读次数:
206
函数调用、参数类型、返回结果,积木模块 压栈:通用寄存器、cpsr状态寄存器 rtos移植:cpu移植、心脏时钟tick_timer移植 实时操作系统的实时性肯定干不过裸机,但是如果上了系统层面的话,板级资源比较多,外设挂载相对比较容易,所以说实时操作系统的对抗有很大程度上是整个系统的对抗...
分类:
其他好文 时间:
2014-10-27 22:44:46
阅读次数:
196
ARM最新的面向IOT的RTOS与平台mbed介绍。mbed资源与入门。...
分类:
其他好文 时间:
2014-10-26 21:21:45
阅读次数:
185
Freertos是一个硬实时内核,支持众多的微处理器架构,我们能够从它的官网(www.freertos.ort)下载它的sourcecode,同一时候也能够看出它支持了几十种的微处理器架构,这些就不罗嗦了。之所以选择研究这个,是应为窥探RTOS内核的内幕一直每个做底层软件开发者的心愿,选择过好几.....
分类:
其他好文 时间:
2014-09-27 14:02:09
阅读次数:
229
在我看的两种RTOS中,线程都是以优先级队列的方式存储,有的可能支持同优先级的线程,那每一个优先级的线程就以循环链表的方式存储。而这个优先级队列是以数组的方式存储。如下图所示: 在内核调度时,需要从就绪队列中找出优先级最高的线程,乍看下狠高端,其实简化下,就是在数组中找最大数的算法。而且,数的范围是...
分类:
其他好文 时间:
2014-09-09 11:49:18
阅读次数:
842
#ifndef __CMSIS_OS_H__#define __CMSIS_OS_H__#include #include #include "RTOS.h"// API version (main [31:16] .sub [15:0])#define osCMSIS ...
分类:
其他好文 时间:
2014-08-19 12:26:14
阅读次数:
561
RTOS里面最常见也最核心的数据结构,双向链表实现VS 2008下可编译测试。/** @file
Copyright (c) 2008 - 2014, MX.Studio
All rights reserved.
Created by Cstyle
**/
#ifndef _LIST_H_
#define _LIST_H_
#ifdef __cplus...
分类:
其他好文 时间:
2014-07-30 20:44:44
阅读次数:
407
RTOS里面最常见的以及最核心的数据结构,队列的实现。可在VS2008 下编译测试。
/** @file
Copyright (c) 2008 - 2014, MX.Studio
All rights reserved.
Created by Cstyle
**/
#ifndef _QUEUE_H_
#define _QUEUE_H_
#ifdef ...
分类:
其他好文 时间:
2014-07-30 20:44:14
阅读次数:
344