基于嵌入式实时操作系统的程序设计技术

出版时间:2011-1  出版社:北京航空航天大学  作者:周航慈  页数:265  
Tag标签:无  

前言

20世纪90年代,单片机在我国迅速普及,很难找到一种没有使用单片机的电子新产品。笔者在那时出版了《单片机应用程序设计技术》和《单片机程序设计基础》两部著作,也算为推动我国单片机应用尽了一份力。由于那时的单片机以8位机为主,本身的硬件资源有限,所处理的问题也不是很复杂,故程序设计方法绝大多数还是“基于裸机编程”的,即不使用操作系统。进入21世纪后,一大批所谓“信息电子产品”开始普及,其特点是处理对象包含多媒体信息流,CPU的信息吞吐量极大提高,系统功能复杂,人机界面丰富,有网络接口等。这类产品的硬件系统集成度非常高,大多采用32位CPU,存储器资源充足,具备了操作系统所需要的运行条件。这类产品的软件系统规模非常大,如果不使用操作系统来管理,就几乎不可能开发成功。电子工程师熟练掌握“基于嵌入式实时操作系统的程序设计技术”已经是开发这类信息电子产品的必备条件。搞电子产品设计的技术人员几乎都是“电子类”专业出身的,其硬件功底不容置疑,但所学软件课程有限,大多只学过“C程序设计”、“单片机原理与应用”、“汇编语言程序设计”这几门课,基本没有学过“数据结构”、“算法分析”、“操作系统”等软件课程,大多数工程技术人员还是靠一边工作一边自学来提高自己。各种软件书籍和教材大多采用“一本正经”的论述风格,对于软件功底不深的自学者来说,就像是难啃的天书。笔者是电子类专业“科班出身”的大学教师,长期从事电子专业教学,并以程序设计类课程为主;为了教学需要,也自学了若干相关的软件课程,深深体会到其中的艰辛。近年来,笔者开始为电子类专业研究生上“嵌入式实时操作系统”的课程,对如何给电子类专业的学生讲授这门课有了一些体会,萌生了用电子类专业人员看得懂的叙述风格写一本书的想法,并在2006年利用暑假的教学空闲时间撰写了《基于嵌入式实时操作系统的程序设计技术》的第1版,完成了这个心愿。第1版出版至今已有4年,期间笔者收到不少读者的反馈意见,认为其起点还是高了一些,必须先学习好“实时操作系统”,才能看懂。另一方面,在这4年中,电子信息产业发展迅速,ARM芯片更新换代很快,软硬件开发平台也不断更新。为此,笔者决定撰写第2版。与第1版相比,第2版中硬件环境从ARM7内核转到ARM Cortex-M3内核,内容上增加了实时操作系统的入门基础知识,并将这些基础知识分散安排到相关章节之中,从而大大降低了学习的起点,使读者不必预先花费较长时间学习实时操作系统课程,就可以开始学习使用实时操作系统,以达到提高学习效率、缩短学习周期的目的。

内容概要

本书介绍了在“嵌入式实时操作系统”环境下的程序设计技术,共分15章。内容有绪论、建立开发环境、有关任务的基本知识、任务设计、中断服务程序设计、行为同步、资源同步、数据通信、时间管理、采样任务设计、串行通信任务设计、键盘任务设计、显示任务设计、嵌入式操作系统的裁剪和设计示例。书中介绍的内容以源码开放的嵌入式实时操作系统“UC/OS-II为软件运行环境,以SmartCortex M3-1700通用教学/竞赛/工控开发平台为硬件环境。其内容深入浅出。为便于读者加深理解,书中还带有很多程序设计实例和实验。    本书可作为大学电子类本科生和研究生的学习参考书,也可以作为从事嵌入式应用系统研制开发的电子技术人员的参考书。

书籍目录

