“极致”神话和产品观念

作者:travelhop 发布于:2015-1-19 15:30 分类:技术漫谈

产品真的有“极致”吗?按照极致的思路来打造产品真的靠谱吗?为什么说创业企业搞极致就是自杀?为什么产品经理讲极致就是作?

产品的天性,只是迎合消费者的需要,体现技术的价值而已,无他。

其实这些问题我都回答不出来,仅以一篇《程序员》杂志纸质版的最后一刊,2014年12刊上的我的文章和大家讨论好了。

阅读全文>>

评论(7) 浏览(26495)

Linux cpuidle framework(4)_menu governor

作者:wowo 发布于:2015-1-18 23:14 分类:电源管理子系统

本文以menu governor为例,进一步理解cpuidle framework中governor的概念,并学习governor的实现方法。

在当前的kernel中,有2个governor,分别为ladder和menu(蜗蜗试图理解和查找,为什么会叫这两个名字,暂时还没有答案)。ladder在periodic timer tick system中使用,menu在tickless system中使用。

现在主流的系统,出于电源管理的考量,大多都是tickless system。另外,menu governor会利用pm qos framework(蜗蜗会在后续的文章中分析),在选择策略中加入延迟容忍度(Latency tolerance)的考量。因此本文选取menu governor作为分析对象,至于ladder,就不再分析了。

注:有关periodic timer tick和tickless的知识,可参考本站时间子系统的系列文章。

阅读全文>>

标签: Linux cpuidle menu governor pm_qos

评论(22) 浏览(23834)

Linux cpuidle framework(3)_ARM64 generic CPU idle driver

作者:wowo 发布于:2015-1-6 23:13 分类:电源管理子系统

本文以ARM64平台下的cpuidle driver为例,说明怎样在cpuidle framework的框架下,编写cpuidle driver。另外,本文在描述cpuidle driver的同时,会涉及到CPU hotplug的概念,因此也可作为CPU hotplug的引子。

阅读全文>>

标签: driver arm64 dts cpuidle

评论(13) 浏览(22824)

Linux时间子系统之(五):POSIX Clock

作者:linuxer 发布于:2015-1-5 19:03 分类:时间子系统

clock是timer的基础,任何一个timer都需要运作在一个指定的clock上来。内核中维护了若干的clock,本文第二章描述了clock的 基本概念和一些静态定义的posix clock。根据计时的特点,clock分成两种:一种是真实世界的时间概念,另外一个是仅仅计算CPU执行时间 ,这两种clock分别在第三和第四章描述。从clock的生命周期来看,可以分成静态和动态的posix clock,静态是一直存在于内核中的,而动态clock有创建和销毁的概念,本文第五章描述了dynamic posix clock。

阅读全文>>

标签: posix-clock

评论(12) 浏览(37800)

我的bash shell学习笔记

作者:shanshan1995 发布于:2015-1-1 6:56 分类:Linux应用技巧

本文也即《Learning the bash Shell》3rd Edition的第四章Basic Shell Programming之读书笔记,但我们将不限于此。

阅读全文>>

评论(0) 浏览(11988)

Linux cpuidle framework(2)_cpuidle core

作者:wowo 发布于:2014-12-30 22:38 分类:电源管理子系统

cpuidle core是cpuidle framework的核心模块,负责抽象出cpuidle device、cpuidle driver和cpuidle governor三个实体,并提供如下功能(可参考“Linux cpuidle framework(1)_概述和软件架构”中的软件架构):

1)向底层的cpuidle driver模块提供cpudile device和cpuidle driver的注册/注销接口。

2)向cpuidle governors提供governor的注册接口。

3)提供全局的cpuidle机制的开、关、暂停、恢复等功能。

4)向用户空间程序提供governor选择的接口。

5)向kernel sched中的cpuidle entry提供cpuidle的级别选择、进入等接口,以方便调用。

本文会以这些功能为线索,逐一展开,分析cpuidle framework的实现思路和实现原理。

阅读全文>>

标签: Linux framework core cpuidle

评论(27) 浏览(32627)

Linux时间子系统之(四):timekeeping

作者:linuxer 发布于:2014-12-29 18:03 分类:时间子系统

timekeeping模块是一个提供时间服务的基础模块。Linux内核提供各种time line,real time clock,monotonic clock、monotonic raw clock等,timekeeping模块就是负责跟踪、维护这些timeline的,并且向其他模块(timer相关模块、用户空间的时间服务等)提供 服务,而timekeeping模块维护timeline的基础是基于clocksource模块和tick模块。通过tick模块的tick事件,可以 周期性的更新time line,通过clocksource模块、可以获取tick之间更精准的时间信息。

本文熟悉介绍timekeeping的一些基础概念,接着会介绍该模块初始化的过程,此后会从上至下介绍该模块提供的服务、该模块如何和tick模块交互以及如何和clocksource模块交互,最后介绍电源管理相关的内容。

阅读全文>>

标签: Linux时间子系统 timekeeping

评论(16) 浏览(48140)

Linux电源管理(13)_Driver的电源管理

作者:Physh 发布于:2014-12-26 18:31 分类:电源管理子系统

首先,回想一下wowo电源管理系列文章中提到的几个PM特性:

A. Wake Count/Wake Source

B. Wake Lock

C. Auto Sleep

D. Runtime Suspend


这篇文章就简单简单整理一下以上特性的在Driver中的使用场景,理解可能有偏差,大家多指教。

阅读全文>>

标签: Kernel driver

评论(32) 浏览(34608)

Linux时间子系统之(三):用户空间接口函数

作者:linuxer 发布于:2014-12-24 15:48 分类:时间子系统

从应用程序的角度看,内核需要提供的和时间相关的服务有三种:

1、和系统时间相关的服务。例如,在向数据库写入一条记录的时候,需要记录操作时间(何年何月何日何时)。

2、让进程睡眠一段时间

3、和timer相关的服务。在一段指定的时间过去后,kernel要alert用户进程

本文主要描述和时间子系统相关的用户空间接口函数知识。

阅读全文>>

标签: Linux时间子系统用户空间接口函数

评论(19) 浏览(40324)

Linux时间子系统之(一):时间的基本概念

作者:linuxer 发布于:2014-12-23 12:22 分类:时间子系统

本文使用Q & A的方式来和大家以前探讨一下时间的基本概念

阅读全文>>

标签: 时间基础

评论(30) 浏览(37426)

Copyright @ 2013-2015 蜗窝科技 All rights reserved. Powered by emlog