简单的玩玩etimer <contiki学习笔记之九 补充>

这幅图片是对前面  <<contiki学习笔记之九>>  的一个补充说明。

简单的玩玩etimer <contiki学习笔记之九>

或许,自己正在掀开contiki process最后的一层面纱;

或许,还有一段路要走;

或许,已经掀开...

---------------

一切,都只是process;只有有了process,才会轮到etimer_process  发言,除非,抛却一切机制,裸机实现etimer...

process,是什么? 一个链表,还是单向的,仅此而已。稍有特点的是,这个链表的某个结点,或许又会挂一个链表---可以认为,两个链表垂直相交成90°..当然,这不是几何,但是是集合。

etimer,是什么? 某种超时机制.. 类似于sleep()。但它,高大上的把自己也弄成一个链表。但凡使用etimer这个机制的process,都得把自己设置的那个etimer 变量 加入这个etimer链表,当然,最后的最后,也毫无情的被etimer 剔除这个链表,不存在天长地久,只是契约。

于是,process 之间就开始管联,process之间也就有了社交。

而这一切,都只是链表。同一条绳上的蚂蚱?越看越像。

好吧,contiki OS 下层就努力操作这些链表。而应用者,才不管这些破事,尽管实现自己的一个process 点即可...

Email: [email protected]

简单的玩玩etimer <contiki学习笔记之九 补充>

时间: 2024-10-13 20:01:45

简单的玩玩etimer <contiki学习笔记之九 补充>的相关文章

简单的玩玩etimer &lt;contiki学习笔记之九&gt;

好吧,我承认etimer有点小复杂,主要是它似乎和contiki的process搅在一起,到处都在call_process.那就先搜搜contiki下的etimer的example看看,然后再试着写一个demo玩玩. 在写demo之前,先说说自己是怎么找到etimer 的example的文件的. 在core/sys/etimer.h 文件中,在描述etimer的数据结构的时候,作者显示的指出,如果要使用etimer,就必须先使用 etimer_set()这个函数进行一些工作,如图: 是的,数据结

contiki-main.c 中的process系列函数学习笔记 &lt;contiki学习笔记之六&gt;

说明:本文依然依赖于 contiki/platform/native/contiki-main.c 文件. ------------------------------------------------------------------------------------------------------------------------------------- 根据上一个笔记里面添加的printf()语句的打印信息提示,hello world 打印是在执行了 1 autostart_

MySQL学习笔记之九 字符串模式匹配

我们在使用查询的时候,经常会碰到模糊条件查询,而模糊查询就涉及到了字符串模式匹配. 在这里,主要讲两个:标准的SQL模式匹配.扩展正则表达式模式匹配.     一.标准的SQL模式匹配 SQL的模式匹配允许你使用"_"匹配任何单个字符,而"%"匹配任意数目字符(包括零个字符).在MySQL中,SQL的模式缺省是忽略大小写的.下面显示一些例子.注意在你 使用SQL模式时,你不能使用=或!=:而使用LIKE或NOT LIKE比较操作符. 为了找出包含正好5个字符的名字,

angular学习笔记(十九)

本篇主要介绍angular使用指令修改DOM: 使用angular指令可以自己扩展html语法,还可以做很多自定义的事情.在后面会专门讲解这一块的知识,这一篇只是起到了解入门的作用. 与控制器,过滤器,服务,一样,可以通过模块实例的directive的方法来创建指令: var someModule = angular.module('SomeModule',[]); someModule.directive('directiveName',function(){ return { link: f

VSTO学习笔记(九)浅谈Excel内容比较

原文:VSTO学习笔记(九)浅谈Excel内容比较 说起文件内容比较,或许我们首先想到的是UltraCompare这类专业比较的软件,其功能非常强大,能够对基于文本的文件内容作出快速.准确的比较,有详细的差异报告,非常便于分析.其实,各种版本控制软件中也包含有或多或少的比较功能,如TFS.CVS.SVN等.但是如果待比较的文件不是基于文本类型的,那就无能为力了.今天我就来谈一谈Excel的比较方法及其特点,也和大家共同探讨一下,如果你有更好的方法,欢迎分享. 一.Excel的文件架构 Excel

GDI+学习笔记(九)带插件的排序算法演示器(MFC中的GDI+实例)

带插件的排序算法演示器 本节将通过一个实例来说明GDI+在MFC中的应用.这个算法演示器其实是本人算法系列的一个开端,由于csdn没有树状的目录结构,咱也只好使用链表了不是?好了,废话不多说,开始今天的文章. (一)功能说明 我们初步制定功能如下: (1). 能够通过柱状图,自动展示排序算法的交换比较过程 (2). 能够使用插件的形式进行开发.即,当新完成一个算法后,只需要完成一个插件文件(我们这里使用动态库dll),由主程序加载插件,即可进行执行,而不再需要重新编译主程序. (3). 保证主程

汇编入门学习笔记 (九)—— call和ret

疯狂的暑假学习之  汇编入门学习笔记 (九)--  call和ret 參考: <汇编语言> 王爽 第10章 call和ret都是转移指令. 1. ret和retf ret指令:用栈中的数据,改动IP内容,从而实现近转移 相当于: pop ip retf指令:用栈中的数据.改动CS和IP,从而实现远转移 相当于: pop ip pop cs 样例:ret assume cs:code,ss:stack stack segment db 16 dup(1) stack ends code segm

Android学习笔记(九)——更复杂的进度对话框

显示操作进度的对话框 1.使用上一篇创建的同一项目,在activity_main.xml文件中添加一个Button: <Button android:id="@+id/btn_dialog3" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="onClick3" android:text=&qu

学习笔记(九)并发(三)

<Java编程思想>整理的一些学习笔记.有不对的地方.欢迎指出. 1 .资源冲突,假设两个线程确实是在改动同一个对象,共享资源的冲突将变得更糟糕.由于这有可能把对象设置成不对的状态.通过简单的"信号量"概念引入,把它看作是在两个线程之间进行通信的标志对象.假设信号量的值是零.则它监控的资源是可用的,但假设这个值是非零的,则被监控的资源不可用,所以线程必须等待. 当资源可用的时候,线程添加信号量的值,然后继续运行这个被监控的资源.把添加和降低信号量的操作定义为原子操作,这样就