读书笔记
iteye_1222
这个作者很懒,什么都没留下…
展开
-
Ruby 2.1 GC策略
对象管理主要涉及:Profiling support增加了hook用于状态获取专用API分代式GC引入原创 2014-01-23 11:30:54 · 261 阅读 · 0 评论 -
深入理解计算机系统-程序链接
链接就是将不同部分的代码和数据手机和组合成为一个单一文件的过程,这个文件可被加载到存储器并执行。链接过程可以在如下时间执行:编译时:在源代码翻译成机器代码时加载时:程序被加载器加载到存储器并执行时运行时:由应用程序去完成这个工作,OS提供系统调用接口静态链接以一组可重定位目标文件和命令行参数作为输入,生成一个完全链接的可以加载和运行的可执行目标文件作为输出。输入的...原创 2012-04-13 19:51:34 · 205 阅读 · 0 评论 -
深入理解计算机系统--测量程序执行时间
理论基础在进行系统时间获取并用于程序性能分析时,我们需要考虑精确而有效的时间获取方法。 在《深入理解计算机系统》这本书中谈到,目前进行时间测量的系统接口和方法有两种: 通过间隔计数的方法: OS维护着每个进程使用的用户时间量和系统时间量的计数值,当计时器中断发生时,OS会确定哪个进程是活动的,并且对那个进程的一个计数值增加计时器间隔时间。这时会根据进程...2012-04-14 15:57:36 · 215 阅读 · 0 评论 -
系统性分析性能问题与调优方法
http://www.infoq.com/cn/news/2012/07/systematic-analysis-performance 对于定位系统性能瓶颈,作者从两个方面进行介绍:查看操作系统负载:看CPU使用量,看IO大小,看网络带宽使用情况;利用性能测试工具Profiler测试,定位程序中的问题;另外,作者提到:“对于性能测试,不同的Throughput会出现...原创 2012-07-30 13:40:16 · 85 阅读 · 0 评论 -
为什么说“半封闭式”的互联网社交环境更适合中国人?
http://www.alibuybuy.com/posts/75069.html 信息,有个很有意思的特征:一旦它具体了、和实际沾边了、不是空话了,价值就出来了。原创 2012-07-30 13:47:21 · 122 阅读 · 0 评论 -
UML 时序图 基于文本描述的生成工具
http://sourceforge.net/projects/sdedit/?source=directory原创 2012-08-22 12:53:08 · 249 阅读 · 0 评论 -
Vim Gtags再学习
发现最近自己的技艺提升很慢,一方面是工作的事情很多,更主要的一方面是自己最近缺少必要的总结。 特别是最近需要对系统更加深入的学习和理解,所以繁琐的文件查找和目录切换消耗的大量精力,工具使用不佳是个主要问题,现重读gtags.vim。 Vim中Gtags操作的标注格式是: :Gtags [option] patternfunction: :Gtags func<...原创 2012-04-27 20:27:21 · 345 阅读 · 0 评论 -
Git pro 读书笔记
Git基础要点:直接快照,而非比较差异。数据的本地化,有本地库支持基于快照,所以保持了数据完整性多数操作仅为添加数据三种状态来回切换:工作态(modified,new file)、暂存态(staged)、入库态(committed)基本操作:取得仓库git initgit clone git://xxxxx/xxx.git记录每次更新到仓库...原创 2012-05-19 15:30:36 · 247 阅读 · 0 评论 -
机器指令clz的C实现
clz:查找一个数据x前置0的个数。 /** * 二分查找1的位置 */int clzInC(unsigned int x){ if (!x) return 32; int e = 31; //1111 1111 1111 1111 0000 0000 0000 0000 if (x&0xFFFF0000) { e -=16; x >...原创 2012-05-31 11:44:45 · 1496 阅读 · 0 评论 -
深入理解计算机系统--异常控制流
异常控制流(ECF:Exceptional Control Flow)在计算机系统中的意义: ECF 是OS用来实现 I/O(异步、同步IO)、进程(进程切换,多任务系统支持)和虚拟存储器(VSS)的基本机制。APP通过使用一种叫做陷阱(trap)或者系统调用(System call)的ECF,向OS请求服务。为APP交互提供了更多渠道:信号为编程语言提供了软件层面的异常...2012-04-13 14:30:28 · 120 阅读 · 0 评论 -
汇编语言学习 操作数指示符
以下为读书笔记,摘抄自《深入理解计算机系统》 汇编程序为程序员提供了更多处理器状态:程序计数器:将要执行的下一条指令在存储器中的地址 %eip整数寄存器堆:8个32位的寄存器条件码寄存器:记录控制流状态(if,while)等浮点寄存器堆: 8个32位寄存器访问信息:整数寄存器堆的八个寄存器:%eax, %ecx, %edx, %ebx, %esi, %edi...原创 2012-04-11 13:12:16 · 328 阅读 · 0 评论 -
《程序员修炼之道》快速参考
快速参考列表1.关心你的技艺Care About Your Craft如果你不在乎能否漂亮地开发出软件,你又为何要耗费生命去开发软件呢?2.思考!你的工作Think! About Your Work关掉自动驾驶仪,接管操作。不断地批评和评估你的工作。3.提供各种选择,不要找蹩脚的借口Provide Options, Don't Make Lame Excuses...原创 2011-02-09 00:50:23 · 96 阅读 · 0 评论 -
动态内存管理学习
这方面的资料非常丰富,先准备看看下面这些东西。 入门级导读: 内存管理内幕具体解决方案文章:dlmalloc这个可以在网上找到很多,可以结合ptmalloc学习ptmalloc2源码分析LLVM -> vmkit -> MMTk(GC)理论文章:《垃圾收集》上面就足够学习很长时间了,先列上来慢慢...2012-07-13 14:16:14 · 80 阅读 · 0 评论 -
算法导论:散列表
http://blog.chinaunix.net/uid-26822401-id-3169705.html原创 2012-07-14 16:33:15 · 86 阅读 · 0 评论 -
Dave Hendricksen谈软件架构师的沟通原则
http://www.infoq.com/cn/news/2012/07/architect-communication原创 2012-07-14 16:34:04 · 82 阅读 · 0 评论 -
Java Annotation入门
Java Annotation入门http://www.blogjava.net/hopeshared/archive/2006/04/03/38919.html原创 2012-07-14 16:37:01 · 60 阅读 · 0 评论 -
GCC编程四个过程:预处理-编译-汇编-链接
http://apps.hi.baidu.com/share/detail/31636179原创 2012-07-24 18:31:42 · 79 阅读 · 0 评论 -
数据存储和表示
http://code.google.com/p/qjg-wiki/wiki/ItTechnicalLanguageDatarepresentation原创 2012-07-24 18:32:36 · 84 阅读 · 0 评论 -
周鸿袆: 教您打造十页完美商业计划书
第一,用几句话清楚说明你发现目前市场中存在一个什么空白点,或者存在一个什么问题,以及这个问题有多严重,几句话就够了。很多人写了三百张纸,抄上一些报告。投资人天天看这个,还需要你教育他吗?比如,现在网游市场里盗号严重,你有一个产品能解决这个问题,只需要一句话说清楚就可以。寻找市场需求,要求我们在平常的生活和工作中,及时总结发现问题。第二,你有什么样的解决方案,或者什么样的产品,能够解决这个问...原创 2011-11-25 11:32:26 · 291 阅读 · 0 评论 -
学习Bit Twiddling Hacks
翻译http://graphics.stanford.edu/~seander/bithacks.html原创 2012-05-31 11:52:08 · 117 阅读 · 0 评论 -
Linux Arm GNU Compiler 语法小结
以下分析及总结结果并未进行运行确认。 任何汇编行都是如下结构:[:] [} @ comment[:] [} @ 注释Linux ARM 汇编中,任何以冒号结尾的标识符都被认为是一个标号,而不一定非要在一行的开始。标号只能由a~z,A~Z,0~9,“.”,_等字符组成。当标号为0~9的数字时为局部标号,局部标号可以重复出现,使用方法如下: 标号f: 在引用的地方向前...原创 2012-05-31 20:50:53 · 116 阅读 · 0 评论 -
Linux pthread线程同步相关的API学习
原因最近在深入理解Dalvik虚拟机的内部线程控制体系,其中涉及大量pthread的相关操作,现在统一浏览一下。 #includegcc -lpthread xxx.c -o xxx.out主要API:标识int pthread_equal(pthread_t tid1, pthread_t tid2);//若相等则返回非0值,否则返回0pthread_t pthr...原创 2012-11-12 18:43:12 · 154 阅读 · 0 评论 -
global + Ruby
http://simple-and-basic.com/2008/10/using-rtags-ang-gtags-for-coding-ruby.html common:\ :skip=GPATH,GTAGS,GRTAGS,GSYMS,HTML/,HTML.pub/,html/,tags,TAGS,ID,y.tab.c,y.tab.h,.notfunction,csco...原创 2012-11-16 13:07:43 · 145 阅读 · 0 评论 -
Android root 原理学习
学习资源: http://www.zhihu.com/question/21074979 Android的root安全机制主要涉及的是Linux的安全机制。其主要原理涉及:SUID: 拥有该权限的程序,在程序调用过程中,程序的运行权限会自动升级到root。su: 运行后进入superuser状态。在Android系统中,su运行是依赖于调用者的权限状态;如果是非root用...原创 2013-12-15 23:51:32 · 154 阅读 · 0 评论 -
用Markdown做文档的问题
一直有想一种语言能够解决文档编写问题。 一般文档编写的需求:普通文档README等代码附带文档PPT文章学术相关:论文,书籍上述文档,因其需要使用到的领域不同,没有一个工具可以兼顾语法简明性、编写简单、纯文本可读、表意丰富等特点。原本希望找到一个通用的工具,看样子是不可能了。这方面寻求高手指导。 目前的组合解决方案如下:普通文档: Markdow...2013-12-23 18:06:00 · 161 阅读 · 0 评论 -
Ruby 动态特性鉴赏
以下代码与代码学习来自<Ruby Best Practives>,主要描述了一幅生动的Ruby语言动态特性使用场景。#!/usr/bin/env ruby## encoding: utf-8## Base module NativeCampingRoutesmodule NativeCampingRoutes # This is a con...2013-12-26 16:47:16 · 155 阅读 · 0 评论 -
系统模块集成管理与版本控制学习
论软件生命周期集成 http://www.infoq.com/cn/articles/SDL-Integration软件交付串联了多个独立的过程,而不仅仅是一个单一的集成过程。不相关联的专业越来越精简,但不太精益端到端的报告及其可追溯性仍然是一个梦想软件交付业务流程需要自动化软件交付的工作流应该从建立开始到实施结束分析和报告至关重要软件生命周期的整合将“L”置于应用...原创 2013-12-27 12:01:56 · 158 阅读 · 0 评论 -
函数式编程 读后感
一篇比较不错的文章: http://coolshell.cn/articles/10822.html 以使用Erlang的感觉看, 其具有很多函数式编程的优点与多线程支持的好处. 函数式编程主要具有如下特性:所有都可以转变成函数赋值后的变量在解释器层面具有不可变性尾递归优化主要技术:Map & ReducePipeline递归...2013-12-30 15:24:08 · 135 阅读 · 0 评论 -
Google 持续集成介绍
见附件PPT. 具体方案构建描述依赖分析增量构建Build in Cloud全新的构建体系:* 确定性 (deterministic, hermetic)** 同样的输入和动作,一定要产生同样的输出** 各种优化才有可能*** 增量构建,并行构建,缓存* 和Makefile相比:** 构建描述分布到每个package** 每个rule描...2014-01-23 11:26:43 · 225 阅读 · 0 评论 -
MMTk代码学习(系统结构与流程)
MMTk的整体结构和驱动模型主要由Plan, CollectorContext, MutatorContext, Phase组成:Plan 全局模块,初始化用的主要接口CollectorContext 线程级内存分配接口,独立GC线程 收集?MutatorContext 全局内存分配 赋值?Plan基本常量管理各种space初始化:immortal:Imm...2012-11-06 19:08:41 · 694 阅读 · 0 评论 -
MMTk代码学习(RVM接口)
前导MMTk被RVM整个封装在后端,主要调用接口是 org.jikesrvm.mm.mminterface.MemoryManager主要接口初始化bootpostBootenableCollectioncollectionEnabledfullyBootedVMprocessCommandLineArg写栅栏modifyCheck统计数据...2012-11-06 14:52:00 · 776 阅读 · 0 评论 -
内存管理内幕阅读笔记
http://www.ibm.com/developerworks/cn/linux/l-memory/ 基于 UNIX 的系统有两个可映射到附加内存中的基本系统调用:brk: brk() 是一个非常简单的系统调用。 还记得系统中断点吗?该位置是进程映射的内存边界。 brk() 只是简单地 将这个位置向前或者向后移动,就可以向进程添加内存或者从进程取走内存。mmap: m...原创 2013-09-02 16:17:12 · 119 阅读 · 0 评论 -
JavaScript V8 引擎相关资料
V8 Javascript engine之所以快针对上下文的Snapshot技术Built-in的js代码建立AST(Abstract SyntaxTree)时内存的管理CompileCache避免相同代码重复编译属性的快速访问(hiden class)Inline caching减少函数调用开销一次性编译生成机器语言V8系列——内存管理分代...原创 2012-10-25 14:54:32 · 179 阅读 · 0 评论 -
MMTk特性认识
整体介绍MMTk是一个内存管理的工具包,同时也是jikes虚拟机的内存管理模块。其内部实现了多种策略的垃圾回收机制,用于进行配置使用。主要模块Plans对外的整体接口:虚拟内存的布局,初始空间的产生与管理内存分配垃圾回收内存使用统计针对多核的设计考虑:线程内内存与全局内存(Thread-local-heap)线程同步缓存失效栅栏...原创 2012-10-25 16:24:53 · 876 阅读 · 0 评论 -
手机设备操作系统架构图整理
整体分析材料Android,ChromeOS, WebOS: http://hi.baidu.com/sangwf/item/0e3161238d5fe28e6f2cc337WebOS: http://my.oschina.net/zjhe223/blog/13070iOS: http://blog.csdn.net/cloudhsu/article/details/5795993...原创 2012-10-28 10:28:42 · 1373 阅读 · 0 评论 -
Memory Analysis Tool 使用相关材料整理
利用MAT分析问题从转储(Dump)文件中调试并除错 MAT IBM官方文档Hprof格式利用MAT分析Android应用内存泄露主要用途预先定义的query对象的根节点ClassloadersFinalizer对象线程及调用栈集合类使用泄漏定位支配节点 ...原创 2012-10-28 10:47:02 · 109 阅读 · 0 评论 -
Memory Analysis Tool OQL 用例汇总及语法学习
典型用例获取所有对象:SELECT * FROM ${snapshot}.getClasses()SELECT * FROM (SELECT * FROM java.lang.Class)获取所有java.lang.Thread的对象及子对象:SELECT * FROM INSTANCEOF java.lang.Thread获取Thread的对象的引用,用于引用链...2012-10-28 16:36:52 · 447 阅读 · 0 评论 -
嵌入式Java虚拟机 GC特性一览
嵌入式Java虚拟机列表来源:http://en.wikipedia.org/wiki/List_of_Java_virtual_machinesApogee 增量MarkSweep GC,用于可控制的GC时间等参数(RTGC)JBed VM Real Time GCJamaicaVM RTGCMicroJVM RTGCPERC RTGCPreo...原创 2012-10-31 15:53:12 · 203 阅读 · 0 评论 -
MMTk代码学习(整体结构)
必要的整体模块对于一个完整的内存管理工具,主要涉及:内存映射(Address)内存组织结构(Resource,Page)基于内存结构的策略:分配、回收(Alloc, Collect)内存跟踪(Trace, Log)对应到MMTk的具体模块系统结构Plan CollectorContext, MutatorContext 上下文环境所有colle...2012-11-05 17:03:34 · 669 阅读 · 0 评论 -
浏览<Pragmatic Thinking and Learning:Refactor Your “Wetware”>笔记
读的匆忙,还需再学习。 很多东西现在还不能够完全理解,作为一个学生,很多Context问题都被自己放在脑后,不少事情不能够跟作者产生共鸣,实属遗憾。以后需要再读、再看,以提高自己的认识、深化自己的修行。 ...2011-02-09 00:45:19 · 96 阅读 · 0 评论