contiki系统函数源代码中包含了如下几个部分

具体实现见后文

一、 Argument buffer(参数缓存区)

The argument buffer can be used when passing an argument from an exiting process to a process that has not been created yet.
当将参数从现有进程传递到尚未创建的进程时,可以使用参数缓冲区。

二、Clock library(时钟库)

The clock library is the interface between Contiki and the platform specific clock functionality.
时钟库是contiki与平台特定时钟功能之间的接口。

三、Communication power accounting(通信耗电统计)

The compower module accumulates power consumption information and attributes it to communication activities.
compower模块收集功耗信息并将其归因于通信活动。

四、Callback timer(ctimer)

The ctimer module provides a timer mechanism that calls a specified C function when a ctimer expires.
ctimer模块提供了一个定时器机制,它在ctimer过期时调用指定的C函数。

五、Event timers(etimer)

Event timers provides a way to generate timed events.
事件计时器提供了生成定时事件的方法。

六、The Contiki program loader(contiki程序加载器)

The Contiki program loader is an abstract interface for loading and starting programs.
contiki程序加载器是一个用于加载和启动程序的抽象接口。

七、Multi-threading library(多线程库)

The event driven Contiki kernel does not provide multi-threading by itself - instead, preemptive multi-threading is implemented as a library that optionally can be linked with applications.
事件驱动的康智奇内核本身并不提供多线程,相反,先发制人的多线程是作为一个库实现的,可以选择与应用程序链接。

八、Contiki processes(contiki进程)

A process in Contiki consists of a single protothread.
contiki的一个进程由一个单一的protothread组成。

九、Real-time task scheduling(实时任务调度)

The real-time module handles the scheduling and execution of real-time tasks (with predictable execution times).
实时模块处理实时任务的调度和执行(具有可预测的执行时间)。

十、Seconds timer library(stimer)

The stimer library provides functions for setting, resetting and restarting timers, and for checking if a timer has expired.
stimer库提供用于设置、重置和重新启动计时器的功能,以及用于检查计时器是否已过期。

十一、Contiki subprocesses(contiki子流程)

A Contiki subprocess is a “process-in-a-process”.
康智奇子过程是一个“过程中的过程”。

十二、Timer library(timer库)

The Contiki kernel does not provide support for timed events.
contiki内核不支持定时事件。

十三、The Contiki file system interface(contiki文件系统接口)

The Contiki file system interface (CFS) defines an abstract API for reading directories and for reading and writing files.
contiki文件系统接口(CFS)定义了一个用于读取目录和读写文件的抽象API

十四、Implicit network time synchronization(隐式网络时间同步)

This crude and simple network time synchronization module synchronizes clocks of all nodes in a network.
这个粗糙而简单的网络时间同步模块对网络中所有节点的时钟进行同步。

十五、Protothreads

Protothreads are a type of lightweight stackless threads designed for severly memory constrained systems such as deeply embedded systems or sensor network nodes.
Protothread是一种轻量级无堆栈线程,设计用于内存受限的系统,如深度嵌入式系统或传感器网络节点。

contiki学习笔记(三)contiki系统相关推荐

  1. Linux学习笔记(三):系统运行级与运行级的切换

    1.Linux系统与其他的操作系统不同,它设有运行级别.该运行级指定操作系统所处的状态.Linux系统在任何时候都运行于某个运行级上,且在不同的运行级上运行的程序和服务都不同,所要完成的工作和所要达到 ...

  2. contiki学习笔记03

    contiki学习笔记03 contiki是基于事件型驱动的操作系统,它传递事件的方式有两种,同步和异步. process_post_synch函数是同步,调用它可以马上执行相关的线程:process ...

  3. Contiki学习笔记——Cooja启动失败

    Contiki学习笔记--Cooja启动失败 Cooja启动 Cooja启动 进入Terminal: cd Contiki/tools/cooja ant run 出现错误: Could not fi ...

  4. J2EE学习笔记三:EJB基础概念和知识 收藏

    J2EE学习笔记三:EJB基础概念和知识 收藏 EJB正是J2EE的旗舰技术,因此俺直接跳到这一章来了,前面的几章都是讲Servlet和JSP以及JDBC的,俺都懂一些.那么EJB和通常我们所说的Ja ...

  5. Ethernet/IP 学习笔记三

    Ethernet/IP 学习笔记三 原文为硕士论文: 工业以太网Ethernet/IP扫描器的研发 知网网址: http://kns.cnki.net/KCMS/detail/detail.aspx? ...

  6. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  7. python3常用模块_Python学习笔记三(常用模块)

    Python 学习笔记三 (常用模块) 1.os模块 os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果. os.name:返回当前操作系统名称( ...

  8. K8S 学习笔记三 核心技术 Helm nfs prometheus grafana 高可用集群部署 容器部署流程

    K8S 学习笔记三 核心技术 2.13 Helm 2.13.1 Helm 引入 2.13.2 使用 Helm 可以解决哪些问题 2.13.3 Helm 概述 2.13.4 Helm 的 3 个重要概念 ...

  9. Linux学习笔记之——Linux系统内部相关介绍

    Linux学习笔记之--Linux系统内部相关介绍 摘要:主要记录一些比较有用的能够帮助理解和使用Linux的知识.比如一些相关概念.没兴趣的看看就好.知道有这么个东西.注意事项.和一些常用目录的作用 ...

  10. SurfaceFlinger学习笔记(三)之SurfaceFlinger进程

    概述 本系列是基于android Q 即android10 SurfaceFlinger学习笔记(一)应用启动流程 SurfaceFlinger学习笔记(二)之Surface SurfaceFling ...

最新文章

  1. Machine Learning Algorithm
  2. ie6不能播放视频问题
  3. 关于 Cypress 同界面元素交互的讨论
  4. 转先验概率、最大似然估计、贝叶斯估计、最大后验概率
  5. Linux下汇编语言学习笔记13 ---
  6. 【Flink】Flink时间之internalTimerService初始化
  7. catia如何整列加工_非标零件如何用机器检测?能像人类一样查出问题吗?
  8. Android中自定义View的MeasureSpec使用
  9. Android 网络学习之获取服务器的图片
  10. 大型网站应用之海量数据和高并发解决方案总结一二!
  11. PPT - 双屏幕情况下,如何设置 PPT 不在主屏幕显示问题?
  12. 第二届中国Rust开发者大会议程介绍
  13. 阿里云迎来了又一轮“刚需”
  14. Electron-vueda打包EXE文件,打开后白屏
  15. 离差(全距,平均偏差,半内四分位数间距,10~90百分位数间距,标准差)
  16. 深度学习(自然语言处理)RNN、LSTM、TextCNN
  17. 防Ddos文献之应对篇-DDoS防御方案
  18. Vue开发项目入门——Vue脚手架
  19. 《ZigBee实战演练》
  20. Apple M1芯片版Mac系统重装教程

热门文章

  1. 【无标题】计统大作业-hello
  2. POJ 3322 Bloxorz I
  3. VS1003调试例程
  4. 【Python自然语言处理】读书笔记:第七章:从文本提取信息
  5. 支持向量机(股票)——Python量化
  6. 华三防火墙h3cf100配置双宽带_华三防火墙H3 F100基本配置说明.doc
  7. 高速数据采集存储系统分类
  8. dot全称_求魔兽世界中的缩写全称
  9. Android studio 打包项目,抛出异常keystore was tampered with,or password was incorrect!
  10. flutter comsumer局部刷新的问题