首页 > 系统服务 > 详细

linux内核中与进程相关的数据结构(基于linux-mainline-rc4)

时间:2014-07-22 22:47:42      阅读:441      评论:0      收藏:0      [点我收藏+]

1.进程描述符

   struct task_struct {

   volatile long state;

  .......

   struct list_head tasks;

  .......

   struct mm_struct *mm, *active_mm;

  .......

   struct vm_area_struct *vmacache[VMACACHE_SIZE];

  ......

   pid_t pid;
   pid_t tgid;

  .......
   }
所在文件:include/linux/sched.h

 

2.线程描述符(current指向该描述符,并通过该描述符找到进程描述符)

   struct thread_info {
         struct task_struct      *task;                             /* main task structure */
         struct2. exec_domain  *exec_domain;              /* execution domain */
         __u32                        flags;                             /* low level flags */
         __u32                        status;                          /* thread synchronous flags     */
         __u32                        cpu;                             /* current CPU */
         int                              saved_preempt_count;
         mm_segment_t         addr_limit;
         struct restart_block   restart_block;
         void __user               *sysenter_return;
         unsigned int              sig_on_uaccess_error:1;
         unsigned int              uaccess_err:1;              /* uaccess failed */
   };

所在文件:arch/x86/include/asm/thread_info.h

 

3.进程的内核栈

  union thread_union {

  struct thread_info thread_info;

  unsigned long stack[THREAD_SIZE/sizeof(long)];

   }

所在文件:include/linux/sched.h

    

4.进程的运行队列

 struct rt_prio_array {                            

   DECLARE_BITMAP(bitmap, MAX_RT_PRIO+1);

   struct list_head queue[MAX_RT_PRIO];

 }

所在文件:kernel/sched/sched.h

linux内核中与进程相关的数据结构(基于linux-mainline-rc4),布布扣,bubuko.com

linux内核中与进程相关的数据结构(基于linux-mainline-rc4)

原文:http://www.cnblogs.com/liangning/p/3861182.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!