基于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()
百纵科技:美国云服务器活动重磅来袭,洛杉矶C3机房 带金盾高防,会员后台可自助管理防火墙,添加黑白名单 CC策略开启低中高.CPU全系列E52680v3 DDR4内存 三星固态盘列阵。另有高防清洗!百纵科技官网:https://www.baizon.cn/联系QQ:3005827206美国洛杉矶 CN2 云服务器CPU内存带宽数据盘防御价格活动活动地址1核1G10M10G10G38/月续费同价点击...
tmhhost放出了2021年的端午佳节+618年中大促的优惠活动:日本软银、洛杉矶200G高防cn2 gia、洛杉矶三网cn2 gia、香港200M直连BGP、韩国cn2,全都是高端优化线路,所有这些VPS直接8折,部分已经做了季付8折然后再在此基础上继续8折(也就是6.4折)。 官方网站:https://www.tmhhost.com 香港BGP线路VPS ,200M带宽 200M带...
进入6月,各大网络平台都开启了618促销,腾讯云目前也正在开展618云上Go活动,上海/北京/广州/成都/香港/新加坡/硅谷等多个地区云服务器及轻量服务器秒杀,最低年付95元起,参与活动的产品还包括短信包、CDN流量包、MySQL数据库、云存储(标准存储)、直播/点播流量包等等,本轮秒杀活动每天5场,一直持续到7月中旬,感兴趣的朋友可以关注本页。活动页面:https://cloud.tencent...