Chinaunix首页 | 论坛 | 博客
  • 博客访问: 800837
  • 博文数量: 104
  • 博客积分: 915
  • 博客等级: 下士
  • 技术积分: 2171
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-24 21:34
文章分类

全部博文(104)

文章存档

2018年(4)

2015年(14)

2014年(9)

2013年(56)

2012年(21)

分类: LINUX

2012-09-27 09:22:06

一、程序与进程之间的区别:
    *进程更能真实的描述并发,而程序不能
    *进程是由程序、数据和进程控制块三部分组成的
    *程序是静态的,进程是动态的
    *进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的
    *一个程序可以对应多个进程,反之亦然
    *进程具有创建其他进程的功能,而程序没有

二、进程控制块(Process Contol Block)
    *它是一个数据结构;它记录了进程的外部特征,描述进程的运动变化过程
    *进程与PCB一一对应,是进程存在的唯一标志
    *PCB中的信息:记录了进程的全貌
  1)进程标识信息
    *外部标识符:有创建者提供,由字符、数字组成
    *内部标识符:OS中,每个进程都有唯一的标识符(PID)
  2)处理器状态信息(现场信息)
    *进程走走停停必须保存处理器的状态信息(即处理器现状),由处理器寄存器内容组成。
      *通用寄存器(8-32个,RISC结构中超过100个)
      *指令计数器(下一条指令的地址)
      *状态寄存器(程序状态字PSW)
      *用户栈指针(过程和系统调用参数及地址)
  3)进程调度信息
    *进程状态(如:运行,就绪,阻塞...)
    *进程优先级
    *该进程在等待的事件(阻塞原因)
    *调度所需其它信息(如:等待总时间,执行总时间)
  4)进程控制信息
    *程序和数据的地址
        程序和数据所在的内存(段/页表指针)或外存地址
    *进程间同步和通信机制
        需要的消息队列指针和信号量等
    *所需的和已分配的资源清单及使用情况
        除CPU外的资源:文件,I/O设备...它们的时间使用史
    *数据结构信息
        进程可能需要有指向其他PCB的指针,父-子进程关系及其它结构

三、PCB表
    *系统把所有PCB组织在一起,并把它们放在内存的固定区域,就构成了PCB表。
    *系统的并发度:PCB表的大小决定了系统中最多可同时存在的进程个数。
    注:多道程序中的道数与系统并发度不同

四、进程的三种基本状态转换
阅读(1590) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~