Linux核心数据结构--vm_area_struct

表示某进程的一个虚拟内存区域。

struct vm_area_struct {

  struct mm_struct * vm_mm;
  /* VM area parameters */

  unsigned long vm_start;

  unsigned long vm_end;

  pgprot_t vm_page_prot;

  unsigned short vm_flags;


/* AVL tree of VM areas per task, sorted by address */

  short vm_avl_height;

  struct vm_area_struct * vm_avl_left;

  struct vm_area_struct * vm_avl_right;

/* linked list of VM areas per task, sorted by address */

  struct vm_area_struct * vm_next;
/* for areas with inode, the circular list inode->i_mmap */

/* for shm areas, the circular list of attaches */

/* otherwise unused */

  struct vm_area_struct * vm_next_share;

  struct vm_area_struct * vm_prev_share;

/* more */

  struct vm_operations_struct * vm_ops;

  unsigned long vm_offset;

  struct inode * vm_inode;

  unsigned long vm_pte;
      /* shared mem */

};

你可能感兴趣的:(数据结构,linux)