第1章 绪论  1.1 嵌入式系统的编程环境  1.2 学习使用实时操作系统之前必须具备的能力  1.3 实时操作系统的快速人门方法第2章 建立开发环境  2.1 CPU芯片与硬件平台的选择  2.2 嵌入式实时操作系统的选择  2.3 嵌入式实时操作系统的移植  2.4 开发调试环境的建立  2.5 工程模板分析  2.6 工程模板的使用第3章 有关任务的基本知识  3.1 仿多CPU环境的实现  3.2 任务的特性  3.3 任务的划分  3.4 任务的可调度性分析  3.5 与任务管理有关的常用函数第4章 任务设计  4.1 任务函数的结构  4.2 任务优先级安排  4.3 任务的数据结构设计  4.4 任务函数设计中的问题  4.5 任务函数的代码设计过程第5章 中断服务程序设计  5.1 中断优先级  5.2 在工程模板中加人中断服务程序  5.3 中断服务程序设计第6章 行为同步  6.1 用于行为同步的通信手段  6.2 行为同步第7章 资源同步  7.1 关中断  7.2 关调度  7.3 使用互斥信号量  7.4 使用计数信号量第8章 数据通信  8.1 全局变量  8.2 内存数据块  8.3 消息邮箱  8.4 消息队列第9章 时间管理  9.1 控制任务的执行周期  9.2 控制任务的运行节奏  9.3 状态查询  9.4 终止周期性任务第10章 采样任务设计第11章 串行通信任务设计第12章 键盘任务设计第13章 显示任务设计第14章 嵌入式操作系统的裁剪第15章 设计示例后记参考文献

章节摘录

插图:人们通常根据需要达到的目标来合理选择工作方式和需要使用的工具。例如去不远的超市购物,我们会走着去,然后将买好的东西拎回来。如果开着汽车去附近的超市,虽然只要一两分钟就可以到达,但找停车位和付停车费可能会更麻烦。如果是要到外地出差,我们会坐汽车或者火车去,甚至坐飞机去,没有人会徒步去外地出差。这里就有两种本质不同的环境:徒步行走(脚沾地)的出行环境和使用交通工具(脚不沾地)的出行环境。同样的道理,在电子产品的软件设计过程中,也需要根据软件的规模和复杂程度来合理选择编程环境:直接与所有硬件打交道的“基于裸机的编程环境”和基本上与硬件隔离的“基于嵌入式实时操作系统的编程环境”。本节将介绍这两种基本的编程环境。现在用一个直观的例子来说明这两种编程环境下产生的软件有什么本质不同。假设有三种工作(做饭、打扫卫生和洗衣服)需要在规定的时间之内同时完成,一般我们会选择以下两种方式之一:①请一个厨师来完成做饭的任务,请一个清洁工来完成打扫卫生的任务,再请一个洗衣工来完成洗衣服的任务。三个人各做各的工作,在规定的时间之内完成各自的任务将是非常轻松的事情,但三个人的工资总和肯定不低。

后记

由于本书的硬件平台与第1版不同,因此导致所有程序都需要进行重新设计和调试,但程序设计的基本思路是一致的。为了使读者更容易入门,本书又适当增加了一些实时操作系统基本原理的内容。学习完本书后,读者应该基本上熟悉了基于实时操作系统的程序设计风格,悟性高的读者应该基本掌握了实时操作系统提供的主要系统服务函数的用法,并且能够独立进行初步程序设计。学习完本书并不意味着学习实时操作系统过程的结束,实际上这仅仅是开始,因为有很多事情并没有在本书中真正交代清楚。实时操作系统用什么来表示任务的状态?任务状态的改变是如何实现的?实时操作系统如何知道当前有哪些任务处于就绪状态?很多与任务有关的问题都与“任务控制块”和“任务就绪表”有关,如果能够把“任务控制块”和“任务就绪表”的细节搞清楚,这些问题也就自然明白了。同样的道理,实时操作系统提供的各种通信手段都与“事件控制块”有关,如果能够把“事件控制块’’的细节搞清楚,对这些通信手段的理解就会更加深刻。实时操作系统的核心功能是“任务调度”,如果能够搞清楚“任务调度”的实现过程,则对实时操作系统的理解就上了一个台阶。

编辑推荐

《基于嵌入式实时操作系统的程序设计技术(第2版)》:嵌入式系统软件设计基础丛书

图书封面

图书标签Tags

评论、评分、阅读与下载


    基于嵌入式实时操作系统的程序设计技术 PDF格式下载


