随笔-98  评论-12  文章-0 
  2017年4月20日
摘要: 除spinlock外,linux 内核还有一个自旋锁,名为arch_rwlock_t。它的头文件是qrwlock.h,包含在spinlock.h,头文件中对它全称为"Queue read/write lock"。这个锁只使用了两个成员变量就实现了读写锁。一个spinlock,以及一个整形锁变量。而s阅读全文
posted @ 2017-04-20 20:24 bbqz007 阅读(4) 评论(0) 编辑
  2017年4月18日
摘要: 1.设计。2.实现。3.内联和非内联实现的区别。4.官方的设计文档给出的注意点。阅读全文
posted @ 2017-04-18 20:17 bbqz007 阅读(1) 评论(0) 编辑
  2017年4月14日
摘要: ACE框架常用的同步机制设计成统一的原语接口。同步原语使用系统平台(操作系统,多线程库)提供的同步原语,并为系统平台不提供的同步原语提供模拟实现。ACE框架使用了外观模式和适配器分两层,将同步原语统一接口。 在外观包装层,ACE框架为每种同步原语将系统平台不同的同步原语函数统一成一致的函数接口集,并阅读全文
posted @ 2017-04-14 20:43 bbqz007 阅读(0) 评论(0) 编辑
  2017年4月13日
摘要: ACE框架将基于共享内存的进程间通讯功能,如其它IO组件或IPC组件一样,设计成三个组件。流操作组件ACE_MEM_Stream,连接器组件ACE_MEM_Connector,以及接收连接组件ACE_MEM_Accpter。ACE框架为基于共享内存的进程间通讯提供了两种数据传输(分发deliver)阅读全文
posted @ 2017-04-13 20:18 bbqz007 阅读(1) 评论(0) 编辑
摘要: 继承上一篇《ACE框架 基于共享内存的分配器设计》,本篇分析算法部分的设计。 ACE_Malloc_T模板定义了这样一个分配器组件 分配器组件聚合了三个功能组件:同步组件ACE_LOCK,内存块管理算法组件ACE_CB, 以及内存底层服务组件ACE_MEM_POOL_1。 内存底层服务组件ACE_M阅读全文
posted @ 2017-04-13 16:28 bbqz007 阅读(0) 评论(0) 编辑
  2017年4月11日
摘要: ACE框架提供了一个内存分配器模板,并且提供了(仅且)一个模板实例,基于共存内存的内存分配器。这个共存内存分配器模板实例在ACE框架应用于,基于内存映射的进程通讯,以及进程间同步等。 ACE内存分配器模板ACE_Malloc_T定义了这样一个分配器,它使用了三个组件,同步锁<ACE_LOCK>,内存阅读全文
posted @ 2017-04-11 19:45 bbqz007 阅读(2) 评论(0) 编辑
摘要: TCP连接流程是TCP协议的一部分,需要经过三次握手。而connected datagram虽然使用了socket的同样的函数connect,但是UDP协议并不包含连接流程,也就是UDP实际上并没有真正和远端通过一定的协议流程就直接建立起我们所谓的连接,或者简单地说,指定了一个默认的外出口。 TCP阅读全文
posted @ 2017-04-11 19:45 bbqz007 阅读(3) 评论(0) 编辑
  2017年4月7日
摘要: 一说起Leader/Followers并发模式,都会与Half-Async/Half-Sync并发模式进行比较,说LF模式更加高性能,成了一个高性能名词标签 符号,相反HA/HS仿佛成了一个低性能的名词标签,如果你的线程池不使用LF模式就谈论不上高效,要是你还在使用HA/HS模式,马上笼 统地建议换阅读全文
posted @ 2017-04-07 18:48 bbqz007 阅读(3) 评论(0) 编辑
  2017年4月6日
摘要: ThreadPool提供Reactor/Proactor服务,并且强偶合了Reactor(反应器)/Proactor(前摄器)。不同于Reactor/Proactor使用线程池 进行事件处理的设计。如ACE框架的ACE_TP_Reactor。同时ThreadPool提供一个共享的工作分派队列,可以用阅读全文
posted @ 2017-04-06 20:19 bbqz007 阅读(3) 评论(0) 编辑
  2017年3月30日
摘要: 在官方文档中称为Binding,协议-地址对的绑定。在Proxy模式中,一般地有三个参与者,Proxy,Subject以及RealSubject。Subject定义了Proxy(代理)和RealSubject(实体)的公 共接口,Proxy包含一个对RealSubject的引用,客户通过调用Prox阅读全文
posted @ 2017-03-30 18:43 bbqz007 阅读(4) 评论(0) 编辑