《嵌入式C编程实战》——1.2 应用程序和平台

1.2 应用程序和平台

图1.4所示的应用程序和平台是一个嵌入式计算机系统的两个组成部分。平台被设计用来帮助应用程序完成真正的任务。一个平台可以是硬件和操作系统的组合,而应用程序则是一个软件。例如,用来控制工业机器人的软件。通常,一些很小的系统中是不需要操作系统的。事实上,支持应用程序的平台和项目的管理之间存在着联系,一些项目中已经证实了这种联系的重要性。这意味着如果有一个可以简化应用程序实现的平台,那么就无需再为项目管理付出高昂的代价了。

性能:如果一个系统不能满足它的性能需求,就是一个毫无用处的系统。性能参数通常指的是功能、速度、成本、按时完成工作的能力(实时性能)和/或电力消耗。

功耗:功耗是一个十分重要的指标,这主要出于以下几个原因:

  • 如果功耗增加了,那么相应系统消耗的能量也就增加了。
  • 如果功耗很大,就不得不为系统添加昂贵的冷却系统。
  • 对便携式系统,如手机或其他的手持设备,功耗的增加意味着电池的使用时间减少。

安全:很多的嵌入式系统,如医疗方面或者汽车方面的应用程序,都对安全性方面有很高的要求。对于这种类型的应用,需要在设计的过程中就进行广泛的和可靠的验证和测试,以保证系统能够按照预期正常运行。有些关键的安全系统,如汽车的安全气囊系统或者支持生命的呼吸系统,则需要设计为冗余系统,这样在当前系统发生故障时,备份的辅助系统就会接管任务(并激活警报)。

灵活性:在一些情况下,系统的实现需要灵活性,即可以对系统进行修改,以适应标准或者功能需求的变化。

时间: 2024-09-28 20:56:59

《嵌入式C编程实战》——1.2 应用程序和平台的相关文章

《嵌入式C编程实战》——第1章 嵌入式系统简介 1.1 嵌入式计算机系统

第1章 嵌入式系统简介 嵌入式C编程实战 1.1 嵌入式计算机系统 图1.1为两台不同的计算机. 大部分人看到图1.1后,立刻就可以认出左边的机器是一台计算机.不过,几乎没有人会把右侧的机器看作是计算机,事实上,它确实是一台货真价实的计算机.这两台看起来截然不同的计算机最根本的区别在于,右侧的计算机是嵌入在洗衣机内部的. 如果你认识到这两者的差异,就可以将计算机分成通用计算机和嵌入式计算机两类. 1.通用计算机通用计算机指的是台式机.笔记本电脑以及工作站等.通用计算机(几乎)总是配有键盘.显示设

《嵌入式C编程实战》——导读

前 言 本书是为致力于使用微控制器来设计嵌入式系统的人们准备的.本书将翔实的理论与真实的实践相结合.现在由微控制器管理的嵌入式系统无处不在,汽车.机器人.办公室.医疗设备.机械.家居,以及其他各种各样的需求中都可以看到它们的身影.一个典型的微控制器包括了处理器.存储器和外部设备.一个嵌入式系统C开发者需要对微控制器的体系结构和软件开发中的底层操作有一个深入的了解. 本书的主要内容是介绍嵌入式软件的设计,通过真实的案例,使读者"学会如何去做".读者通过书中提供的实验,可以快速地做到理论与

《嵌入式C编程实战》——第1章 嵌入式系统简介 1.1 嵌入式计算机系统

第1章 嵌入式系统简介 1.1 嵌入式计算机系统 图1.1为两台不同的计算机. 大部分人看到图1.1后,立刻就可以认出左边的机器是一台计算机.不过,几乎没有人会把右侧的机器看作是计算机,事实上,它确实是一台货真价实的计算机.这两台看起来截然不同的计算机最根本的区别在于,右侧的计算机是嵌入在洗衣机内部的. 如果你认识到这两者的差异,就可以将计算机分成通用计算机和嵌入式计算机两类. 1.通用计算机 通用计算机指的是台式机.笔记本电脑以及工作站等.通用计算机(几乎)总是配有键盘.显示设备.硬盘驱动器,

