T-Kernel作为一种嵌入式操作系统,由于实时性和开源性,在嵌入式操作系统领域中的应用越来越广泛。ARM是一款比较好的微处理器,T-Kernel在ARM上的应用研究基本上是空白,所以结合两者进行研究促进T-Kernel在国内嵌入式领域的发展。同时,T-Kernel内部调度机制存在着优先级反转缺陷,优先级反向使得高优先级任务的执行时间无法预测,增加了实时系统的不确定性。早期的解决协议较好地解决了优先级反转问题,但同时也存在着自身不足之处。 针对T-Kernel存在的缺陷,在深入研究相关协议的基础上,本论文提出了一种新的改进的优先级继承协议。该协议设置超时保护机制,避免任务在获取信号量时长时间的阻塞,结合Havender提出的“有序资源使用法”防止死锁发生,给出该协议的分析过程,并把该协议结合到T-Kernel中。在这个基础之上,建立研究开发平台;针对硬件设备,研究引导程序的执行原理,实现系统的引导程序;构建T-Kennel内核;移植内核到开发板;最后对T-Kernel的启动过程进行了详细的分析。 T-Kernel在ARM上的移植研究,为嵌入式系统开发的提供了一种开发流程,同时对于T-Kernel的启动过程的分析,为以后的应用程序开发提供了一个接口;对于T-Kernel存在的优先级反转问题的解决,可以改进T-Kernel的实时性和灵活性,同时为实时系统的性能改进提供了参考。
上传时间: 2013-04-24
上传用户:shangdafreya
随着国内工业化、数字化的迅速发展,嵌入式开发在IT行业中的重要性越来越显著。嵌入式开发领域对产品的功能性、稳定性、实时性等方面的要求也越来越高。 采用嵌入式实时操作系统作为开发平台,以高性能的嵌入式处理器为工业控制等领域的主控制器可以有效地提高系统的可靠性、实时性、和软件编程的灵活性。在嵌入式处理器方面,ARM构架已经在高性能、低功耗、低成本的嵌入式领域里占领先地位。而在嵌入式操作系统方面,适合国内发展方向的解决方案以及系统基础结构方面并不理想。首先,国外成熟的嵌入式实时操作系统大都成本高、结构复杂,不适合强实时应用;其次,因大部分实时操作系统不公开源码,使开发的产品存在安全隐患。而类似μC/OS-II的小型强实时嵌入式操作系统内核虽然具有低成本、易控制、小规模、高性能等特性,但这类系统的基础较为薄弱,面临产品化和商业化还有一定的距离。 本文针对这种情况,结合现有的操作系统内核理论及嵌入式强实时系统的特殊需求,特别是对μC/OS-Ⅱ的研究分析基础上,面向强实时应用,设计、构造了一种适合在32位ARM处理器环境下使用的内核。这样做的目的是为了提供一个基础牢固、值得信赖的基本平台。 本文研究工作主要集中在以下几个方面: 针对嵌入式环境中高效、简洁、易扩展、易剪裁的要求,对内核体系结构框架进行了设计。内核整体上采用分层结构,在各层中采用功能相对独立的模块:在最底层借鉴微核的原理,只提供最基本的功能模块。 针对系统快速和稳定的实时响应能力需求,为IRQ中断建立了统一的中断入口,采用合理的半嵌套工作方式;保留FIQ为不可屏蔽中断,在快速反应场合使用;引入中断分段处理机制解决中断和任务的ITC机制共享,需要硬保护机制相互协调所引起的硬保护机制被隐性地泛滥使用问题。 针对应用提出的系统行为的可预测性需求,在调度算法方面采用基于优先级位图的抢占阈值调度算法,提高了处理器的利用率和任务集合的可调度性,减少了内核存储开销;在共享资源访问控制方面,以优先级天花板协议为依据,使用互斥事件解决优先级反转和死锁问题的发生。 为了保障系统的强实时性能,本文还对内核的时钟管理、内存管理等方面进行了设计。最后,通过实时性能测试,结果表明该实时内核有很好的强实时特性。
上传时间: 2013-04-24
上传用户:alia
机械手是自动装配生产线上必不可少的设备,它可以模拟人手臂的部分动作,按预定的程序、轨迹和要求,实现抓取、搬运和装配等工作。在减轻人的劳动强度和提高装配质量和在恶劣环境下作业等方面,起到了积极的作用。嵌入式系统是近年来发展起来的以应用为中心并且软硬件可裁剪的实时系统,它的特点是高度自动化,响应速度快等,非常适合于要求实时的和多任务的场合。 本文分析了机械手控制系统的功能要求,研究设计了一种基于ARM和DSP的机械手数控系统的方案。嵌入式ARM处理器,具有运行速度快、功耗低、程序设计灵活、外围硬件资源丰富等优点,但其很难在处理大数据量、复杂算法时保证系统的灵活性和实时性。DSP作为数字信号处理的核心器件,能够实时快速的完成控制算法运算,由于DSP普通输入输出口的高低电平变化周期最快只能到1微秒左右,不适合高速输入输出;FPGA芯片高速输入输出数据,时间可缩短至几十纳秒。另外利用FPGA可以方便的实现各种接口的逻辑时序,丰富的接口使得该系统能够方便的进行移植,扩展了该系统的应用领域,从而提升了其性价比,通过ARM处理器和DSP以及FPGA技术的有机结合,发挥各自的优势,使系统具有程序设计灵活、以太网通信、大容量存储、高速数据输出、可移植等特点,既满足高速机械手自动控制的要求,同时又具有一定的通用性。 通过本课题实践表明,基于ARM和DSP构建嵌入式数控系统的应用方案全可行、合理,同传统的人机交互系统设计相比,能大量地减轻研发任务,提高发速度,能够在短时间内得到控制性能优秀的数控系统。
上传时间: 2013-06-11
上传用户:康郎
随着现代控制理论在机电技术领域的不断发展,多电动机协调控制技术在机电控制系统中得到广泛的应用,给嵌入式系统的数控应用提供了巨大机遇。传统的伺服运动控制很难在处理大数据量、复杂算法时保证系统的灵活性和实时性。嵌入式系统是近年来发展起来的以应用为中心并且软硬件可裁剪的实时系统,它的特点是高度自动化,响应速度快等,非常适合于要求实时的和多任务的场合。 本文以嵌入式数控系统为项目背景,研究设计了一种基于ARM和FPGA的嵌入式数控系统的方案。设计中,通过QuartusⅡ、ModelSim和Protel 99等电子设计自动化开发工具完成了一个高性能嵌入式软硬件系统的设计及仿真验证;采用了实用小巧的嵌入式实时操作系统μC/OS-Ⅱ,为应用系统的实时性提供了保证。该嵌入式数控系统满足了用户对应用系统实时性和快速处理的要求,具有较广泛的应用前景。 通过本课题实践表明,基于ARM和FPGA构建嵌入式数控系统的应用方案完全可行、合理,同传统的人机交互系统设计相比,能大量地减轻研发任务,提高研发速度,能够在短时间内得到控制性能优秀的数控系统。而μC/OS-Ⅱ实时操作系统的加入,使得系统很好地进行多任务处理,并保证了系统的实时性。
上传时间: 2013-07-22
上传用户:huangzchytems
生物识别技术代表了未来身份验证技术的发展方向,而指纹识别技术又是最可靠、最有效的生物识别技术之一。目前,指纹识别技术是优于其它生物识别技术的身份鉴别方法。这是因为人的指纹各不相同、终生基本不变的特点已经得到公认,特别是现有的指纹识别算法已达到识别迅速、准确可靠的水平,是完全可以商业化的生物识别技术。 传统的指纹识别系统多是基于PC平台,这种系统将指纹图像处理和指纹匹配甚至指纹采集控制都放在PC平台上,在获得了较高速度和开发效率的同时,缺点也是显而易见的,其体积庞大,成本较高。而已有的嵌入式指纹识别系统多是基于单片机和DSP的,不是在运算速度上受到硬件限制,就是在系统的扩展性、可维护性及用户交互上有诸多不足。 近年来指纹识别应用的普及对自动指纹识别系统的便携性和易用性提出了更高的要求,指纹识别技术正向着小型化和嵌入式的方向发展。在微电子领域,以ARM、DSP、FPGA为代表的嵌入式微处理器的性能飞速提高,为构建嵌入式系统提供了硬件保证。 ARM是当前最为流行的32位RISC处理器架构,目前ARM占RISC处理器市场的七成左右。三星公司的S3C2410是基于ARM920T内核的通用32位微处理器,它具有高性能和低功耗的特性,被设计用于手持设备和通用嵌入式系统。 嵌入式系统对操作系统和其上运行的软件有特别的要求。针对本课题所采用的ARM硬件平台,详细介绍了嵌入式操作系统Arm-Linux的移植。分别说明了交叉编译工具链的安装、引导装载器的移植和Linux内核的裁减和交叉编译过程。为了运行应用程序,还介绍了文件系统的构建。 指纹识别系统需要指纹采集设备。FPS200是Veridicom公司推出的第三代半导体指纹传感器,是一款专为嵌入式系统设计的高性能、低成本、低功耗的电容式固态指纹传感器。本文详细阐述了基于FPS200的USB接口指纹采集卡的设计与实现。 指纹图像处理与匹配是整个系统的重要环节,论文介绍了图像处理与匹配的一般概念,并提出了新的指纹匹配方法。指纹匹配是自动指纹识别中的一个难点。现有的指纹匹配方法大致可以归结为图形匹配和人工神经网络匹配两大类,本文提出的基于线段的特征点匹配算法属于图形匹配。 嵌入式系统需要完善的软件支持。随着嵌入式技术的飞速发展,用户交互界面也由传统的字符界面向图形界面转变,图形用户界面系统得到了长足的发展。MiniGUI 是一个非常适合于工业控制实时系统以及嵌入式系统的可定制的、小巧的图形用户界面支持系统。本文介绍了基于MiniGUI的可视化指纹识别软件设计。 综上所述,本文针对特定硬件条件,构建了定制的嵌入式操作系统;设计了支持USB数据传输的指纹采集卡;指纹图像的滤波、提取特征和指纹特征匹配均针对嵌入式系统的实际情况进行了优化;利用MiniGUI图形支持库完成了界面美观友好的可视化指纹识别程序。系统具有安全可靠、易于扩展、性价比高等优点。
上传时间: 2013-08-02
上传用户:小儒尼尼奥
MQX 实时操作系统设计用于单一处理器、多处理器和分布式处理器等形式的嵌入式实时系统。 Freescale 半导体公司成功地搭载MQX 操作系统软件平台用于ColdFire 和PowerPC 系列微处 理器。相比于最初发布的MQX 软件,Freescale MQX 软件更易于配置和使用。现在单一发布版本 就包含了MQX 操作系统外加其它所有软件组件来支持特定的微处理器。有关Freescale MQX 的 发布版本的详细说明如下。 Freescale MQX 本文档将以“Freescale MQX”作为本软件的标识。 MQX 是一个运行时函数库,程序用它来实现实时多任务应用。其主要特征为:大小可裁剪、 面向组件的架构和便于使用。 MQX 支持多处理器应用,并且可用于灵活配置嵌入式输入/输出产品,如网络、数据通讯和 文档管理等。 本手册通篇都使用 MQX 作为MQX 操作系统的缩写。
上传时间: 2013-11-11
上传用户:kz_zank
摘要 本研究计划之目的,在整合应用以ARM为基础的嵌入式多媒体实时操作系统于H.264/MPEG-4多媒体上。由于H.264是一种因应实时系统(RTOS)所设计的可扩展性串流传输(scalability stream media communication)的编码技术。H.264主要架构于细细粒可扩展(Fine Granula Scalability,FGS)的压缩编码机制。细粒度可扩展压缩编码技术是最新MPEG-4串流式传输标准,能依频寛的差异来调整传输的方式。细粒度扩展缩编码技术以编入可选择性的增强层(enhanced layers)于码中,来提高影像传输的质量。本计划主要在于设计一种简单有效的实时阶层可扩展的影像传输系统。在增强层编码及H.264的基本层(base layer)编码上使用渐进的细粒度可扩展编码(Progressive Fine Granularity Scalable,PFGS)能直接使用H.264的格式特色来实现FGS。同时加入了LB-LLF(Layer-Based Least-Laxity-Fir stscheduling algorithm)的排程算法,来增 进网路传输影像的质量。由实验结果显示本系统在串流影像质量PSNR值上确有较佳的效能。
上传时间: 2014-12-26
上传用户:mpquest
实时操作系统,Kernel部分完成于2006年上半年,其IPC部分甚至是年中时才具备相 应的雏形。最开始时是因为要为朋友做一个小型的手持设备,而本人起初又是另一国内老牌 实时操作系统:DOOLOO RTOS开发人员,但这个团队在2005年底已经解散。但朋友的系统要 上,用其他小型系统吗,一不熟悉,二看不上。答应朋友的事,总得有解决方法吧,即使是原来 的DOOLOO RTOS,因为其仿VxWorks结构,导致它的核心太大,包括太多不必要的东西(一套 完整的libc库),这些方案都否决了。怎么办?当时朋友那边也不算太急,先自己写一套内核吧。 这个就是源头!(后来虽然朋友的项目夭折了,但这套OS则保留下来了,并开源了,万幸) 1 序 3 1.1 RT-Thread诞生 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 艰难的发展期 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 一年增加0.0.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Cortex-M3的变革 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5 面向对象设计方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.6 文档结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 实时系统 7 2.1 嵌入式系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 实时系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3 软实时与硬实时 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 快速入门 11 3.1 准备环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 初识RT-Thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.3 系统启动代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.4 用户入口代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.5 跑马灯的例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.6 生产者消费者问题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4 RT-Thread简介 25 4.1 实时内核 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.2 虚拟文件系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3 轻型IP协议栈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.4 shell系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.5 图形用户界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.6 支持的平台 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5 内核对象模型 29 5.1 C语言的对象化模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.2 内核对象模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6 线程调度与管理 39 6.1 实时系统的需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
上传时间: 2013-10-14
上传用户:1234321@q
嵌入式系统是一种应用范围非常广泛的系统。可以说除了桌面计算机和服务器外所有计算设备都属于嵌入式系统,例如从便携式音乐播放器到航天飞机上的实时系统控制都属于嵌入式系统。 大多数商用的嵌入式系统都设计成专用任务的低成本的产品。大多数的嵌入式系统都具有实时性的要求。有些功能需要非常快的主频,但其他大多数功能并不需要高速的处理能力。这些系统通过特定的器件和软件来满足实时性的要求。 简单地通过速度和成本来定义嵌入式系统是困难的,但对于大批量的产品而言,成本常常对系统设计起决定作用。通常,一个嵌入式系统的很多部分相对系统主要功能来说需要较低的性能,因此嵌入式系统和通用PC相比,能够使用一个满足辅助功能的合适的CPU,从而简化了系统设计,降低了成本。例如,数字电视的机顶盒需要处理每秒以百万兆位计的连续数据,但这些数据处理大部分是由定制的硬件来实现的,如解析、管理和编解码多个频道的数字影像。 对于大批量生产的嵌入式系统,如便携式音乐播放器或手机等,降低成本就成为最主要的问题。这些系统通常只具有几个芯片:一个高度集成的CPU,一个定制的芯片用于控制其他所有的功能,还有一个存储芯片。在这种设计中,每部分都设计成使用最小的系统功耗。 对于小批量的嵌入式应用,为了降低开发成本,常常使用PC体系结构,通过限制程序的执行时间或用一个实时操作系统来替换原先的操作系统。在这种情况下,可以使用一个或多个高性能的CPU来替换特殊用途的硬件。 嵌入式系统的软件通常运行在有限的硬件资源上:没有硬盘、操作系统、键盘或屏幕。软件一般都没有文件系统,如果有的话,也会采用Flash驱动器。如果有人机交互接口的话,也是一个小键盘或液晶显示器。硬件是计算机的物理部分,和存储在硬件中的计算机软件程序和数据区分开来。 嵌入到机械中的嵌入式系统需要长期无故障连续运行,因此它的软件需要比PC中的软件更加仔细地开发和更加严格地测试。 那么,到底什么是嵌入式系统呢? 根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(原文为devices used to control,monitor,or assist the operation of equipment,machinery or plants)。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。 目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软件 硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 可以这样认为,嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。 本书是按照人事部、信息产业部全国计算机技术与软件专业技术资格(水平)考试要求编写,内容紧扣《嵌入式系统设计考试大钢》。全书共六章,分别对嵌入式系统基础知识、嵌入式微处理器与接口设计、嵌入式软件与操作系统、嵌入式软件程序设计、嵌入式系统设计与维护等知识进行了详细的讲解。最后介绍了一个典型的嵌入式系统设计案例。 本书内容丰富,结构合理,概念清晰。既可作为全国计算机技术与软件专业技术资格(水平)考试中嵌入式系统设计师级别的考试用书,供有关考生学习使用,也可作为本科生嵌入式系统相关课程教材或培训书使用。
上传时间: 2013-10-29
上传用户:dongqiangqiang
以VRTX为对象详细介绍了嵌入式实时操作系统的原理和应用,特别是第一部分关于嵌入式实时系统基础 的介绍非常适合初学者全面地了解嵌入式实时操作。
上传时间: 2015-04-06
上传用户:zhuyibin