Zephyr(IOT Operation System)
cherisegege
这个作者很懒,什么都没留下…
展开
-
Zephyr内核到1.5版本的改进
Zephyr内核从1.0到1.5版本发生了很大改变,这些改变给开发人员带来了很大方便,具体如下:①消除微内核和超微内核构建类型的分离②消除微内核应用程序中的MDEF③更简单易用的内核API④宽松了内核对象的使用限制⑤通过合并重复的服务减少内存消耗⑥通过减少上下文的切换减少开销、提高性能更加详细的改变如下描述:⑴应用程序设计相关早期独立的微内核和超微内核被翻译 2017-07-02 16:07:39 · 351 阅读 · 0 评论 -
Zephyr源码树
理解Zephyr源码树结构相当于理解整个操作系统源码分布结构,这对于我们理解源码会有些帮助。下面列出了源码树中顶级目录,每个顶级目录下还会有一个或多个子目录。arch:不同架构指定的内核代码和片上系统代码,每一个架构有一个单独目录,在这个单独目录中包括如下内容:①架构相关的源文件②架构相关的头文件,里面包含不同架构的私有APIs③架构相关的片上系统代码boards:翻译 2017-07-02 10:26:31 · 1356 阅读 · 0 评论 -
工作队列线程
工作队列线程工作队列是一个内核对象,专门用来处理先进先出管理器管理的工作项成员。每一个工作项都是通过调用它指定的函数来处理的。工作队列的典型应用是在中断函数或者高优先级线程中把一些非紧急任务分给低优先级线程处理,这样非紧急任务就不会对时间敏感的任务造成影响了工作队列线程相关概念我们可以定义任意数量的工作队列。每个工作队列都通过它的内存地址引用。一个工作队列有一下几个主要属性:①翻译 2017-07-16 14:02:22 · 1017 阅读 · 0 评论 -
线程生命周期
线程生命周期 线程是一个内核对象,应用程序通过线程可以处理一些中断服务函数不能处理的那些执行时间太长或者逻辑太复杂的任务相关概念 一个应用程序可以定义任务数量的线程,每个线程在派生的时候都会返回一个线程ID,应用程序可以通过线程ID来引用线程。一个线程有一下几个属性: ①每个线程独自拥有的一块内存区域“栈”,这个栈的空间大小可以根据线程处理的任务需要指定 ②内核翻译 2017-07-09 10:29:30 · 350 阅读 · 0 评论 -
线程调度
线程调度 内核调度器是基于优先级实现的,他可以使应用程序线程共享CPU相关概念线程状态 一个已经是就绪状态的线程是不会被阻止其运行的,并有可能被调度器选择为当前线程 线程优先级 调度算法协作时间片抢占时间片调度器上锁线程睡眠忙等待推荐用法配置选项APIs翻译 2017-07-09 10:45:07 · 419 阅读 · 0 评论 -
线程自定义数据
线程自定义数据 每个线程都有一个32位的自定义数据,这个数据可以被应用程序用来传输任何数据相关概念 每个线程都有一个32位的自定义数据区,这个自定义数据只能被线程自己访问,并且可以被应用程序传输任何数据。默认情况下自定义数据是0 note:中断服务函数是没有自定义数据的,因为中断服务函数是在一个单一共享的内核中断处理上下文中操作的自定义数据的实现使用自定义数据翻译 2017-07-09 16:30:50 · 328 阅读 · 0 评论 -
系统线程
系统线程 系统线程指的是在系统初始化期间有内核自动派生的线程系统线程相关概念 内核会派生出两个系统线程,它们分别是主线程和空闲线程 主线程: 这个线程在执行完内核初始化后调用应用程序的主函数mian()(如果定义了主函数) 默认情况下,主线程是优先级最高的抢占式线程。如果内核配置为不支持抢占式线程,那么主线程会被配置为优先级最低的协作式线程 主线翻译 2017-07-09 20:04:33 · 898 阅读 · 0 评论 -
内核时钟
工作队列线程 工作队列是一个通过专用的线程处理工作项的内核对象,它符合先进先出的管理方式。每一个工作项都有有一个函数指针成员,工作项被处理时就会调用它自己指定的函数来处理事情。工作队列典型应用在中断服务处理函数或高优先级线程的处理函数中把不紧急的处理推送给低优先级的线程,这样非紧急的处理就不会对紧急处理造成影响了翻译 2017-07-09 22:03:18 · 1546 阅读 · 0 评论 -
软件定时器
定时器定时器(Timer) 是一个使用内核系统时钟来计时的内核对象。当一个定时器指定的时间计时到达时,它会执行一个应用层定义的动作,或简单地记录下这个“期满”事件,并等待应用层读取它的状态值概念我们可以定义任意数量的定时器,每个定时器都通过它的内存地址来引用一个定时器有以下几个关键属性:①时限(Duration):是指从启动到定时器第一次期满之间的时间间隔,单位为毫翻译 2017-08-05 14:19:39 · 765 阅读 · 0 评论