基于ARM7内核的UCO S-II移植研究
摘要嵌入式操作系统的移植是设计开发的重要一环文章从全局和细节上分别研究了UC O S-II移植过程中的技术要点并着重从移植后代码的可靠性、健壮性和通用性等方面进行了研究。
关键词嵌入式操作系统移植 UC O S
由于基于ARM7内核的各种芯片之间有着很大的差异这些差异主要表现在存储系统不同、片内外设不同、中断源不同等。这就造成了嵌入式操作系统移植的不可避免性而嵌入式操作系统移植效果的优劣直接影响着目标系统的整体质量。文中采用LPC2000系列ARM7微控制器以及ADS编译器对UCO S-II的移植过程进行了测试研究。
1 UC/O S-II的移植步骤
UC/OS-II是一个占先式的实时多任务内核由ANSI C语言编写包含小部分汇编代码供不同架构的处理器使用能够管理64个任务主要系统功能包括内存块管理、任务管理、消息队列管理、信号量、互斥信号量、事件标志组、消息邮箱等。从移植UC O S-II的过程来看逻辑上可分作三大组成部分与处理器无关的内核代码、与处理器有关的核心代码、与软硬件环境设置有关的配置代码。其中与处理器无关的内核代码主要包括O S_CORE.C、 O S_FLAG.C、OS_MBOX.C、OS_MEM.C、OS_MUTEX.C、OS_Q.C、OS_SEM.C、OS_TASK.C、O S_TIM E.C、UC O S_II.C、UC O S_II.H它们主要实现任务管理、信号量、 内存管理、 消息队列、系统调度等功能 与处理器有关的核心代码主要包括OS_CPU.H、OS_CPU_A.ASM、OS_CPU_C.C它们主要与操作系统的移植相关与软硬件环境设置有关的配置代码主要包括OS_CFG.H、 INCLUDES.H它们主要用于剪裁和设置操作系统。 以上文件名为UC O S-II的默认设置无须严格按照上述名称命名文件。
由UC O S-II的逻辑结构可以看出其移植工作主要集中在与处理器有关的核心代码部分。实际测试中遵循了如下步骤。第一对OS_CPU.H进行移植这部分工作主要包括首先定义与处理器有关的数据类型如BOOLEAN、INT8U、 INT8S 等 其次进行与处理器有关的宏定义主要包括OS_ENTER_CRITICAL以及OS_EXIT_CRITICAL再次编写软中断函数主要包括OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()。第二对OS_CPU_A.ASM进行移植依据ADS编译器扩展名规则将文件名改为OS_CPU_A.S主要工作是编写4个汇编语言函数名称为O S StartH ighRdy()、O S CtxS w()、O S IntCtxSw()、O STickISR()。US O S-II启动时调用O S Start()而O S Start()又调用O S StartHighRdy()
RAKsmart 商家估摸着前段时间服务器囤货较多,这两个月的促销活动好像有点针对独立服务器。前面才整理到七月份的服务器活动在有一些配置上比上个月折扣力度是大很多,而且今天看到再来部分的服务器首月半价,一般这样的促销有可能是商家库存充裕。比如近期有一些服务商挖矿服务器销售不好,也都会采用这些策略,就好比电脑硬件最近也有下降。不管如何,我们选择服务器或者VPS主机要本着符合自己需求,如果业务不需要,...
卢森堡商家gcorelabs是个全球数据中心集大成的运营者,不但提供超过32个数据中心的VPS、13个数据中心的cloud(云服务器)、超过44个数据中心的独立服务器,还提供超过100个数据中心节点的CDN业务。CDN的总带宽容量超过50Tbps,支持免费测试! Gcorelabs根据业务分,有2套后台,分别是: CDN、流媒体平台、DDoS高防业务、块存储、cloud云服务器、裸金属服务器...
hypervmart怎么样?hypervmart是一家国外主机商,成立于2011年,提供虚拟主机、VPS等,vps基于Hyper-V 2012 R2,宣称不超售,支持linux和windows,有荷兰和英国2个数据中心,特色是1Gbps带宽、不限流量。现在配置提高,价格不变,性价比提高了很多。(数据中心不太清楚,按以前的记录,应该是欧洲),支持Paypal付款。点击进入:hypervmart官方网...