嵌入式系统知识点 第一周 2.25:
一:嵌入式开发概述:
1.嵌入式技术:
答:
在已有的硬件上移植操作系统;在操作系统之上做上层应用开发;在操作系统之下做底层开发。
2.嵌入式软件与非嵌入式软件的区别?
答:
嵌入式系统安装于主板的ROM只读存储器中,系统是定制在ROM中的,能够瞬间启动,启动效果类似于PC的待机恢复(软件留在内存),
优点:耗能底,效率高,反应快,系统稳定,
缺点:ROM内存不能释放,所以不能安装太多的功能。
非嵌入式系统安装于硬盘或固态硬盘(如内存卡),系统可以DIY,启动时从硬盘读取系统数据,在RAM建立一个临时的操作系统环境,关机后消失,每次启动都要重新建立一个临时系统环境。
优点:通用性高,在强大的系统支持下,RAM内存可以运行各种大型软件,
缺点:启动慢、硬件庞大、耗能高。
3.嵌入式开发与单片机开发的区别?
答:
①嵌入式开发就是设计特定功能的计算机系统,手机,mp3、mp4.mp5自动供水系统,洗衣机,油井监控系统等等都是嵌入式系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。单片机开发是简单的嵌入式开发,一般的单片机是一个40角的cpu,32个i/o口(输入输出口),因此单片机开发可以形象的说是,通过设程序,来控制引脚按一定输出高低单片来控制外围电路去控制机器运行,
②单片机开发就是嵌入式开发的一部分,单片机开发是嵌入式开发起步,单片机学好了,就升级去学习嵌入式arm开发(arm 是一中芯片)如果你能熟练掌握单片机,那么学习arm嵌入式也很容易,因为芯片操作差不多,都是对数据、地址、控制总线的操作
③他们都应用于工业,他们是包含关系,单片机开发就 是简单的嵌入式开发,现在arm嵌入开发应用比较广泛手机,mp3、mp4.mp5等等还有航天上的供电系统,导弹寻轨。
4.嵌入式开发的优缺点:
答:①优点:编写应用程序或者添加新的功能模块比较容易,不需要改变程序的框架,就可以简单的添加。在多人开发一个项目的时候,可以使用嵌入式操作系统,大家都按照,该嵌入式操作系统的要求,来开发自己的程序模块。它使得每个人独立完成一个模块,多人可以同步进行开发。由于使用嵌入式操作系统,开发程序每一个功能是独立的模块,与其他功能模块比较独立,所以像堆积木一样,开发成功之后,后面维护也比较方便。
②缺点:首先就是他对单片机硬件的存储空间有一定的要求,比没有操作系统的要大得多。另外还有就是一般的单片机工程师,对一个操作系统如果不是很熟悉,使用起来非常麻烦,有时候出现一点错误很难查出来,是操作系统本身导致的,还是应用程序导致的。最后要说的一点就是,大部分嵌入式操作系统还是要收费的,不收费的也有一些,但是有可能相应的支持不够,或者是后面维护比较不太方便。
5.传统开发的缺点:
答:①优点:从系统整体出发,强调在整体优化的条件下“自上而下”地分析和设计,保证了系统的整体性和目标的一致性;遵循用户至上原则;严格区分系统开发的阶段性;每一阶段的工作成果是下一阶段的依据,便于系统开发的管理和控制;文档规范化,按工程标准建立标准化的文档资料。
②缺点:用户素质或系统分析员和管理者之间的沟通问题;开发周期长,难于适应环境变化;结构化程度较低的系统,在开发初期难以锁定功能要求。
③(课件:1.软件移植性差也就是说适配平台能力差 2.开发人员能力要求:软硬通吃)
6.操作系统的作用:
答:①操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。
②(课件:资源管理:软件资源,硬件资源也就是管家,多任务机制,提供丰富的网络协议,提供了来源软件库)
1.嵌入式开发的方向:
2.嵌入式上层应用软件开发:
a.精通一门语言;b.熟悉一款操作系统;(会看说明书)c.数据结构/算法;
3.嵌入式底层系统软件开发:
a.精通C语言(所有操作系统内核都是由C+汇编开发的)
为什么选择C语言也就是C语言的特点:(能够直接访问硬件、移植性、运行效率)
为什么C语言能够直接访问硬件:(C语言有指针数据类型0x12345678=0xff)
什么时候选择用汇编?什么时候选择用C语言?(对硬件复杂操作用C语言)
嵌入式系统课程学习储备知识:
C语言,单片机(硬件的工作原理)
累积代码量:3w
b.理解操作系统的实现(会使用,也会添加/修改功能);
c.熟悉硬件的工作原理
CPU:stm32+64位,SPI,IIC,蓝牙,WIFI,物联网,摄像头
d.熟悉汇编
4.嵌入式系统工程师:BSP(固件工程师)内核开发
作业:
1.CPU的体系结构的种类、特点及应用场景?
答:
CPU体系结构种类:
①ARM:ARM架构,过去称作进阶精简指令集机器,是一个32位精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于行动通讯领域,符合其主要设计目标为低耗电的特性。
②x86系列/Atom(安腾):IA是Intel Architecture(英特尔体系架构)的简称,有IA-32和IA-64,均属于X86体系结构。x86或80x86是英代尔Intel首先开发制造的一种微处理器体系结构的泛称。x86架构是重要地可变指令长度的CISC。Intel Atom是Intel的一个超低电压处理器系列。处理器采用45纳米工艺制造,集成4700万个晶体管。L2缓存为512KB,支持SSE3指令集,和VT虚拟化技术(部份型号)。
③MIPS系列:MIPS是世界上很流行的一种RISC处理器。MIPS的意思是“无内部互锁流水级的微处理器”,其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片,和英特尔采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS自己只进行CPU的设计,之后把设计方案授权给客户,使得客户能够制造出高性能的CPU。
④PowerPC系列:PowerPC是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBM的IBM PowerPC 601 微处理器POWER架构。二十世纪九十年代,IBM、Apple(苹果公司)和Motorola(摩托罗拉)公司开发PowerPC芯片成功,并制造出基于PowerPC的多处理器计算机。PowerPC架构的特点是可伸缩性好、方便灵活。
⑤ARM/MIPS/PowerPC均是基于精简指令集机器处理器的架构;X86则是基于复杂指令集的架构,Atom是x86或者是x86指令集的精简版
特点:
CPU存在大量的控制和储存单元,导致其拥有强大的分支处理能力,可以将来自不同地方的指令调整顺序,使命令按次序顺利和高效运行。同时由于具有一定的计算单元,所以也可以处理一些串行计算任务,多核CPU则可以处理一些简单的并行任务。
应用场景:
CPU拥有强大的指令处理和计算能力,往往用于进行电子计算机的核心工作,即解释计算机指令和处理计算机软件中的数据。事实上,在大多数的个人电脑中,用户和软件都会不断地产生指令流,而处理指令流之间执行的先后顺序,就是CPU要完成的一个重要工作。CPU将从I/O设备接收到的指令集储存在储存单元中,然后按照一定的规则,取出相应的指令,并转化成对应的操作控制信号,发送给所属的计算机部件。除此之外,CPU还要负责处理计算机软件所产生的数据。考虑到软件数据类型多样而且处理逻辑复杂,所以CPU往往在这类数据上表现出更优异的性能。
2.CPU 的构成:
CPU主要由运算器、控制器、寄存器组和内部总线构成。
运算器:由算术逻辑单元ALU、通用寄存器、数据暂存器等组成。程序状态字寄存器接受从控制器送来的命令并执行相应 的动作,主要负责对数据的加工和处理。
1)算术逻辑单元ALU:用于存放各种算术逻辑运算(与或非)、算术运算(±
/)
2)通用寄存器:用来存放操作数、中间结果和各种地址信息的一系列存储单元。常见的通用寄存器如下:
①数据寄存器:
AX:累加寄存器,算数运算的主要寄存器;BX:基址寄存器;CX:计数寄存器,串操作。循环控制的计数器DX:数据寄存器。
②地址指针寄存器:SI:源变址寄存器DI:目的变址寄存器;SP:堆栈寄存器;BP:基址指针寄存器
③累加寄存器:AC又称为累加寄存器。当运算器的逻辑单元执行算术运算或者逻辑运算的时候为ALU提供一个工作区。
3)数据暂存器:用来暂存从主存储器读出的数据,这个数据不能存放在通用寄存器中,否则会破坏其原有数据
4)程序状态字寄存器:用于保留与算术逻辑运算指令或测试指令的结果对应的各种状态信息
控制器:由程序计数器PC、指令寄存器IR、地址寄存器AR、数据寄存器DR、指令译码器等。
①程序计数器(PC):用于指出下条指令的在主存中的存放地址,CPU根据PC的内容区主存处取得指令。由于程序中的指令是按照顺序执行的,所以PC必须有自动增加的功能,也就是指向下一条指令的地址。
②指令寄存器(IR):用于保存当前正在执行的这条指令的代码,所以指令寄存器的位数取决于指令字长。
③地址寄存器(AR):用于存放CPU当前访问的内存单元地址
④数据寄存器(DR) :用于暂存从内存储器中读出或写入的指令或数据。
⑤指令译码器:用于对获取的指令进行译码,产生该指令操作所需要的一些列微操作信号,以控制计算机各部件完成该指令。
3.嵌入式不等同于ARM
4.单片机是否可以作为嵌入式CPU?可以
5.那些操作系统可以作为嵌入式操作系统?
答:可以移植的操作系统(代码来源,提供可移植接口)成为嵌入式操作系统
6.实时性(软件、硬件):规定时间内完成规定的动作。
vxwords实时性强。Linux 无实时性,运行效率高,稳定。RT—Linux openwrt。

