嵌入式的常用操作系统有哪些!你了解吗?
嵌入式系统常见的定义是以应用为中心、以计算机技术为基础,软件可剪切、功能、可靠性、成本、体积、功耗要求严格的专用计算机。一般认为嵌入式系统需要涵盖软硬两个方面,这与以前简单的单片机系统有本质区别:
1.在硬件方面,嵌入式系统至少有一个高性能处理器作为硬件平台(目前主流是32位处理器),如ARM、MIPS等。
2.在软件上,嵌入式系统有一个多角色操作系统作为软件系统平台,如Linux、WindowsCE、Symbian、uc/osII、VxWorks等。
简要介绍了ARM的两种工作状态。
ARM处理器状态和指令集。
ARM微处理器通常有两种工作状态,可以在两种状态之间切换:
首先是ARM状态,此时处理器执行32位对齐的ARM指令,对应ARM指令集;第二个是Thumb状态,此时处理器执行16位、半字对齐的Thumb指令,对应Thumb指令集。微处理器可在程序执行过程中随时在两个工作状态之间切换,而且其工作状态的变化不会影响处理器的工作模式和相应寄存器的内容。但是当ARM微处理器开始执行代码时,它应该处于ARM状态。
简述了在Linux环境下开发嵌入式系统的几个主要环节。
Linux是开源代码。没有黑箱技术。Linux核心小,功能强大,运行稳定,系统强大,效率高,易于定制裁剪,价格竞争激烈。Linux不支持X86CPU,也可以支持其他几十种CPU芯片。
1.了解设备型号界面的大小,详细阅读用户手册和硬件设计规格说明。
2.了解电源的输出功率。
3.插拔接口的顺序是否支持热插拔和带电插拔。
4.遇到问题要多加小心,冷静分析问题,做笔记,扩大分析问题的范围,尝试新的想法,有时尝试。
5.善于利用网络资源。
Linux驱动程序开发的主要内容有哪些?
1.了解目标板设备的型号和开发中的注意事项。
2.驱动(BSP)在嵌入式系统中的重要性和位置。
3.Linux驱动的概念、驱动结构、中断和内存处理、设备驱动的初始化。
4.Linux下的设备驱动程序开发框架和过程。
5.Linux下模块驱动程序设计(动态载入)设备驱动程序加入Linux核心。
6.实验:编写驱动框架+测试用例(字符设备)两种初始方法。