WEB开发网
开发学院服务器服务器方案 集群系统MOSIX分析(5) 阅读

集群系统MOSIX分析(5)

 2008-12-01 11:04:43 来源:WEB开发网   
核心提示: 进程内存状态: task_struct的数据成员mm指向关于存储管理的struct mm_struct结构,它包含着进程内存管理的很多重要数据,集群系统MOSIX分析(5)(4),如进程代码段、数据段、未初始化数据段、调用参数区和进程环境区的起始地址和结束地址,栈的起始地址和进程空间的大小

进程内存状态:

task_struct的数据成员mm指向关于存储管理的struct mm_struct结构。它包含着进程内存管理的很多重要数据,如进程代码段、数据段、未初始化数据段、调用参数区和进程环境区的起始地址和结束地址,栈的起始地址和进程空间的大小。用户程序和代码一般占据虚拟地址空间的下方,这一部分是内存映射部分,其内容来自映射文件。界于用户执行映象和堆栈之间的部分是堆,在用户程序中动态申请的地址空间(如malloc)来源于堆。虚拟内存结构mm_struct中的start_brk和brk记录有关堆的信息。其中start_brk是用户虚拟地址空间初始化时,堆的终止位置;brk是当前堆的终止位置。

集群系统MOSIX分析(5)

下面列出了struct mm_struct结构的一些重要成员:

struct mm_struct {
  struct vm_area_struct * mmap;    /* 指向VMA双向链表的指针*/
  struct vm_area_struct * mmap_avl;  /*指向VMA段AVL树的指针*/
  struct vm_area_struct * mmap_cache;  /*保存上次 find_vma 的结果 */
  pgd_t * pgd;           /*进程页目录的起始地址*/
  atomic_t mm_users;        /*用户空间的用户数 */
  atomic_t mm_count;       /* "struct mm_struct" 的引用计数 */
  int map_count;         /* VMAs的个数 */
  unsigned long start_code, end_code, start_data, end_data;
  unsigned long start_brk, brk, start_stack;
  unsigned long arg_start, arg_end, env_start, env_end;
mm_context_t context; /* 体系结构相关的 MM上下文 */
struct rw_semaphore mmap_sem; /*读写信号量*/
  };

上一页  1 2 3 4 5 6 7  下一页

Tags:集群 MOSIX

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接