Chinaunix首页 | 论坛 | 博客
  • 博客访问: 327032
  • 博文数量: 100
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 665
  • 用 户 组: 普通用户
  • 注册时间: 2015-02-02 12:43
文章分类

全部博文(100)

文章存档

2015年(100)

我的朋友

发布时间:2015-06-20 09:36:14

从前面的博文中我们已经知道,把一块存放slab结构的内存区映射到一组连续的物理页是最好的选择,这样会充分利用高速缓存并获得较低的平均访问时间。不过,上面的方式主要是针对那些使用非常频繁的内核数据结构——如task_struct、inode来设计的。如果对内存区的请求不是很频繁,那么,通过连续的线性地址,而不是物理地.........【阅读全文】

阅读(1901) | 评论(0) | 转发(0)

发布时间:2015-06-19 14:43:04

当一个新区域被加到进程的地址空间时,内核会检查它是否可以与一个或多个现存区域合并,vma_merge()函数在可能的情况下,将一个新区域与周边区域进行合并。参数:mm:新区域所属的进程地址空间prev:在地址上紧接着新区域的前面一个vmaaddr:新区域的起始地址end:新区域的结束地址vm_flags:新区域的标识.........【阅读全文】

阅读(4506) | 评论(0) | 转发(0)

发布时间:2015-06-18 22:59:26

开门见山,在arch/arm/kernel/sys_arm.c文件中,有这样三个函数:sys_fork、sys_vfork、sys_clone,它们都是在创建进程,分别对应系统调用fork()、vfork()、clone(),下面是它们在arm中的函数实现:顺便说一下,系统调用是如何对应到内核接口函数的(fork()->sys_fork),在之后会有文章专门研讨,这里重点讨论的是进程.........【阅读全文】

阅读(2071) | 评论(0) | 转发(1)

发布时间:2015-06-18 22:14:02

内核使用内存描述符结构体表示进程的地址空间,该结构体包含了和进程地址空间有关的全部信息。内存描述符由mm_struct结构体表示,定义在文件<linux/sched.h>中。进程地址空间由每个进程的线性地址区(vm_area_struct)组成。通过内核,进程可以给自己的地址空间动态的添加或减少线性区域。如下图是内存描述符mm_struct和.........【阅读全文】

阅读(2010) | 评论(0) | 转发(0)

发布时间:2015-06-18 22:01:27

http://www.cnblogs.com/wang_yb/p/3351599.html进程地址空间也就是每个进程所使用的内存,内核对进程地址空间的管理,也就是对用户态程序的内存管理。主要内容:地址空间(mm_struct)虚拟内存区域(VMA)地址空间和页表 1. 地址空间(mm_struct)地.........【阅读全文】

阅读(1612) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册