标题: FreeRTOS实时内核实用指南(中文教程下载 149页pdf) [打印本页]

作者: chh25000    时间: 2018-4-19 10:02
标题: FreeRTOS实时内核实用指南(中文教程下载 149页pdf)
FreeRTOS中文实用教程

这篇文章的英文原版我是在FreeRTOS上下载得到的。其实我并没有决定是否要在系统中使用FreeRTOS,虽然我想要的也仅仅是一个实时内核,当然更重要的是免费。之所以翻译这篇文章倒不是因为FreeRTOS有多么优秀,完全是因为这篇文章还不算太长。而且FreeRTOS.net仿佛致力于这个内核在国内的推广,也做了不少中文化的工作。所以我是打算利用工作之余,边看边译,到读完这篇文档,也就有个中文版了。如果FreeRTOS不弃的话,我倒是情愿放到这个网站上与大家共享。

另外,我本人很懒,没有翻译附录,而且译完正文后也没有做过任何检查。所以如果有任何问题,请不要骂我。

1.1 概览
[附录中提供了使用 FreeRTOS 源代码的实用信息]

小型多任务嵌入式系统简介
不同的多任务系统有不同的侧重点。以工作站和桌面电脑为例:

早期的处理器非常昂贵,所以那时的多任务用于实现在单处理器上支持多用户。这类系统中的调度算法侧重于让每个用户”公平共享”处理器时间。

  随着处理器功能越来越强大,价格却更偏宜,所以每个用户都可以独占一个或多个处理器。这类系统的调度算法则设计为让用户可以同时运行多个应用程序,而计算机也不会显得反应迟钝。例如某个用户可能同时运行了一个字处理程序,一个电子表格,一个邮件客户端和一个 WEB 浏览器,并且期望每个应用程序任何时候都能对输入有足够快的响应时间。

桌面电脑的输入处理可以归类为”软实时”。为了保证用户的最佳体验,计算机对每个输入的响应应当限定在一个恰当的时间范围——但是如果响应时间超出了限定范围,并不会让人觉得这台电脑无法使用。比如说,键盘操作必须在键按下后的某个时间内作出明显的提示。但如果按键提示超出了这个时间,会使得这个系统看起来响应太慢,而不致于说这台电脑不能使用。

仅仅从单处理器运行多线程这一点来说,实时嵌入式系统中的多任务与桌面电脑的多任务从概念上来讲是相似的。但实时嵌入式系统的侧重点却不同于桌面电脑——特别是当嵌入式系统期望提供”硬实时”行为的时候。 硬实时功能必须在给定的时间限制之内完成——如果无法做到即意味着整个系统的绝对失败。汽车的安全气囊触发机制就是一个硬实时功能的例子。安全气囊在撞击发生后给定时间限制内必须弹出。如果响应时间超出了这个时间限制,会使得驾驶员受到伤害,而这原本是可以避免的。

大多数嵌入式系统不仅能满足硬实时要求,也能满足软实时要求。

术语说明
在FreeRTOS中,每个执行线程都被称为”任务”。在嵌入式社区中,对此并没有一个公允的术语,但我更喜欢用”任务”而不是”线程”,因为从以前的经验来看,线程具有更多的特定含义。


本章的目的是让读者充分了解:
      在应用程序中,FreeRTOS 如何为各任务分配处理时间。
      在任意给定时刻,FreeRTOS如何选择任务投入运行。
      任务优先级如何影响系统行为。
      任务存在哪些状态。

此外,还期望能够让读者解:
      如何实现一个任务。
      如何创建一个或多个任务的实例。
      如何使用任务参数。
      如何改变一个已创建任务的优先级。
      如何删除任务。
      如何实现周期性处理。
      空闲任务何时运行,可以用来干什么。

本章所介绍的概念是理解如何使用 FreeRTOS 的基础,也是理解基于 FreeRTOS的应用程序行为方式的基础——因此,本章也是这本书中最为详尽的一章。


任务从非运行态转移到运行态被称为”切换入或切入(switched in)”或”交换入(swapped in)”。相反,任务从运行态转移到非运行态被称为”切换出或切出(switched out)”或”交换出(swapped out)”。FreeRTOS 的调度器是能让任务切入切出的唯一实体。  


完整的pdf格式文档51黑下载地址(共149页):
FreeRTOS中文实用教程.pdf (3.05 MB, 下载次数: 1408)



作者: sungang1021    时间: 2018-9-17 14:30
感谢分享,正在学习中ing

作者: 646721055    时间: 2018-11-14 08:57
感谢分享,正在学习中ing
作者: afengge    时间: 2019-1-28 19:38
good good study, day day up!
作者: billy226    时间: 2019-2-16 16:04
good good study, day day up!
作者: billy226    时间: 2019-2-16 16:04
good good study, day day up!
作者: q779883414    时间: 2019-2-23 14:17
不错的,入门资料。
作者: Halloween    时间: 2019-2-27 11:03
感谢分享,正在学习中ing