嵌入式系统知识点 第一周 2.25相关推荐

  1. 2014025650《嵌入式程序设计》第一周学习总结

    2014025650<嵌入式程序设计>第一周学习总结 教材学习总结 本周开始上嵌入式程序设计课,在开始学习的时候,老师带领我们复习一下Linux操作系统的一些命令操作符. 教材学习中的问题 ...

  2. [ARM嵌入式系统开发]第一章之嵌入式系统的软硬件

    本章的最后,通过描述ARM为核心的嵌入式系统,来介绍了嵌入式系统的软件和硬件构成和结构.这里根据这部分的介绍以及其他的文章,描述下通用的嵌入式系统的软件和硬件.     首先来说下硬件,书中说,包含有 ...

  3. 华清远见嵌入式培训_第一周回顾与反思

    目录 第一天 周二 1.1 Linux系统的使用 1.2 终端 1.3 Linux系统命令 1.4 vi编辑器的使用 第二天 周三 2.1 顺利进入("hello world")阶 ...

  4. 嵌入式系统知识点总结【1-5章】

    第一章 嵌入式系统概述 1.嵌入式系统的定义及特点 定义 从广义的角度:嵌入式系统是一切非PC和大型机的计算机系统 从应用的角度:嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于 ...

  5. 嵌入式系统知识点总结【6-12章】

    第六章 1.嵌入式系统中延时实现的方式及其优缺点 1.完全硬件实现 优点:使用电容及电阻即可完成特定的振荡延时作用 缺点:延时时间无法改变 2纯软件方式 优点:实现简单 缺点:由于不同的微控制器,每条 ...

  6. 嵌入式系统-知识点总结-1

    与人们日常使用的个人计算机相比,嵌入式系统具有许多不同的特点:①专用型,嵌入式系统与具体应用紧密结合,具有很强的专用型:②隐蔽性,嵌入式系统通常总是非计算机设备(系统)中的一个部分,它们隐藏在其内部, ...

  7. [ARM嵌入式系统开发]第一章之Dhrystone

    在书的第一章开头部分,作者提到了"最成功的ARM内核之一ARM7TDMI,具有最高120 Dhrystone MIPS的性能.高的代码密度和低功耗等特性,使它成为移动嵌入式设备的最佳选择&q ...

  8. [个人记录]春招C/C++后台/运维面试被问到的那些知识点(第一周)

    公司: 华为中央硬件研究院,嵌入式软件开发(杭州).因为疫情,是通过zoom面试的.我的面试一般是按照项目+语言/DS基础+算法题来的.华为面试结果出的相当快.不管一面还是二面,总体而言都非常简单. ...

  9. 2014025689《嵌入式程序设计》第一周学习总结

    这一周主要学习了vim的使用和Linux的一些基本的操作,并在电脑上操作 一.vim的基本指令 vi的使用 创建目录的命令:mrkdir+目录 将一个目录下的文件拷贝到另一个目录下:cp /原目录 / ...

