<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[蜗窝科技]]></title> 
<description><![CDATA[慢下来，享受技术。]]></description>
<link>http://www.wowotech.net/</link>
<language>zh-cn</language>
<generator>www.emlog.net</generator>
<item>
	<title>Linux的时钟</title>
	<link>http://www.wowotech.net/timer_subsystem/clock-id-in-linux.html</link>
	<description><![CDATA[时钟或者钟表（clock）是一种计时工具，每个人都至少有一块，可能在你的手机里，也可能佩戴在你的手腕上。如果Linux也是一个普通人的话，那么她的手腕上应该有十几块手表，包括：CLOCK_REALTIME、CLOCK_MONOTONIC、CLOCK_PROCESS_CPUTIME_ID、CLOCK_THREAD_CPUTIME_ID、CLOCK_MONOTONIC_RAW、CLOCK_REALTIME_COARSE、CLOCK_MONOTONIC_COARSE、CLOCK_BOOTTIME、CLOCK_REALTIME_ALARM、CLOCK_BOOTTIME_ALARM、CLOCK_TAI。本文主要就是介绍Linux内核中的形形色色的“钟表”。 <a href="http://www.wowotech.net/timer_subsystem/clock-id-in-linux.html">阅读全文&gt;&gt;</a>]]></description>
	<pubDate>Wed, 17 May 2017 10:55:56 +0000</pubDate>
	<author>linuxer</author>
	<guid>http://www.wowotech.net/timer_subsystem/clock-id-in-linux.html</guid>

</item>
<item>
	<title>Linux时间子系统之（十四）：tick broadcast framework</title>
	<link>http://www.wowotech.net/timer_subsystem/tick-broadcast-framework.html</link>
	<description><![CDATA[<p>
	在内核中，有cpuidle 
framework可以控制cpu的节电：当没有进程调度到该cpu上执行的时候，swapper进程粉墨登场，将该cpu会被推入到idle状态。当然
CPU的idle状态有深有浅，当CPU睡的比较深入的时候，有可能会关闭本地的timer硬件。这样就会引入一个很有意思的问题：local 
timer将无法唤醒CPU，该cpu上的所有的software timer将无法唤醒cpu。tick broadcast 
framework就是用来解决这个问题的。
</p>
<p>
	本文中的代码来自linux kernel 4.0。
</p> <a href="http://www.wowotech.net/timer_subsystem/tick-broadcast-framework.html">阅读全文&gt;&gt;</a>]]></description>
	<pubDate>Thu, 21 May 2015 11:26:10 +0000</pubDate>
	<author>linuxer</author>
	<guid>http://www.wowotech.net/timer_subsystem/tick-broadcast-framework.html</guid>

</item>
<item>
	<title>Linux时间子系统之（十三）：Tick Device layer综述</title>
	<link>http://www.wowotech.net/timer_subsystem/tick-device-layer.html</link>
	<description><![CDATA[<p>
	时间子系统中的tick device layer主要涉及kernel/time/tick-*相关的文件，本文的主要内容就是从high level层次（不纠缠在具体的每行代码）描述tick device layer的运作逻辑。
</p>
<p>
	如
果说每个.c文件是一个模块的话，我们可以首先简单描述tick device layer的各个模块。tick-common.c描述了tick 
device的一些通用操作，此外，该文件还包括了周期性tick的代码。想要让系统工作在tickless mode（更准确应该是Dynamic 
tick模块，也就是说根据系统的当前运行状况，动态的启停周期性tick）需要两个模块的支持，分别是tick-oneshot.c和tick-
sched.c。tick-oneshot.c主要是提供和tick device的one shot 
mode相关的操作接口函数。从字面上看，tick-sched.c是和tick的调度相关，所谓tick的调度包括两个方面，一方面是在系统正常运行过
程中，如何产生周期性的tick 
event，另一方面是在系统没有任务执行，进入idle状态的时候，如何停止周期性的tick，以及恢复的时候如何更新系统状态（例如：jiffies
等）。tick-broadcast.c和tick-broadcast-hrtimer.c是和tick 
broadcast相关，本文不会涉及这部分的内容，会有专门的文档描述它。
</p>
<p>
	本文的第二章描述了关于tick 
device概述性的内容，随后在第三章描述了tick device layer是如何初始化的，由于tick 
device开始总是工作在periodic mode，因此，本章也就顺便描述了周期性tick的运作。如果硬件以及系统配置允许，系统中的tick 
device会切换one shot mode，从而进入tickless 
mode，因此第四章描述了在配置了高精度timer的情况下，dynamic 
tick如何运作之机理，第五章和第四章类似，只不过描述的是没有配置高精度timer的情况。
</p> <a href="http://www.wowotech.net/timer_subsystem/tick-device-layer.html">阅读全文&gt;&gt;</a>]]></description>
	<pubDate>Thu, 26 Mar 2015 10:50:55 +0000</pubDate>
	<author>linuxer</author>
	<guid>http://www.wowotech.net/timer_subsystem/tick-device-layer.html</guid>

</item>
<item>
	<title>Linux时间子系统之（二）：软件架构</title>
	<link>http://www.wowotech.net/timer_subsystem/time-subsyste-architecture.html</link>
	<description><![CDATA[本文的主要内容是描述内核时间子系统的软件框架。首先介绍了从旧的时间子系统迁移到新的时间子系统的源由，介绍新的时间子系统的优势。第三章汇整了时间子系统的相关文件以及内核配置。最后描述各种内核配置下的时间子系统的数据流和控制流。 <a href="http://www.wowotech.net/timer_subsystem/time-subsyste-architecture.html">阅读全文&gt;&gt;</a>]]></description>
	<pubDate>Sat, 07 Mar 2015 10:37:48 +0000</pubDate>
	<author>linuxer</author>
	<guid>http://www.wowotech.net/timer_subsystem/time-subsyste-architecture.html</guid>

</item>
<item>
	<title>Linux时间子系统之（六）：POSIX timer</title>
	<link>http://www.wowotech.net/timer_subsystem/posix-timer.html</link>
	<description><![CDATA[<p>
	在<a href="http://www.wowotech.net/timer_subsystem/timer_subsystem_userspace.html">用户空间接口函数文档</a>中，
我们描述了和POSIX timer相关的操作，主要包括创建一个timer、设定timer、获取timer的状态、获取timer 
overrun的信息、删除timer。本文将沿着这些用户空间的接口定义来看看内核态的实现。虽然POSIX 
timer可以基于各种不同的clock创建，本文主要描述real time clock相关的timer。
</p>
<p>
	本文第二章描述了POSIX timer的基本原理，第三章描述系统调用的具体实现，第四章主要讲real time clock的timer callback函数的实现，第五章介绍了timer超期后，内核如何处理信号。
</p> <a href="http://www.wowotech.net/timer_subsystem/posix-timer.html">阅读全文&gt;&gt;</a>]]></description>
	<pubDate>Thu, 22 Jan 2015 10:12:26 +0000</pubDate>
	<author>linuxer</author>
	<guid>http://www.wowotech.net/timer_subsystem/posix-timer.html</guid>

</item></channel>
</rss>