19 junguo

尚未进行身份认证

暂无相关简介

等级
TA的排名 3w+

理解binder--内核层.pdf

csdn不支持doc,pdf等格式直接上传。所以放在github上。https://github.com/youjunguo/android-binder/blob/master/%E7%90%86%E8%A7%A3binder--%E5%86%85%E6%A0%B8%E5%B1%82.pdf感兴趣的话,可以看看。...

2019-11-15 20:01:44

TREE RCU实现之三 —— 定期调用

上一节,介绍过了RCU实现中用到的主要函数。不过还需要定期的运行这些函数,整个机制才完整。       RCU的实现是通过在update_process_times() 中调用rcu_check_callbacks()来达到这个目的的。每个CPU都会定期的调用update_process_times()。rcu_check_callbacks()会去检查当前的RCU机制中是否有需要处理的内容,

2012-12-07 11:17:52

TREE RCU实现之二 —— 主干函数

RCU的实现集中在以下几个步骤:         1, 调用call_rcu,将回调函数增加到列表。         2,   开始一个宽限期。         3,   每个CPU报告自己的状态,直到最后一个CPU,结束一个宽限期。         4, 宽限期结束,每个CPU处理自己的回调函数。call_rcu的实现  static void__call_rcu(st

2012-12-06 18:36:50

TREE RCU实现之一 —— 数据结构

代码分布        在分析代码之前, 先看看代码的分布情况。RCU实现的代码包含在下列一些文件中,此处用到的是linux 3.6.4的代码。                RCU实现的头文件,所有使用RCU的代码都需要包含它                           包含rcupdate.h中没有包含的函数声明。

2012-12-05 02:36:29

RCU机制

简介        RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用。RCU主要针对的数据对象是链表,目的是提高遍历读取数据的效率,为了达到目的使用RCU机制读取数据的时候不对链表进行耗时的加锁操作。这样在同一时间可以有多个线程同时读取该链表,并且允许一个线程对链表进行修改(修改的时候,需要加锁)。RCU适用于需要频繁的读取数据,而相应修

2012-12-02 01:33:55

STL中迭代器的实现

 STL中迭代器的实现junguo           最近在看候捷先生的《STL源码剖析》,侯先生写的挺好的。但我读起来总感觉有些拗,理解起来有些费劲,可能他看问题的观点和我不一样造成的。开始的时候总是不太理解,后来理顺了自己的思路,发现有些东西其实并不难。在此把我对迭代器的理解整理一下,也是帮助自己消化一下,因为我发现不动手,很多东西容易遗忘。      文章里提供的一些例子程序是在D

2006-04-21 01:11:00

乱砍设计模式之十一

剩余的模式 junguo     FACADE(外观)模式:是为子系统中的一组接口提供一个一致的界面。该模式理解起来还是比较容易的,举个例子: class Eye{public: Draw(){}};class Mouse{public: Draw(){}};class Nose{public: Draw(){}};     我们

2006-04-17 20:18:00

乱砍设计模式之十

COMMAND 模式——诸葛亮造木牛流马 junguo     Command模式,中文名称是命令模式。该模式的目的是将不同的请求封装成不同的对象,这样可以用来做请求队列,请求日志,以及撤销的操作。该模式的核心是把请求封装成对象,这里的请求有些不好理解,我们还是看完例子后再说这个。先看例子。      这次没找到太好的例子,只好把木牛流马改造一下来说明我们的例子。《三国演义》上介绍诸葛亮造过这样的

2006-04-17 20:16:00

乱砍设计模式之八

BRIDGE模式 —— 所谓伊人,在水一方 junguo     Bridge模式的中文名称是桥接模式,该模式的目的是将抽象部分和它的实现部分分离,使它们都可以独立的变化。继续以例子来完成对该模式的学习。     蒹葭苍苍,白露为霜。所谓伊人,在水一方。      溯洄从之,道阻且长。溯游从之,宛在水中央。           蒹葭凄凄,白露未晞。所谓伊人,在水之湄。      溯洄从之,道阻且济

2006-04-13 23:06:00

抽象工厂的例子

抽象工厂没有讲明白,这里填加一个比较完整的例子.我觉得明白了抽象工厂目标是通过一个抽象工厂的子类来建立一系列同一性质的产品这点,就理解该模式了.#include #include using namespace std;class General{public: virtual void Assault() = 0;};class GirlGeneral : public Genera

2006-04-12 21:55:00

乱砍设计模式之七

VISITOR模式 —— 齐天大圣闹天宫 junguo     Visitor模式的中文名称是访问者模式,该模式的目的是提供一个类来操作其它类型中的对象结构中的元素(也就是专门帮助其它类来实现原本属于它的函数)。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。是不是不明白这段话的意思?没关系,还是通过例子来理解该模式。我们先来简述一下例子。      呵呵,好不容易想到这么个土的掉渣

2006-04-12 20:37:00

乱砍设计模式之六

OBSERVER 及 ITERATOR 模式 —— 知我者谓我心忧,不知我者谓我何求 junguo     Observer模式的中文译名是观察者模式,定义是:定义对象间一种一对多的关系,当一个对象的状态发生变化时,所有依赖它的对象都得到通知并被自动更新。COM中的连接点事实上就是一种观察者模式,COM中的连接点主要是为过程化语言提供的,如果我们使用C++调用COM组件,那么我们可以直接利用回调函

2006-04-10 22:29:00

乱砍设计模式之五

FACTORY 与 ABSTRACT FACTORY模式 —— 号令秦姬驱赵女,艳李秾桃临战场 junguo     这一次,将集中讲一下创建型模式,主要以Factory和Abstract Factory模式为主。按上次的惯例,还是以例子开始。这次的例子仍以战场和美女为例,呵呵,和战场及美女死磕上了。采用这样的例子,只是想帮助大家更好的记忆,我最简化自己的例子,以帮助大家认识模式之形。写完这个系列

2006-04-09 04:45:00

乱砍设计模式之四

COMPOSITE与BUILDER模式 —— 忠义堂石碣受天文 梁山泊英雄排座次junguo     Composite模式的中文名字是组合模式,该模式的目的是使单个对象和它的对象组合(一般是数组或者链表的结构)拥有统一的操作方式,这样可以简化客户的使用。我们还是通过具体的例子来理解该模式。还是先来一段例子背景介绍:      话说,宋江带人攻陷东平东昌两郡,收降了双枪将董平和没羽箭张清,而后皇甫

2006-04-08 02:11:00

乱砍设计模式之三

DECORATOR模式———小轩窗,正梳妆junguo    DECORATOR中文的意思是装饰,该模式的动机是帮助对象动态的添加一些功能。它强调是为对象而不是为类添加功能。为类添加功能最有效的方式是通过继承来实现,但继承的缺点是不够灵活。下面我们还是通过例子来理解该模式。     十年生死两茫茫,不思量,自难忘。     千里孤坟,无处话凄凉。     纵使相逢应不识,尘满面,鬓如霜。     

2006-04-06 00:59:00

理解COM套间

放http://www.vckbase.com/document/viewdoc/?id=1597这边了,懒的搬过来了,还的上传图片。

2006-04-02 15:13:00

乱砍设计模式之一

STRATEGY模式———赵子龙单骑救主junguo    STRATEGY在中文中被译成了策略,我感觉这个意思并不妥切,但翻英文词典能得到的翻译也只有这个,我的词典比较简单,不知道是否还有其它意思?如果没有,那么我想可能和中国研制的CPU在研发阶段被定名为“狗剩”一样,它只是一个名字而已,并不能确切的代表真实的意义。经典著作《设计模式》中将策略模式定义为:定义一系列的算法,把它们一个个的封装起来

2006-04-02 07:53:00

乱砍设计模式之二

STATE模式———履胡之肠涉胡血,悬胡青天上,埋胡紫塞旁。junguo    STATE模式的中文名称是状态模式。在《设计模式》一书中的定义是:允许一个对象在其内部状态改变的时候改变它的行为。对象看起来似乎修改了它的类(中文译书上的原话,不过我觉得这句话应该翻译成——对象显现出来的是改变了它所属的类)。看了定义还是感觉有些抽象,好的,我们还是通过一个例子来学习该模式。还是先从情节设计开始:

2006-04-02 07:43:00

乱砍设计模式之零——序

 乱砍设计模式之零——序  作者junguo        有时候想知道偶然会为人生带来什么样的意义?作为一个怀疑论者,我对人生充满了疑虑,对于偶然所起的作用也不是那么确定。但还是可以总结一些自己并不确定的结论。大学期间,成天旷课的我,那天偶然上了一堂软件工程课(我不是计算机专业的,我们开这堂课本身就有些古怪)。那天老师不知道是一时兴起,还是早有准备,在下课前他在黑板上

2006-04-02 05:29:00

虚函数在内存中的结构

                                                                这段日子面试了两次有关C++的工作,面试过程中都遇到了有关虚拟函数的问题。第一次遇到该问题的时候,我只能说出虚拟函数的用法,但具体在内存中的排布就不知道了。面试完之后,马上到书店找了一本《inside the c++ object model》,由于没有找

2005-04-30 15:14:00
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!