摘要: 前面说过zephyr支持静态和动态两种方式创建线程,这里分析动态创建的方式。应用程序通过调用k_thread_create()函数创建一个线程,实际上是调用_impl_k_thread_create()函数,定义在zephyr-zephyr-v1.13.0\kernel\thread.c: 第9行, 阅读全文
posted @ 2019-01-27 20:12 lknlfy 阅读(4112) 评论(3) 推荐(0) 编辑
摘要: 每一个支持多进程(线程)的系统都会有一个滴答时钟(系统时钟),这个时钟就好比系统的“心脏”,线程的休眠(延时)和时间片轮转调度都需要用到它。 Cortex-M系列的内核都有一个systick时钟,这个时钟就是设计用来支持操作系统的,是一个24位的自动重装载向下计数器,中断入口就位于中断向量表里面,定 阅读全文
posted @ 2019-01-27 19:55 lknlfy 阅读(3251) 评论(0) 推荐(0) 编辑
摘要: 一.写在前面 最近对zephyr这个系统很感兴趣,因此业余有时间的时候都在研究它的源码,而光看代码不去动手这不是我的风格,于是乎在网上淘了一块STM32F103C8T6的核心板和一块NRF52832的最小系统板。由于zephyr支持很多种开发板,因此一行代码都不用修改就直接可以在这两块板子上跑起来。 阅读全文
posted @ 2019-01-27 13:18 lknlfy 阅读(8464) 评论(0) 推荐(3) 编辑