嵌入式的有关知识
- 格式:doc
- 大小:50.50 KB
- 文档页数:23
嵌入式的有关知识 1. 什么 是嵌入式?嵌入式的定义与特点?
(1) 嵌入式系统的定义
按照历史性、本质性、普遍性要求,嵌入式系统应定义为:“嵌入到对象体系中的专用计算机系统”。“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。对象系统则是指嵌入式系统所嵌入的宿主系统。
(2) 嵌入式系统的特点
嵌入式系统的特点与定义不同,它是由定义中的三个基本要素衍生出来的。不同的嵌入式系统其特点会有所差异。
与“嵌入性”的相关特点:由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气/气氛环境(可靠)、成本(价廉)等要求。
与“专用性”的相关特点:软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。
与“计算机系统”的相关特点:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应的接口电路。
另外,在理解嵌入式系统定义时,不要与嵌入式设备相混淆。嵌入式设备是指内部有嵌入式系统的产品、设备,例如,内含单片机的家用电器、仪器仪表、工控单元、机器人、手机、PDA等。
2. 什么是嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
3. 什么是嵌入式操作系统?与其他操作系统相比,嵌入式有那些优势?
嵌入式操作系统EOS(Embedded OperatingSystem)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度工作,控制协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。嵌人式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。
优势如下:
1, 可装卸性。开放性、可伸缩性的体系结构。
2, 强实时性。EOS实时性一般较强,可用于各种设备控制当中。
3, 统一的接口。提供各种设备驱动接入。
4, 操作方便、简单、提供友好的图形GUI,图形界面,追求易学易用。
提供强大的网络功能,支持TCP/IP协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。
5, 强稳定性,弱交互性,一旦开始运行就不需要用户过多的干预,嵌入式操作系统的用户接口一般不提供操作命令,它通过系统调用命令向用户程序提供服务。
6, 良好的可移植性。
4. 嵌入式的发展方向?
嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能化,嵌入式更显重要。按照行业细分,嵌入式产品主要分布在消费类电子、通信、医疗、安全等行业.
5. 嵌入式具体有哪方面的应用?
手机,PDA,机顶盒,高清电视(HDTV),路由器,汽车电子,智能家电,医疗仪器,航天航空设备等。
6. 有那些常见的嵌入式操作系统?
常见的嵌入式操作系统有:linux,Uclinux,WinCE,
PalmOS, Symbian, eCos, uCos-11, vxWorks, pSOS, Nucleus,
ThreadX, Ptems QNX, INTEGRITY, OSE, C Executive。
7. 通过学习嵌入式,我哪方面的能力会有所提高?
编程方面的能力,解决问题的能力,有项目开发的经验,对实际项目可以直接上手。
8. 嵌入式C语言和普通的C语言有什么区别?
嵌入式C语言是基于linux 开发平台的编程,基本的语法和算法是相同的。只是在普通的C语言的基础上对C语言有了更深入的运用。
9. 嵌入式学习需要涉及到那些方面的基础知识?
需要有一定的C语言基础。
10. 我学的是偏硬件方面的东西,嵌入式是软件方面的吗?涉及到硬件方面的东西有多少?
嵌入式本来就是软硬件结合的,硬件方面的主要是开发一些与硬件关系密切的底层程序,如BOOTLoader,最初级的硬件驱动程序等。如果是通信工程,电子工程等偏硬件方面的专业,学了嵌入式对以后的发展更好,因为对硬件的原理非常清楚,再对应用软件有一定的了解,那就比做纯软件出身的人有更好的优势了。
11. 什么是嵌入式操作系统?
嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序编程。
嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。范围极其广阔,从最初的4位处理器到目前仍在大规模应用的8位单片机,到最新的受到广泛青睐的32位。
12. linux的优点?
Linux的兼容性问题和开放的源代码,
开放的源码是让其他人可以得到源代码,并且认可或者采纳对源代码的修改,开发者可以使用,改造,共享,提交回来源代码。
硬件支持,许多驱动程序都是linux自己维护的。
通讯协议和软件标准使得linux系统更加容易与别人合作
Linux有丰富的网络协议和资源。
13. 嵌入式在职场的优势?
我国目前嵌入式软件人才缺口每年为40万人左右,未来随着“三网融合”不断提速,手机、数字电视、信息家电、网络电话、汽车电子、医疗电子等都将是嵌入式软件的重要应用领域,嵌入式开发人才将会越发抢手。
当前,企业需要的嵌入式开发人才要求具备C语言编程、嵌入式操作系统(Linux)、驱动程序开发等经验,而这些经验学生在学校无法学到。尽管很多大学的计算机、电子、软件工程等相关专业开设了程序设计、微机原理、单片机等课程,但培养出来的学生与企业的实际要求却有很大差距。这个差距必须靠系统的学习和亲自参与实战项目的开发来弥补。
14. 嵌入式软件开发与JAVA,C++,java c++
c# .nat ,web html js php asp的区别?
嵌入式软件开发会随着你工作时间的长短,经验的增长,能力会越来越强,这样薪资水平就会越来越高,而不象JAVA,C++等很多年只停留在前两年的水平,这些软件仅仅是对一些接口的调用,你根本没法了解他的源代码和实现体,所以你的能力不会有很大的提高,只是熟练了一点而已,而嵌入式产品每一次的产品开发都会有新的东西,其中的源代码你都是可以看到的,每一款产品都会需要不同的功能,这样你设计的东西就会很多,那随着时间的增长,你接触的东西越多,经验越丰富,水平就越高,那薪资水平自然就高了。
15. 嵌入式计算机系统与通用型计算机系统相比具有什么特点?
1.嵌入式系统通常是面向特定应用的嵌入式CPU与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。
2.嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
3.嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中对处理器的选择更具有竞争力。
4.嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。
5.为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中。
6.嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发
16. 学习那些课程?对课程的具体描述?
1, 嵌入式C语言与C++。
2, Linux驱动程序设计。
3, 嵌入式linux系统移植。 4, RAM处理器的原理和应用。
17. 做那些项目,这些项目涉及那些知识点,对个人能力有那些提高?
1, 用C语言实现学生信息管理系统
2, 用C++实现公司管理系统
3, 系统编程实现网络间的通信
4, 基于QT平台的软件开发
以下能力可以得到提高:
1,C语言能力会有很大的提高,对数据结构,树,链表,结构体等基本的C语言会得到熟练掌握。
2,对于嵌入式软件开发的流程会有深入的了解
3,体验真实的项目开发,提高了解决问题的能力
18. 嵌入式的开发流程?
1, 选择硬件,处理器和开发版
2, 下载或者编译对应体系结构的工具链,建立交叉开发环境
3, 初始话开发板并启动 4, 选择下载linux内核版本,修改编译
5, 开发linux应用程序
6, 配置linux文件系统
7, 配置系统本地运行
19. 嵌入式系统与单片机的区别?
嵌入式系统是基于8位单片机发展起来的。可以把嵌入式系统应用分成高端与低端,把原来的单片机应用理解成嵌入式系统的低端应用,含义为它的底层性以及与对象系统的紧耦合。
20. 有涉及到驱动程序设计和3G方面的知识吗?
会涉及到到3G的基本概念,有关3G的基本原理,主要是应用层面上的,在应用层面的基础上会有驱动的程序设计。
21. 嵌入式对那些系统进行开发?
嵌入式开发就是对除了电脑之外的所有设备上的操作系统的开发,开发对象有手机,掌上电脑,机电系统等。
22.什么是QT?
Qt是一个跨平台的C++应用程序开发框架,有时又被称为C++部件工具箱。Qt被用在KDE桌面环境、Opera、Google Earth、Skype、Adobe
Photoshop Album和VirtualBox的开发中。它是诺基亚(Nokia)的Qt Development
Frameworks 部门的产品。使用 Qt ,只需一次性开发应用程序和用户界面,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序
23. 用QT能做什么?
能开发出以下最常见的东西:
一款跨平台的开源网络浏览器,QQ聊天软件,freemat(一个自由开源的数值计算环境和编程语言 )、Gadu-Gadu(即时通信软件 )、Google地球(Google Earth)(三维虚拟地图软件)、ImageVis3D 、KDE(著名的桌面环境)、Elibs(一个许多KDE程序都使用的共享库,如Amarok、K3b、KDevelop、KOffice等)、Last.fm播放器(著名的互联网音乐社区网站的桌面客