上一篇,大致介绍了ThreadX和怎么获得它的源带码。这一篇,我想大致浏览一下源代码目录并找到一个合适的阅读切入点。

展开common\src目录,总共有185个文件,这可真够吓人的,要知道freeRTOS核心代码就那么4,5个文件。但不要被这个数量吓倒了,ThreadX采用一个API一个文件的形式对于源码进行组织,因此,每个文件都很小,只完成一个包含一个API的实现,从文件名上我们可以看到这一点。

ThreadX的文件名由三部分组成:

1. 固定头tx代表ThreadX;

2. 模块名,比如block_pool, byte_pool, mutex, queue, semaphore, thread等等;这些模块在freeRTOS中基本都能找到对应的概念,可见RTOS这个领域还是大量共同的地方;

3. API, 比如create,delete,change,activate等等。

现在要选一个API来作为我们的起点,我想选一个自己认为比较重要模块的一个基础API作为起点。我选择了Thread模块的create这个API,从名字上看,这个API应该是实现了线程创建的功能。线程应该就是FreeRTOS中Task的概念吧,但也不一定,需要深入代码去了解一下。下一篇我们就深入这个API,看看ThreadX到底有何高明之处。

从源码深入接触ThreadX(2) --- 选择一个API相关推荐

  1. 从源码深入接触ThreadX(1) --- 了解ThreadX

    前几天在翻看微信公众号时,意外发现ThreadX已经开源.通过了解,原来ThreadX的开发公司Express Logic在2019年4月被微软收购.经过了1年多的准备,微软将ThreadX包装成了a ...

  2. Hbase Compaction 源码分析 - CompactSplitThread 线程池选择

    目录 CompactSplitThread requestCompactionInternal方法 selectCompaction方法 requestCompaction方法 其他相关文章 Hbas ...

  3. 拼团小程序源码_纯小白如何做一个摄影电商拼团小程序?

    过去,摄影行业都是线下实体店为主,宣传手段单一.推广效率差,客户复购率更是不怎样.随着微信小程序的出现,各个摄影行业商家开始通过小程序来进行推广,连接线上线下场景,这样便能触达更多消费者. 小程序拥有 ...

  4. 老李推荐: 第3章2节《MonkeyRunner源码剖析》脚本编写示例: MonkeyDevice API使用示例 1...

    老李推荐: 第3章2节<MonkeyRunner源码剖析>脚本编写示例: MonkeyDevice API使用示例 上一节我们学习了如何通过MonkeyRunner这个类的静态方法wait ...

  5. 最小的linux内核代码,带你阅读linux内核源码:下载源码、编译内核并运行一个最小系统...

    要学习linux内核,先要能够编译内核,还需要了解内核如何启动根文件系统.这样你才能在修改linux内核代码之后,完成验证的过程. 本文教你完成下列过程: 1.下载linux并编译linux内核源码 ...

  6. 老李推荐:第3章3节《MonkeyRunner源码剖析》脚本编写示例: MonkeyImage API使用示例 1...

    老李推荐:第3章3节<MonkeyRunner源码剖析>脚本编写示例: MonkeyImage API使用示例 在上一节的第一个"增加日记"的示例中,我们并没有看到日记 ...

  7. 12.源码阅读(app启动流程-android api 26)

    activity的启动流程之前已经通过源码了解了,那么app的启动流程是怎样的,从我们按下app的图标,到应用启动起来显示出画面,中间都经历了什么? 安卓是基于java的,所以和java有一定的相似性 ...

  8. 爷青回!最近很火的朋友圈怀旧小电视源码来啦!看到最后一个视频我大呼好家伙!

    原文首发于公众号:[golang小白成长记] 爷青回!最近很火的朋友圈怀旧小电视源码来啦!看到最后一个视频我大呼好家伙! 体验一把怀旧小电视 最近朋友圈被怀旧小电视刷爆啦! 点开来,是一台老式电视机! ...

  9. java qq聊天界面_【附源码】用Java写了一个类QQ界面聊天小项目,可在线聊天!...

    原标题:[附源码]用Java写了一个类QQ界面聊天小项目,可在线聊天! 目录: 1.功能实现 2.模块划分 3.使用到知识 4.部分代码实现 5.运行例图 1.功能实现 1.修改功能(密码.昵称.个性 ...

最新文章

  1. CentOS下Redis安装配置小结
  2. 学习笔记94—所有用过SCI-hub的科研工作者都应该知道的事
  3. 解决:RuntimeError: CUDA out of memory. Tried to allocate 2.00 MiB
  4. 1097 Deduplication on a Linked List (25 分)_35行代码AC
  5. bzoj 4393 Usaco Fruit Feast
  6. 【Hbase】HBase的shell命令总结
  7. 压力校准仪器开发之日--2017-10-31
  8. KVM系列之硬件管理
  9. Hadoop学习笔记(五):MapReduce的类型与格式
  10. WebView交互架构项目实战(三)(1),老罗android开发视频教程
  11. 企业运营管理体系是什么?
  12. 数据分析之RFM——用户模型分析(附案例数据和代码)
  13. Markdown详细教程+技巧总结
  14. Codeforces 1398 F. Controversial Rounds —— 线段树+dp
  15. 写过的比较难受的题目
  16. 服务器文件夹怎么找回来,文件过期了怎么恢复(教你一招找回微信过期文件)...
  17. 技术控 | 自然语言技术在文智趋势分析产品上的应用
  18. ubuntu1804 安装PCL
  19. 培训班出身的前端,出路在哪儿?
  20. mysql 怎么表示正无穷_C语言中正无穷大怎么表示

热门文章

  1. 集合操作 - 字典的近亲
  2. 小数点用计算机怎么用,计算机如何精确到小数点后一百位
  3. 在这个特殊的日子里,我用最真挚的心意,为母亲送上了最温暖的祝福。
  4. android.view.InflateException: Binary XML file line(报错日志要从下往上看)
  5. 2019纪中暑期(9-3=6)天期末考试 总结
  6. Java springboot+vue生成报纸排版页面的新闻官网
  7. windwos 查看进程详细信息
  8. 大专程序员毕业五年税后18K,想进BAT,网友:吃shi都赶不上热的
  9. 登入註冊頁面(Login/Signup)
  10. Python:打包配置文件 setup.py 详解