CPU的亲和性, 就是进程要在指定的 CPU 上尽量长时间地运行而不被迁移到其他处理器,亲和性是从affinity翻译过来的,应该有点不准确,给人的感觉是亲和性就是有倾向的意思,而实际上是倒向的意思,称为CPU关联性更好,程序员的土话就是绑定CPU,绑核。 在多核运行的机器上,每个CPU本身自己会有缓存,缓存着进程使用...

标题党,名字起的很大,就是目前我自己的知识管理框架。 首先是获取知识,之前我是用google reader的,可惜他被google抛弃了,后面测试了一下feedly,网站非常不稳定,iphone客户端直接提示服务器压力大导致崩溃,还好有reeder,可以连接到feedly的api获取信息,至少主要应用场景移动端问题解决了。顺便插嘴一下对RSS...

接上篇Linux内核读文件流程,写这篇Linux内核写文件流程。文中涉及的内核代码版本是linux内核版本号:3.0.13-0.27 sles11sp2版本。 用户态write函数到内核态的调用是: [crayon-5d823fd982c59517938491/] SYSCALL_DEFINE3调用的vfs_write,vfs_write调用rw_verify_area检查当前是否有写权限,然后调用虚拟文件系统...

主要描述从用户态启动文件读开始,直到磁盘驱动,linux内核代码所走过的流程。阅读者需要对linux内核的内存管理、ext系列的文件系统,块设备,页高速缓存等有一定了解,不了解也没关系,顺着代码读可能会吃力点而已,鉴于不可能将代码全贴出来,中间缺失的部分,请大家自行脑补吧。至于写文章的原因,作为一名高效的客服...

之前大二的时候在blogger.com上面混过,后来被墙后,转战到yo2,然后它也挂了,恰好也进入了苦B的工作期,后来想把博客迁到庙(miao.in)里面去,还没来的及行动,就看到了新浪的云计算业务出来了(吐槽阿里云坐拥众淘宝商户按硬件计费,更像卖主机的,盛大更是连你的数据都是可以丢的),然后便把博客迁过去,但是感觉速...

在机器学习和数据挖掘领域里,决策树是一种有效的归纳推理算法之一,它将训练样本抽象出多个特征函数,通过离散值的函数输出归纳成一个决策树,由于是有训练样本统计而来,它对样本噪声有一定的健壮性。 一、什么是决策树   直接看图说话: 一个母亲给女儿介绍相亲对象,女孩见不见呢?(图片剽窃自Coding...

看内核代码内存部分时有红黑树的利用,顺便翻了一下经典的排序算法,比较笨的算法如插入排序、冒泡排序的时间复杂度到了θ(N^2)的程度,但诸如堆排序、归并排序和快速排序的复杂度优化到了θ(NlogN)的程度,其中快排成为均匀杂序里面最快的实践算法,自我YY想着排序算法难道不能优化了?一查阅果真如此:基于比较排序的一...

跳表SkipList,顾名思义是链表的一种,或者说它是单链表的变异实现,使用跳表可以将查询操作的复杂度控制到θ(lg N),而普通的链表只能通过顺序查找,复杂度为θ(N),如此跳表的优势就很明显了,虽然它是通过以空间换时间搞定的。 先看一下普通的有序单链表: 要在里面查找一个值就需要顺序比较,复杂度大家都清...

gdb主要功能的实现依赖于一个系统函数ptrace,通过man手册可以了解到,ptrace可以让父进程观察和控制其子进程的检查、执行,改变其寄存器和内存的内容,主要应用于打断点(也是gdb的主要功能)和打印系统调用轨迹。 一、ptrace函数 函数原型如下: [crayon-5d823fd984448424276923/] ptrace系统调用的request主要...

shell中有很多命令适合对文本进行编辑,如grep,cut,sed,awk等,命令有很多,但没有哪个命令可以方便的通吃天下,而且由于shell命令的独特用法,用后即忘,现在记载于此,方便日后查询。 一、行操作 1.显示文件内容前10行 [crayon-5d823fd9846e7757220087/] 2.显示文件内容后10行 [crayon-5d823fd9846ee66090...