最新文章

  1. 婚纱摄影小程序能带来订单吗?小程序如何做营销?
  2. webpack如何将css文件分离的,【Webpack小书】Webpack中如何将CSS样式抽取到独立文件中? - Tim的资源站...
  3. bzoj千题计划197:bzoj4247: 挂饰
  4. [New Portal]Windows Azure Virtual Machine (18) Azure Virtual Machine内部IP和外部IP
  5. 方法文件Matlab调用动态链接库
  6. 计算机三角函数习惯原创的音乐,三角函数 UNIT版
  7. 如何为Redis中list中的项设置过期时间
  8. Caffe学习:pycaffe利用caffemodel进行分类=批处理
  9. Mybatis使用技巧
  10. 如何下载百度文库文章
  11. CSDN学习会员组团
  12. MyEclipse 注册码
  13. Excel数据去重(删除重复项)
  14. 计算器计算反三角函数或三角函数的时候结果不对
  15. leetcode 1219. 黄金矿工
  16. 扒开现象看本质:大数据应用初成气候
  17. Oracle数据库之表空间(tablespace)---面试再也不害怕系列之一
  18. HTTP报错序号以及对应错误原因最全总结(1XX、2XX、3XX、4XX、5XX)
  19. xargs 重定向输出 示列分析
  20. 8.6 循环辅助:continue和break

热门文章

  1. 四字计算机名称是什么原因,人工智能,人类造出来的这四个字到底是什么意思?...
  2. [项目管理-20]:流水线pipeline与项目管理
  3. PX4的CMake解析
  4. asp如何将图片文件上传到mysql数据库中_ASP图片上传[图片直接存储在数据库里面]...
  5. 一本科肄业生的彷徨与迷茫
  6. 国家法定假日webservice自己写的工具类,需要数据库及tomcat7,jdk1.6环境
  7. Python 函数的参数传递*args和**kwargs
  8. PlSql安装步骤(无需安装oracle)
  9. php和PHPnow冲突了,安装使用PHPnow后程序无法使用有关问题
  10. ES6数组方法find()、findIndex()的总结