码迷,mamicode.com
首页 >  
搜索关键字:slab    ( 162个结果
glusterfs4.0.1 mempool 分析笔记
关于3.2.5版本分析,详见《GlusterFS之内存池(mem-pool)实现原理及代码详解》 此4.0.1版本内存池与版本3中的描述变化有点大,总的原理还是类似LINUX中的SLAB算法,定义一系列大小类型的池子, 1. 一共定义了15个池,每个池子大小都是依次幂级数增长的 结构体 mem_po ...
分类:其他好文   时间:2018-04-15 21:04:37    阅读次数:271
Redis 与 Memcached 的一些区别
1、数据结构 Memccached 只支持key-value类型 Reids 支持 String hash list set sortedSet,内部都是通过ReidsObject来表示 2、内存管理 Memcached 使用的是Slab allocation机制,将内存划分为不同大小的块,在操作时 ...
分类:系统相关   时间:2018-04-04 21:03:14    阅读次数:192
I/O复用:select poll epoll相关问题
select: poll: epoll: 1.实现了epoll自己的文件结构eventpoll和epitem,在初始化时(操作系统启动时)分配相应的缓存,使用slab分配内存。epoll_creat返回的为新的文件描述符(仅epoll可用),可以通过file->private_data得到。 2.高 ...
分类:其他好文   时间:2018-03-02 14:51:39    阅读次数:126
Linux内存管理中的slab分配器
Linux内核中基于伙伴算法实现的分区页框分配器适合大块内存的请求,它所分配的内存区是以页框为基本单位的。对于内核中小块连续内存的请求,比如说几个字节或者几百个字节,如果依然分配一个页框来来满足该请求,那么这很明显就是一种浪费,即产生内部碎片(internal fragmentation) 为了解决 ...
分类:系统相关   时间:2018-02-28 12:57:00    阅读次数:244
伙伴算法的实现-分配页框
内核中alloc_pages系列页框分配函数都是基于伙伴算法实现的,这些函数最终都会调用伙伴算法的入口函数buffered_rmqueue()。 Linux内核管理物理内存有三种方式,其一就是经典的伙伴算法。但是伙伴算法分配物理内存的基本单位是页框,因此内核又引入了slab机制,基于此机制实现的物理 ...
分类:编程语言   时间:2018-02-28 12:54:04    阅读次数:263
Kmalloc和Vmalloc的区别
kmalloc()和vmalloc()介绍kmalloc()用于申请较小的、连续的物理内存1. 以字节为单位进行分配,在<linux/slab.h>中2. void *kmalloc(size_t size, int flags) 分配的内存物理地址上连续,虚拟地址上自然连续3. gfp_mask标 ...
分类:其他好文   时间:2018-02-12 18:51:24    阅读次数:169
理解Linux内核之中断保存与恢复
在Linux内核中(linux-4.14.12/mm/slab.c#3389), 乍一看下边的代码,貌似L3389有bug,于是我就绕偶兴趣地阅读了一下local_irq_save/local_irq_restore的源代码。 在L3380和L3389中, 如果local_irq_save()是一个 ...
分类:系统相关   时间:2018-02-06 14:16:09    阅读次数:278
Memcached原理
Memcached介绍Memcached是国外社区网站LiveJournal团队开发,目的是为了通过缓存数据库查询结果,减少数据库访问次数,从而提高动态web站点性能。官方站点?http://www.memcached.org/数据结构简单(k-v),数据存放在内存里多线程基于c/s架构,协议简单基于libevent的事件处理自主内存存储处理(slab allowcation)数据过期方
分类:系统相关   时间:2018-02-01 00:25:53    阅读次数:227
Linux 字符驱动
char_driver.c 1 #include <linux/module.h> 2 #include <linux/slab.h> //kmalloc 3 #include <linux/cdev.h> //cdev 4 #include <linux/fs.h> //register_chrd ...
分类:系统相关   时间:2017-11-22 22:05:18    阅读次数:300
memcached源码分析-----slab内存分配器
温馨提示:本文用到了一些可以在启动memcached设置的全局变量。关于这些全局变量的含义可以参考《memcached启动参数详解》。对于这些全局变量,处理方式就像《如何阅读memcached源代码》所说的那样直接取其默认值。 slab内存池分配器: slab简介: memcached使用了一个叫s ...
分类:系统相关   时间:2017-11-17 00:03:22    阅读次数:267
162条   上一页 1 2 3 4 5 6 ... 17 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!