作者: 辛巴二世    时间: 2019-3-6 10:43
感谢分享,正在学习中ing。中文资料获取不易
作者: wweiliang    时间: 2019-3-21 09:12
感谢分享!!!
作者: lbq666    时间: 2019-4-11 12:53
谢谢楼主
作者: lbq666    时间: 2019-4-11 12:53
感谢分享!!!
作者: chenmo    时间: 2019-4-16 19:08
想学习以下
作者: wofei1314    时间: 2019-4-17 22:14
谢谢分享~
作者: footman199    时间: 2019-5-7 21:42

感谢分享,正在学习中ing
作者: gongzhx    时间: 2019-5-12 21:36
厉害!正在学习freertos,感谢分享!
作者: zengyao05    时间: 2019-6-8 10:31
找了好久。
作者: nbduzh    时间: 2019-6-18 12:00
谢谢分享,       。
作者: 474344468    时间: 2019-6-24 15:06
感谢分享,正在学习中ing
作者: johnsonyin    时间: 2019-6-26 08:39
freeRTOS 是嵌入式软件基础平台,非常有用!谢谢分享!
作者: nbduzh    时间: 2019-7-25 09:29
谢谢分享。正要学习该系统
作者: 鹏博士PBs    时间: 2019-7-25 10:59
学习进行时
作者: nbduzh    时间: 2019-8-1 16:35
谢谢楼主分享                。
作者: jmarching    时间: 2019-8-19 22:29
努力学习一下
作者: qaz10126    时间: 2019-9-7 14:42
非常感谢,实在是干货
作者: 1203805248    时间: 2019-9-12 11:34

感谢分享,正在学习中ing
作者: k555    时间: 2019-9-25 15:27

非常感谢
作者: krainwb    时间: 2019-10-15 09:19
学习一下感谢楼主放出资料
作者: I'mmmmm    时间: 2019-10-30 14:43
翻译超级好,谢谢楼主
作者: simon_zhangss    时间: 2019-12-3 09:07
正在使用,感谢分享
作者: urnotlan    时间: 2019-12-19 15:37
准备学习,下来看看。谢谢分享。
作者: HJY8888    时间: 2019-12-25 19:52
感谢分享,正在学习中ing
作者: gh_3424    时间: 2020-1-13 20:23
VERYGOOD
作者: gh_3424    时间: 2020-1-13 20:24
非常感谢,正转找相关资料
作者: kxydxz    时间: 2020-1-14 19:42
谢谢分享
作者: ban39    时间: 2020-2-3 16:50
谢谢,正是我需要的
作者: yxrsh    时间: 2020-3-9 21:02
感谢分享,正要学习
作者: dxayvlf    时间: 2020-3-26 22:29

感谢分享,正在学习中ing
作者: HWL0541    时间: 2020-4-12 10:01
真不错,谢谢楼主分享
作者: guyang0909    时间: 2020-4-30 17:52
感谢分享,正在学习中ing
作者: yujingnihaoma    时间: 2020-5-18 10:01
很实用的freertos学习文档
作者: hq1104    时间: 2020-6-1 15:17
感谢分享,正在学习中ing
作者: hq1104    时间: 2020-6-1 15:21
感谢分享,正在学习中ing
作者: 暮鼓    时间: 2020-7-23 18:04
准备深入研究研究
作者: 这小伙子    时间: 2020-11-4 11:22
感谢分享如此好的学习资料
作者: bitbingo    时间: 2020-11-25 21:37
最近接触嵌入式系统,听闻FreeRTOS中文实用教程是入门必读篇,特意来拜读一下
作者: ulti_ko    时间: 2020-11-26 07:26
不错的资料,顶一下!
作者: jiang3992    时间: 2020-12-17 10:55

good good study, day day up!
作者: dlldz    时间: 2020-12-21 13:58
实时操作系统还是要学习一下的,做技术储备,说不定哪天就用上拉。
作者: 345345345345345    时间: 2020-12-28 15:12
感谢分享,正是我需要的。英文是在看不懂啊。
作者: chinaitlab    时间: 2020-12-29 04:58

感谢分享,正在学习中ing
作者: a1031238455    时间: 2021-1-4 10:35
感谢分享,正在学习中ing
作者: omokimi    时间: 2021-2-17 11:57
感觉这个真的给力
作者: chanybeak    时间: 2021-3-2 11:11
感谢楼主分享,非常有用,满满的干货呀

作者: liesnake    时间: 2021-5-12 17:45
这个不错的,感觉编程序遇到了难点,需要一个操作系统了
作者: qncl    时间: 2021-6-2 08:53
最近在学习freertos
作者: 慕松    时间: 2021-6-14 15:53
想要学习下freeRTOS

作者: 大漠落日    时间: 2024-4-3 17:34
学习一下,这是以后的大趋势
作者: qlasam    时间: 2024-4-17 10:34
我是怎么都学不会,有没有比较容易懂的视频教程?
作者: czyyy    时间: 2025-1-11 11:04
感觉有点老了。现在不是有heap4 跟5了。文档只介绍1-3
作者: yygdzjs    时间: 2025-1-17 10:12
学习参考一下。谢谢分享!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1