计算机基础知识
  • 关于
  • 系统
    • 操作系统的概念、功能、目标
    • 操作系统的特征
    • 并发和并行的区别
    • 操作系统的发展与分类
    • 操作系统的运行机制和体系结构
    • 中断和异常
    • 用户态、核心态之间的切换是怎么实现的?
    • 系统调用
    • 进程的概念
    • 进程的状态和转换
    • 进程控制
    • 进程通信
    • 线程、多线程模型
    • 程序、进程和作业的关系
    • 处理机调度的概念、层次
    • 进程调度的时机、切换与过程、方式
    • 调度算法的评价指标
    • 批处理系统的调度算法
    • 交互式系统的调度算法
    • 进程同步与进程互斥
    • 进程互斥的软件实现方法
    • 进程互斥的硬件实现方法
    • 信号量机制
    • 用信号量机制实现进程互斥、同步、前驱关系
    • 生产者-消费者问题
    • 多生产者-多消费者问题
    • 吸烟者问题
    • 读者-写者问题
    • 哲学家进餐问题
    • 管程
    • 死锁的概念
    • 死锁的处理策略——预防死锁
    • 死锁的处理策略——避免死锁
    • 死锁的处理策略——检测和解除
  • 网络
    • 计算机网络的概念、组成、功能、分类
    • 标准化工作及相关组织
    • 性能指标之速率、带宽、吞吐量
    • 性能指标之时延、时延带宽积、往返时间RTT、利用率
    • 分层结构
    • OSI参考模型
    • TCP/IP参考模型
    • 5层参考模型
    • http与https的区别
    • TCP和UDP的区别
  • Java
    • Arraylist与LinkedList区别
    • HashMap,HashTable,ConcurrentHash的共同点和区别
  • 数据库
    • 为什么MySQL索引要使用B+树
由 GitBook 提供支持
在本页
  • 定义
  • 组成
  • 组织方式
  • 特征
在GitHub上编辑
  1. 系统

进程的概念

定义

程序:就是一个指令序列

早期的计算机只支持单道程序,程序的代码放在程序段内,程序运行过程处理的数据放在数据段内(如变量)

引入多道程序技术之后,为了方便操作系统管理,完成各程序并发执行,引入了进程、进程实体的概念。系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放位置)

程序段、数据段、PCB三部分组成了进程实体(进程映像)。一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB。而撤销进程,实质上是撤销进程实体中的PCB。

PCB是进程存在的唯一标志!

进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。

组成

进程(进程实体)由程序段、数据段、PCB三部分组成。

程序段存放要执行的代码

数据段存放程序运行过程中处理的各种数据

PCB包含进程描述信息(PID、UID)、 进程控制和管理信息(进程当前状态、进程优先级)、资源分配清单(程序段指针、数据段指针、键盘、鼠标)、处理机相关信息(各种寄存器值)

组织方式

在一个系统中,通常有数十、数百乃至数千个PCB。为了能对他们加以有效的管理,应该用适当的方式把这些PCB组织起来。

进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题

进程的组织方式包括链接方式和索引方式。连接方式按照进程状态将PCB分为多个队列,操作系统持有指向各个队列的指针。索引方式根据进程状态的不同,建立几张索引表,操作系统持有指向各个索引表的指针。

特征

进程和程序是两个截然不同的概念,相比于程序,进程拥有以下特征:

  • 动态性:进程是程序的一次执行过程,是动态地产生、变化和消亡的

  • 并发性:内存中有多个进程实体,各进程可并发执行

  • 独立性:进程是能独立运行、独立获得资源、独立接受调度的基本单位

  • 异步性:各进程按各自独立的、不可预知的速度向前推进,操作系统要提供"进程同步机制"来解决异步问题

  • 结构性:每个进程都会配置一个PCB。结构上看,进程由程序段、数据段、PCB组成

最后更新于2年前