用户评论 (总计110条)

 
 

  •   适合使用uc/os进行系统设计,特别是如何划分任务、如何设计任务优先级、任务之间通信的设计等都比较有用
  •   这本书标称是嵌入式操作系统的最佳入门教材,连同另外两本组成了一套入门丛书,另外两本之前已经买了,把这本也买了,一套就收集齐了,把这本书也读完、吃透,算是对嵌入式系统的软件设计有了初步的认识和入门了。
  •   本人在网上下了贝贝版的,看了不过瘾,买了这本看着挺不错,实用易懂,看了这个用μc os可以开发一般的嵌入式应用程序了
  •   如果你购买了邵贝贝和任哲的书,看了一两周,仍感觉面对项目无从下手,无法设计任务,无法构建基于RTOS的系统,那么看完周航慈的这本书就会感觉豁然开朗很多。
    邵贝贝和任哲的书告诉你:uCOS-II有哪些模块,各模块有哪些函数;而周航慈的书告诉你如何使用这些模块,如何调用这些模块。前者好比是英语语法手册,后者则是英语写作指南。光看语法手册,是不可能写出好文章的,要多看看写作范例,周航慈的这本书就是不折不扣的指南!
  •   周航慈的书是经验的总结,不是东拼西凑抄写的。值得有过用过嵌入式操作系统的人好好看看。
  •   学习嵌入式操作系统的好书!
  •   我们进行实时系统设计时,一定要掌握它对中断的处理。
  •   书的质量不错。从简单的任务创建,到一些典型任务的使用,配合代码进行说明分析,相信消化完,对操作系统的认识和应用会有很大的提升。
  •   内容深入浅出,结合简单的实例详细介绍程序设计流程,适合初学者。
  •   周老师的嵌入式开发圣经
  •   从C51的前后台系统到实时操作系统,设计方式和思路都发生较大变化,本书可在此方面提高很大帮助,避免走弯路。
  •   嵌入式基础书之一,可以结合周立功的教程一起看,入门必备
  •   对于刚刚接触嵌入式的朋友来说,这确实是一本不错的入门教材。
  •   难得的一本好书,对于如何应用RTOS,写得很用心

    现在市面上大部分RTOS的书,都是在讲RTOS的原理,分析RTOS的代码。

    但讲如何应用RTOS,如何规划项目、划分任务的书,很少。这本恰恰是这方面不可多得的一本好书。

    周航慈老师出品,精品!
  •   很不错的书,以前UC/OS的一些应用疑问都得到了解答。我是在网上下得第1版,写得很流畅,一口气读完了。
  •   比较适合初学操作系统的同学
  •   是一本关于ucosii设计很好的一本书!很多注意的地方都讲到了
  •   这本书对学校UC-OS非常有用。
  •   程序写得非常详细,随便翻了下就爱不释手的……感觉非常棒,经典啊
  •   确实是本好书,内容里有许多作者自己的经验,非常适合刚从事开发的人员使用
  •   虽然没有对系统原理做介绍,但是教人怎么用,这样很好。结合原理,就很快就能掌握
  •   正在看,挺好的,结合其他的书籍了解uC很快。
  •   书中讲解由浅入深,易于理解。多为作者经验之谈,对实际工作有借鉴作用。
  •   书的内容通俗易懂,很喜欢。
  •   书是正版,希望对学习有用!!!!!
  •   书不错,我大致看了一下,基本上可以解决我现在的一些困惑,是一本好书,顿时对学好uCOS的信心倍增啊
  •   书很好,刚开始看!
  •   书很不错,我喜欢的!
  •   很实用的书推荐
  •   是一本很好的书,书虽不厚,但理讲得很明
  •   书的质量还可以啊,不会像有些人说的不好。平装的书,有点粉尘是正常的啦。
  •   一本我期待很久的书,多谢了
  •   不好意思,上次因为有事,书寄到的时候没在,给退了,我会重新购买的。
  •   通俗易懂,举例很深刻,帮助理解,有帮助
  •   看起来很好理解
  •   新书 第二版的内容比第一版的更丰富!
  •   内容不错,是对实际的一个很好的补充
  •   发错,此五分为可怜分
  •   收到书后我一口气就读了前八章,真是一本通俗易懂的好书啊!
  •   这本书能让人比较容易看懂,适合初学者










  •   这本书真的不错,适合初学者。在出书泛滥的年代,能够找到这样的一本书,真的很难很难。
  •   正在拜读中,,,
  •   好书,在读中。。。
  •   比较经典,读了之后收益颇多。
  •   比亚马逊偏贵
  •   质量不错,放在手边备查
  •   确实很好 哈哈
  •   是我要的那种效果
  •   不过在Cortex M3上,选择了流明,而非STM32是失误啊。
  •   适合初学者由浅入深的一本好书!
  •   结合任哲老师的那本一起看,效果更好
  •   什么都不是。不好。
  •   送货挺快的,隔天就到了。
  •   真心觉得不错,很适合这个年龄段的孩子。
  •   这是给老公买的专业书籍,当当真是什么都有,真不错!
  •   以ARM Cortex M3为硬件平台,讲述基于uCOS-II嵌入式实时操作系统的程序设计方法,涵盖实时操作系统的任务设计、资源管理、中断服务、时间管理、数据通信等内容,还有不少例程,深入浅出。真是一本好书,强烈推荐一下。
  •   不系统!有一定的实用性!
  •   现在在看,学硬件的了解软件是如何工作。。。
  •   刚开始学习ucos,论坛上介绍这本书很实用,可见其影响力了,特地买了一本。刚下订单,看后再具体评论
  •   书还没看,具体的内容还不知道
    只能评论一下外观了
  •   大体上看了一下这个书。内容还不错。
  •   书的内容很好 ,可以看看
  •   邮递速度快,书的内容还可以。
  •   书还没看,但是也还是蛮不错的
  •   刚看前两章,感觉很有受益,不错
    深入评价有待观察
  •   在别人的推荐下买的。
  •   配合邵贝贝那本书,很好
  •   当然,有几本书对比着看,然后再在电脑上实践,就学习的比较快了
  •   在图书馆看到这本书,翻了翻,感觉不错,有收获,遂购的一本,可以在上做笔记
  •   买了没怎么看,感觉就是各种资料翻译一通
  •   不错,刚到手,。 慢慢研究
  •   缺点:有些地方不够深入优点:实用性很强,
  •   作为一本通用性书籍讲得挺到位!
  •   还没看,不过书本质量不错
  •   还没有好好的研究,但是看评价还是不错的。
  •   对初学还是可以的
  •   好好学,很不错
  •   理论部分讲的较多
  •   适合入门讲的很详细,但是纸张不好
  •   经验总结。
  •   不错吧。。。。给个好评。。。。
  •   相对而言,没有《嵌入式实时操作系统μC/OS-II原理及应用(第2版)》好。
  •   书中有很多**东西,用的不是STM32,编译器也不是KEIL,打了很多广告,但也有一些关于任务划分、设计的经验之谈!
  •   一般,对于多任务项目有一定的帮助,但我更需要任务切换的底层
  •   买回来,我马上签上了名字。看到第10页,马上晕下,去了19页了。气死我啦。早知我就不在上面写字,要求退货呢。那个平台是基于cotex-M3的LPC1766。我还要去找里面相关的配套软件呢,为什么不配光盘呢。
  •   我更喜欢任哲那本,而且本书也推荐读者阅读任哲那本书
  •   可能是我基础不好吧,看起来觉得没多大用,似乎没任哲老师的那本书讲的好。
  •   这本书很快就看完了,没什么难度,讲的比较简单也比较基本。
    虽然篇幅已经很小,但仍然是比较罗嗦的,很多地方都是凑字数的。所有内容写成一篇文章比较合适。
    另外,本书处处不忘插入广告,不放弃任何机会,即使与内容有那么一点联系或根本没有联系,都要大肆宣传一下,这样做不好。
    总之,深度不足,浅显易懂,适合初学者入门。
  •   强烈建议当当网以卖家身份通知平邮客户,而且这本书都有半本都折了,你们也真够粗心
  •   全篇,每章都有广告,不是给北航做广告,就是给周立功做广告,要么就是给自己的其他书做广告。
  •   太**了,外包装撕坏了也就算了,里面的书竟然撕了很多页,差不多一半。以后还是少来当当买东西了,太失望儿了。
  •   对于已经初步学完uCOS-II的人来说,是指导如何具体使用uCOS-II的绝好教程!!请注意这并不是一本uCOS-II的入门书。
  •   一直以来觉得嵌入式很难,曾几次试图学习,可每次都被那些厚厚却看不懂的书籍给击败,只好放弃。直到在网上看到这本书的评论,决定再试试。拿到书后,翻了翻内容,很适合我的学习习惯,一鼓作气,几天就把该书翻看了一遍。书里对很多嵌入式系统、嵌入式操作系统概念都做了很形象生动的比喻,并且有很多实例!很适合我这种初学者,赞一个!
  •   挺好的书,虽然内容不多,但都是实实在在的经验之谈,不是让人厌恶的“抄袭品”。
  •   可以学着玩,挺有意思的。
  •   经典图书,非常不错。
  •   内容详实,阐述清楚。
  •   拿到书后,发现书的一边有用刀子划的损伤,殃及10几页。太不爽了。
  •   只能说一般,对深入学习有点用
  •   这本书还不错的样子。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7