Galex

Author: Galex (page 1 of 4)

zsmalloc分配器源码分析

背景

在内核中,slab分配器用于分配较小块内存,它将多个相同大小的对象放在同一个内存页中,但这些对象可能不能正好占满整个内存页,从而产生碎片造成浪费,于是内核尝试为对象分配多个物理连续内存页从而使碎片尽可能小,但在低内存设备上要分配多个连续内存页可能十分困难,特别在系统运行较长时间后,这变得几乎[......]

Read more

自定义Android系统级权限组

Android安全模型基于Linux的权限管理,使用沙箱隔离机制将每个应用的进程资源隔离。Android应用程序在安装时赋予一个UID,UID不同的应用程序完全隔离。
另一方面,应用如果想使用某种服务,需要在AndroidManifest.xml中申请。比如,想使用网络的话,需要在AndroidM[......]

Read more

在Android 4.4.2上使用fuse开发自己的文件系统

有关fuse的介绍和下载可以访问http://fuse.sourceforge.net查看。本文主要介绍如下将fuse移植到Android 4.4.2,并开发一个简单的文件系统。

本文中使用的fuse是2.9.3版本,可以从sourceforge.net/projects/fuse/files[......]

Read more

约瑟夫环问题

约瑟夫环问题应该是都熟悉的,传说著名犹太历史学家夫拉维·约瑟夫在犹太罗马战争期间,约瑟夫和其他40名犹太反抗者被困在了罗马人包围的洞穴。这些犹太人宁可自杀也不愿当俘虏,于是决定围成一个圆圈,并沿着圆圈每隔两个人杀死一个,直到最后只剩两个人为止。约瑟夫和他的一个朋友不想自杀,于是他计算出他和他[......]

Read more

Linux内核中使用红黑树的扩展特性实现区间树(Interval tree)

阅读3.0版本以后的内核源代码就会发现,新版本内核中的红黑树的实现与之前有所不同。新的实现提供了增强特性,用户可以在红黑树结点中符加一些数据结构来提供更多的功能。区间树就是一种增强型的红黑树。《算法导论》中有关于区间树详细的介绍。下图是取自《算法导论》的一棵区间树:

区间树

Linux内核中[......]

Read more

LVS扫盲–工作模式与调度策略

基于LVS的服务器集群主要由两部分组成,即负载调度器(Load Balancer,简称LB)和真正提供服务的服务器(Real Server,简称RS)。RS对外是不可见的,用户需要通过访问LB来获得服务,所以LB也称为虚拟服务器(Virtual Server),它对外公开的IP称为VIP(Virtu[......]

Read more

在 Linux Kernel 3.10 上安装 BLCR 0.8.5

BLCR官网上称0.8.5版本可以支持3.7的Kernel。因为3.10版本的Kernel一些接口有所改变,BLCR的 Kernel module 无法编译程序,某些地方需要修改。

1.执行过 configure 后 make会首先出现如下错误信息:
[crayon-5a3518add4c2[......]

Read more

Older posts

Copyright © 2017 Galex

署名-非商业性使用-禁止演绎 3.0 | Creative Commons BY-NC-ND 3.0