《嵌入式C编程实战》——1.3 复杂度降低

1.3 复杂度降低 正如我们所见,问题的复杂度正在不断地增加,我们必须对此做出应对.可是,关键是怎样才能降低复杂度呢?本节将会就这个问题给出一些基本的答案. 下面给出了一些"与降低复杂度相关的词汇". 抽象.结构(或体系).层次结构. 1.3.1 抽象 本书在以下部分定义了最小的组件,有时这些组件也被称为叶组件.这些组件包括逻辑门.触发器.存储单元(逻辑组件).其实,还可以将这些组件再分成更小的部分,如晶体管.电阻.电感和电容等最小的不可分割的组成.这些逻辑组件是总线.CPU的组成部分

《嵌入式C编程实战》——1.5 软件开发工具

1.5 软件开发工具 现在有很多的软件开发语言,如C.C++.ADA.LISP等.软件的开发都遵循标准化的过程.程序(源代码)可以被编译成目标对象可以执行的代码,一些编译器会将代码转换为汇编程序.而链接器将程序与用到的库文件和其他一些东西组织在一起,而且所有的基地址都是绝对地址.链接器最后产生的可以被下载到目标系统并执行的机器代码,如图1.11所示. 1.5.1 编译器 编译器是一种计算机软件,它的作用是将源程序转换为目标程序.通常,通过两个步骤,就可以将一个C语言编写的程序转换为目标程序.第一

《嵌入式C编程实战》——1.4 硬件−FPGA设备

1.4 硬件−FPGA设备 本书中使用的所有案例都是基于灵活性极大的FPGA设备上完成的.如果一个设计师使用单片机工作时,他仅仅能完成对硬件架构的测试.但是,如果选用了FPGA,他将能通过设置I/O来实现对所有的从简单到复杂的多处理器体系结构的实验设计.因此,FPGA是最适合进行应用设计教育和学习的平台. 从逻辑上讲,这些FPGA设备可以按照设计师所设想的任何方式进行连接.图1.7显示了FPGA设备的灵活性.左边是一个简单的设计,右边是一个使用了两个32位CPU的复杂设计. 可以通过http:/

《嵌入式C编程实战》——1.6 YouTube的推荐资源

1.6 YouTube的推荐资源 互联网是一个无穷无尽的信息来源.本书中大多数章节的结尾部分都会推荐一些Youtube上的视频,这些视频与本章的主题有关.下面给出了几个推荐的视频. 编译器的工作原理:https://www.youtube.com/watch?v=Kd93n4_5UjM. API是什么?:https://www.youtube.com/watch?v=iGkTCObcOqM. SDK是什么?:https://www.youtube.com/watch?v=py5H8gKvw44.

程序员最常用的5大编程实战网站

乔布斯说过,每个人都应该学习给电脑编写程序的技术,因为这一过程能够教你如何去思考. 而学习编程的方式有多种多样,你可以通过看书.视频教学的方式学习编程. 不过,无论如何,一个程序员在他的编程生涯,难免会遇到技术瓶颈. 如何去突破技术瓶颈呢?你可以通过各种编程实战网站,磨炼自己的技术. 下面w3cschool给程序员小伙伴们分享5大流行的编程实战网站: 1.LeetCode leetcode上题目分easy,medium,hard三个难度. LeetCode为用户提供了各种主流编程语言,比如C++

《嵌入式C编程:PIC单片机和C编程技术与应用》一第1章C语言概述和程序结构1.1 C源代码

本节书摘来自华章出版社<嵌入式C编程:PIC单片机和C编程技术与应用>一书中的第1章,第1.1节,作者 [美]马克·西格斯蒙德(Mark Siegesmund),更多章节内容可以访问"华章计算机"公众号查看 第1章 Embedded C Programming: Techniques and Applications of C and PIC MCUS C语言概述和程序结构 1.1 C源代码 下面是一段C语言源代码: 这段代码初看起来可能会觉得难以理解,但读完本书并完成书中