linux中页缓冲和块缓冲之概念

页缓冲在《linux内核情景分析》一书的第5.6节文件的写与读一章中说明的很详细,这里摘抄下来; 在文件系统层中有三隔主要的数据结构,file结构、dentry结构和inode结构; file结构:代表目标文件的一个上下文,不同进程可以在同一文件上建立不同的上下文,而且同一进程也可以通过打开一个文...

2016-04-27 22:41:01

阅读数:4705

评论数:0

linux内存管理--实际分配函数 buffered_rmqueue

不管是快速分配还是慢速分配,实际分配内存的都是 buffered_rmqueue()函数,其他的都是在选择从哪个地方来分配比较合适; 还是先来说说各个参数: struct zone *preferred_zone 表示分配所能接受的最大zone类型 struct zone *zone  表示就在该...

2016-04-27 22:39:41

阅读数:4506

评论数:0

linux内存管理--slab

struct kmem_cache * kmem_cache_create(const char *name, size_t size, size_t align, unsigned long flags, void (*ctor)(void *)) { return...

2016-04-27 22:38:26

阅读数:3751

评论数:0

linux内存管理--高端内存映射

void *kmap(struct page *page) { might_sleep(); if (!PageHighMem(page)) return page_address(page); return kmap_high(page); } /...

2016-04-27 22:30:03

阅读数:626

评论数:0

linux内存管理--vmalloc

/** * vmalloc - allocate virtually contiguous memory * @size: allocation size * Allocate enough pages to cover @size from the page level...

2016-04-27 22:29:10

阅读数:3684

评论数:0

linux内存管理--慢速分配内存页 __alloc_pages_slowpath

page = __alloc_pages_slowpath(gfp_mask, order, zonelist, high_zoneidx, nodemask, preferred_zone, migratetype); stat...

2016-04-27 22:27:56

阅读数:1958

评论数:0

linux内存管理--分配内存页(快速) get_page_from_freelist

page = get_page_from_freelist(gfp_mask|__GFP_HARDWALL, nodemask, order, zonelist, high_zoneidx, alloc_flags, preferred_zone, ...

2016-04-27 22:26:58

阅读数:2094

评论数:0

linux内存管理--伙伴系统分配内存准备工作

linux内核内存管理的代码改变的有点大,主要是细节方面; 首先从 __get_free_pages()开始总结起: unsigned long  __get_free_pages(grp_t  gfp_mask, unsigned int order) /* ...

2016-04-27 22:26:07

阅读数:1054

评论数:0

__get_free_pages

说下分配策略,这个分配策略主要是获取到节点的编号(也就是得到 pgdat 结构体);下面是分配策略的结构体 static inline struct page * __alloc_pages(gfp_t gfp_mask, unsigned int order, ...

2016-04-27 22:24:51

阅读数:1061

评论数:0

linux内核源码分析(内存管理)--之数据结构

#define PGDIR_SHIFT 22  虚拟地址address >> PGDIR_SHIFT就可以得到PGD的下标,然后根据 (PGD + address>> PGDIR_SHIFT) 得到PGD的指针; #define PGDIR_SIZE (1UL #d...

2016-04-27 22:24:14

阅读数:993

评论数:0

bash shell 的知识点--参考书

我记得下面的知识点基本都是来自于shell的13问,好像。不管怎么样,知识在于分享。  ==============echo=====================  事实上,echo 除了 -n options 之外,常用选项还有:  -e :启用反斜线控制字符的转换(参考下表) ...

2016-04-19 10:19:52

阅读数:859

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