序(中科院院士张钹)
序(中国软件行业协会副理事长何小庆
译者序(飞思卡尔杨欣欣)
嵌入式系统软件工程——路线图
第1章嵌入式软件工程与实时系统
1.1软件工程
1.2嵌入式系统
1.3实时系统
...
1.4实时系统设计的挑战
...
1.5分布式和多处理器架构
1.6嵌入式系统软件
1.7嵌入式系统的硬件抽象层
1.8小结
第2章嵌入式系统软/硬件协同开发
2.1当今嵌入式系统示例
2.2HW/SW原型机用户
2.3HW/SW原型机设计选项
2.4原型设计决策标准
2.5选择正确的原型
2.6工业设计链
2.7更改设计流程的必要
2.8不同类型的虚拟原型机
2.9虚拟原型的简要历史
2.10专有产品的限制
2.11什么使得虚拟原型机变快
2.12标准化:SystemC TLM��2.0的时代
2.13SystemC TLM��2抽象层
2.14系统架构虚拟原型机
2.15软件虚拟原型机
2.16小结——虚拟化的重要性日益增加
第3章嵌入式系统的软件建模
3.1何时、为何要为嵌入式系统建立模型
3.2建模
3.3什么是建模语言
3.4建模语言举例
3.5V图承诺
3.6为什么要建立嵌入式系统的模型
3.7何时为嵌入式系统建立模型
3.7.1任务和安全关键型应用程序
3.7.2高度复杂的应用程序和系统
3.8操作复杂性
3.9缺陷检测时间与成本
3.10大型开发团队需要建模
3.11建模通常是唯一的选择
3.12建模是有利的,但不是说所有模型都是错的吗
3.13有了原型机——又该如何
3.14结论
3.15下一步——试用
...
第4章嵌入式系统的软件设计架构与模式
4.1架构和设计综述
4.2三个层次的设计
4.3什么是设计模式
4.3.1必须要采用面向对象技术来使用设计模式吗
4.3.2一个架构实例
4.3.3使用模式
4.3.4做权衡决策
4.4软件架构的类别和视图
...
参考文献
第5章实时构件: 事件与触发器
5.1事件和触发器
5.2室温控制单元
5.3事件系统
5.4事件句柄
5.5事件方法
5.6事件数据结构
5.7可重入性
...
5.8事件处理
5.9集成
5.10触发器
5.11闪烁的LED
5.12设计思想
5.13嘀嗒定时器
5.14触发器接口
5.15触发器描述符
5.16数据分配
5.17设置触发器
5.18嘀嗒计数
5.19确保可重入
5.20初始化
5.21闪烁
5.22蜂鸣器鸣响
5.23实时性
5.24小结
第6章嵌入式软件的硬件接口
6.1简介
6.2与硬件团队的合作
...
6.3硬件设计方面有用的知识
...
6.4支持多个硬件版本
...
6.5硬件交互困难
6.5.1原子寄存器访问
6.5.2同一寄存器中混合的位类型
6.5.3边沿与电平中断
6.6测试与故障排除
6.6.1临时钩子
6.6.2永久钩子
6.7小结
第7章嵌入式软件编程和实现准则
7.1简介
...
7.2启动嵌入式软件项目
...
7.3变量结构
7.3.1变量声明
7.3.2数据类型
7.3.3定义
第8章嵌入式操作系统
8.1前台/后台系统
8.2实时内核
...
8.3优先级
8.4就绪队列
8.5调度点
8.6上下文切换
8.7中断管理
...
8.8时钟周期(或系统时钟周期)
8.9等待队列
8.10时间管理
8.11资源管理
...
8.12同步
8.12.1同步: 信号量
8.12.2同步: 信用跟踪
8.12.3双方相约
8.13消息传递
...
8.14内存管理
8.15小结
第9章嵌入式系统设计的软件复用
9.1为什么软件复用如此重要
9.2什么限制了软件复用
9.3各种软件复用
9.4通过层实现复用
9.5进入到下一个级别
9.6引入元件厂
9.7工厂硬件配置
9.8工厂软件配置
9.9工厂对可复用性的作用
9.10RTOS不可知论
9.11任意扩展性
9.12结论
参考文献
第10章嵌入式系统的软件性能工程
10.1示例: eNodeB应用程序的延迟时间与吞吐量对比
10.2性能模式和反模式
参考文献
第11章嵌入式软件的性能优化
11.1代码优化过程
11.2使用开发工具
...
11.3背景——理解嵌入式架构
11.4基本的C优化技术
...
11.5一般循环转换
...
11.6优化技术的实例应用: 互相关
11.6.1设置
11.6.2原始实例
第12章嵌入式软件的内存优化
12.1简介
12.2代码大小的优化
...
12.3内存布局优化
...
12.4数据结构、数据结构的数组及其添加
12.5内存性能的循环优化
...
第13章嵌入式软件的功耗优化
13.1简介
13.2理解功耗
...
13.3测量功耗
...
13.4最小化功耗
13.4.1硬件支持
13.4.2时钟控制和电压控制
13.4.3低功耗示例
13.5优化数据流
...
13.6SRAM和高速缓存数据流的功率优化
...
13.7外设/通信使用
...
13.8算法
...
13.9小结
第14章嵌入式系统中的用户界面设计
14.1用户界面设计分析阶段
...
14.2虚拟窗口
14.3使用实体关系图的数据模型
14.4使用CREDO试验矩阵来分析虚拟窗口
14.5启发式评估
14.6格式塔
14.7应用模型—视图—控制器体系结构设计用户界面
...
14.8对安全性要求苛刻的用户界面
14.8.1更加安全的HMI设计过程
14.8.2人机界面设计安全手册
参考文献
第15章嵌入式软件质量、集成和测试技术
15.1什么是软件测试
...
15.2可用的技术
...
15.3设置标准
...
15.4处理异常
...
15.5实施测试解决方案的环境
15.5.1实用主义的考虑
15.5.2考虑备选方案
15.6小结
第16章嵌入式系统的软件开发工具
16.1调试工具简介
16.2GDB调试
...
16.3调试代理设计
16.3.1使用案例
16.3.2调试代理简介
16.3.3启动应用程序
16.3.4上下文切换
16.3.5位置独立的可执行文件
16.3.6来自应用程序的调试事件
16.3.7多核
16.3.8启动调试代理
16.4使用JTAG调试
16.4.1使用JTAG的好处
16.4.2使用JTAG启动主板
16.4.3与调试代理的比较
16.4.4GDB和JTAG
16.5使用Eclipse和GDB的调试工具
...
16.6检测代码
16.7分析工具
16.7.1strace
16.7.2mtrace
16.7.3Valgrind
16.8硬件功能
...
16.9调试提示和技巧
第17章嵌入式系统的多核软件开发
17.1分析和高层设计
17.1.1分析
17.1.2高层次设计
17.1.3小结
17.2实现和低层次设计
...
参考文献
第18章安全关键软件的开发
18.1引言
18.2有哪些安全需求
18.3项目规划策略
18.4故障、失效、危害和风险分析
...
18.5安全关键的架构
18.6软件实施策略
参考文献
第19章知识产权
19.1背景
19.2软件属于你吗
19.2.1获得软件
19.2.2版权保护
19.2.3获得版权
19.3专利
...
19.4问题
19.4.1开源软件
19.4.2授权和出售软件
19.4.3收购
19.4.4发现侵权
19.4.5避免版权侵权
19.4.6避免专利侵权
第20章管理嵌入式软件开发
20.1能力成熟度模型集成
20.2OSI模型
20.3软件开发
...
20.4组织
20.5项目纲领
20.6利益相关者和核心团队
20.7产品生命周期管理
20.8组合管理
20.9项目管理生命周期
20.10项目生命周期
20.11解决问题
20.12沟通
20.13缩写,符号,首字母缩略词
20.14版权确认
参考文献
第21章嵌入式系统的敏捷开发
21.1引言
21.2嵌入式系统有什么特殊之处
21.3嵌入式系统的敏捷项目规划
...
21.4嵌入式软件项目管理
...
21.5嵌入式敏捷开发实践
21.6敏捷规模因素
21.7敏捷方法能帮助你遵守标准吗
21.8小结
参考文献
第22章嵌入式软件在汽车领域中的应用
22.1发展历史
...
22.2汽车的各部分及其区别
...
22.3汽车质量
22.3.1基于墨菲定律制定计划
22.3.2容错通信
22.3.3容错软件
22.3.4零缺陷软件
22.3.5风险管理和故障模式
22.3.6失效模式和影响分析
22.4开发和测试
...
22.5汽车诊断
22.5.1故障指示灯
22.5.2数据记录器
22.5.3第二代车载诊断
22.6汽车标准
22.6.1汽车工业软件可靠性协会
22.6.2汽车开放系统体系结构
22.6.3汽车电子委员会
22.7汽车安全
22.7.1ISO 26262标准
22.7.2汽车安全完整性等级
22.8汽车防盗
...
22.9汽车市场不久的未来
22.9.1性能
22.9.2多核的出现
22.9.3车载终端
22.9.4自动汽车
22.10小结
第23章I/O及存储设备编程
23.1I/O设备与I/O控制器
...
23.2I/O编程
23.2.1I/O控制模式
23.2.2I/O软件目标
23.2.3I/O软件层
23.2.4案例研究: Linux设备驱动程序
23.3存储编程
...
23.4存储系统性能改善
23.4.1案例研究1: SDHC上的性能优化
23.4.2案例研究2: NAS上的性能优化
23.5小结
参考文献
第24章网络应用的嵌入式软件
24.1引言
24.2网络设备的系统结构
24.3网络多核SoC
24.3.1核心
24.3.2数据包引擎的硬件(PEH)块
24.4网络编程模型
24.5数据包处理软件的结构
...
24.6网络应用编程技术
...
24.7网络应用程序员常用的性能技术
24.8嵌入式网络设备的Linux操作系统
24.9小结
第25章嵌入式Linux操作系统
25.1简介
25.1.1选择Linux进行嵌入式系统开发的原因
25.1.2Linux发行版
25.1.3适用于Linux的嵌入式平台
25.1.4许可
25.2嵌入式Linux入门
...
25.3在参考板上运行Linux
25.3.1参考平台
25.3.2从BeagleBone入手
附录AC语言编码标准: 源代码的发展
...
案例研究1软件性能工程
...
案例研究2用户界面设计: 警务指挥与控制系统
...
案例研究3转化为多核
...
案例研究4嵌入式系统质量和衡量计划的软件工程
...
评价二: 坦白说,我本来对“软件工程”这个词有点抵触,觉得它听起来枯燥乏味,离我实际动手写代码的日子有点远。但这本书彻底颠覆了我的看法。它不是那种教你如何写“hello world”的教程,也不是那种只讲某个具体芯片或某个具体RTOS的“秘籍”。这本书的价值在于它的“工程”二字,它教你如何“构建”一个完整的、可维护的、高性能的嵌入式系统。它的“应用”部分,穿插在整个书中,而不是作为独立章节,这让我觉得非常自然,它展示了书中所讲的各种方法和技术是如何在实际的工业控制、消费电子、汽车电子等领域发挥作用的。我特别喜欢它在讲解设计模式时,会对比不同模式在嵌入式中的优劣,比如在内存受限的环境下,如何权衡设计模式的开销和带来的好处。书中关于“测试”的内容也让我眼前一亮,不仅仅是单元测试,还提到了集成测试、系统测试,甚至还有一些关于嵌入式系统特有的测试方法,比如功耗测试、稳定性测试等。这些都是我在自己摸索过程中很容易忽略,但对于保证产品质量至关重要的环节。总的来说,这本书提供了一个非常全面的视角,帮助我认识到嵌入式开发不仅仅是写几行代码,而是一项复杂的工程活动。
评分评价一: 《嵌入式系统软件工程:方法、实用技术及应用》这本书,嗯,怎么说呢?拿到手的时候,感觉沉甸甸的,封面设计也挺扎实,一看就是那种能让人静下心来啃的书。我刚接触嵌入式开发不久,之前都是零散地看一些零碎的资料,写一些小Demo,但总觉得理论基础不牢固,项目遇到点稍微复杂的问题就抓瞎。这本书的出现,就像在我混沌的嵌入式学习之路上点了一盏明灯。它从软件工程的宏观角度切入,系统地讲解了嵌入式系统软件开发的全流程,从需求分析、系统设计,到编码实现、测试验证,再到最后的维护升级,都讲得非常透彻。尤其让我印象深刻的是关于“方法”的部分,它介绍了多种在嵌入式领域常用的开发方法论,比如敏捷开发在嵌入式中的落地,还有瀑布模型在特定场景下的优势。这些方法论的讲解,不是那种干巴巴的概念罗列,而是结合了大量的实际案例,让我能真切地理解如何在项目中选择和应用合适的开发方法。书中的“实用技术”章节更是干货满满,讲解了实时操作系统(RTOS)的原理和在嵌入式开发中的应用,如何进行高效的内存管理,以及嵌入式通信协议的选型和实现。这些内容对于我这样的初学者来说,简直是宝藏,让我能够更自信地去构建更复杂、更可靠的嵌入式系统。
评分评价四: 这本书给我的感觉,更像是一本“武功秘籍”,不是那种告诉你招式有多炫酷,而是告诉你如何修炼内功,如何融会贯通。我之前在学习嵌入式开发的过程中,常常会遇到一些“疑难杂症”,比如性能瓶颈、内存泄漏、死锁等问题,但往往不知道从何下手去分析和解决。这本书的“方法”和“实用技术”章节,恰恰提供了一套系统性的诊断和解决问题的思路。它讲解了各种调试和性能分析工具的使用,以及如何通过代码重构和架构优化来提升系统的稳定性和效率。更让我惊喜的是,它在介绍一些高级概念时,并没有回避复杂性,而是通过生动的比喻和精炼的图示,将抽象的概念变得易于理解。例如,它在讲解RTOS调度算法时,不仅解释了理论,还提供了不同算法在实际场景下的性能对比,让我能直观地感受到不同选择带来的影响。此外,书中关于“应用”的案例分析,往往能联系到书中所讲解的方法和技术,形成一个闭环,让我觉得学到的知识不仅仅是孤立的理论,而是真正能够落地的实践。这本书的价值在于它提供了一种“思考方式”,一种解决复杂嵌入式软件问题的“工程思维”。
评分评价三: 刚翻开这本书,就被它的内容深度和广度所震撼。作为一名有几年嵌入式开发经验的老兵,我一直觉得自己的技术栈停留在“能用”的层面,但离“好用”和“优雅”还有很大差距。这本书正好填补了我在这方面的知识空白。它深入剖析了嵌入式软件设计的原则和最佳实践,例如如何进行模块化设计,如何处理并发和实时性要求,以及如何优化代码以满足资源受限的硬件平台。书中关于“实用技术”的阐述,尤其让我受益匪浅。比如,它详细讲解了如何选择和使用合适的中间件,以及如何进行跨平台移植。这些内容对于我们在项目中经常需要处理的复杂环境非常具有指导意义。另外,书中对于嵌入式系统安全性的讨论,也让我开始重新审视自己在开发过程中的一些疏忽。从攻击面分析到安全编码实践,再到安全审计,这些内容都非常及时和重要,尤其是在物联网和智能硬件日益普及的今天。虽然有些章节的理论性较强,需要反复阅读和思考,但每一点的深入理解都让我感觉自己的技术视野得到了极大的拓展。这本书不仅适合初学者建立正确的开发观,也同样适合有经验的开发者进行知识体系的梳理和深化。
评分评价五: 作为一名正在啃这本《嵌入式系统软件工程》的开发者,我只能说,这绝对是一本值得反复阅读的宝藏。它的内容并非轻松易懂,需要投入时间和精力去消化,但每一次深入的理解,都会带来豁然开朗的感觉。我尤其欣赏书中关于“方法”和“实用技术”的融合,它没有将理论和实践割裂开来,而是将它们有机地结合在一起。例如,在讲解软件架构设计时,它会介绍几种经典的嵌入式软件架构模式,并分析它们各自的优缺点,然后引申到如何在实际项目中根据具体需求进行选择和定制。书中对“应用”的讲解,也做得非常出色,它不是简单地罗列应用场景,而是通过剖析不同领域的嵌入式系统所面临的独特挑战,来阐述书中所讲授的方法和技术是如何应对这些挑战的。我特别喜欢它在讲解“代码质量”时,提到的不仅仅是编写整洁的代码,还包括如何进行代码评审、静态分析,以及如何建立有效的代码度量体系。这些细节之处,都体现了作者对嵌入式软件工程的深刻理解和严谨态度。对于我来说,这本书已经不仅仅是一本技术书籍,更像是一位经验丰富的导师,在指导我如何成为一名更优秀的嵌入式软件工程师。
评分内容还是有些帮助的, 建议买英文版!!!
评分很厚很全面的一本书,值得参考
评分如果是原价就不太值,大杂烩,可以一看
评分送货很快!!!!
评分图片质量挺好的,买了好几本
评分书的质量不错,不过就是每次买书都从沈阳调货有点慢,京东哈尔滨的仓还是种类太少了,其他方面都很满意
评分看了一部分,绝对算好书,不是随便抄些过来的那种
评分价格合理,质量还不错。
评分太好了!非常好!一定要好好的。值得推荐!
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有