2.1进程与线程

(1)为什么要引入进程?

在多道程序同时运行的背景下,进程之间需要共享系统资源,这样就会导致各程序在执行过程中出现相互制约的关系,程序的执行就会表现出间断性的特性。这些特性都是在程序的执行过程中发生的,是动态的过程。而传统的程序本身是一组指令的集合,是一个静态的概念,无法描述在内存的执行情况,即我们无法从程序的字面上看出它何时执行,何时停顿,也无法看出它与其他执行程序的关系,因此,程序这个静态概念已不能如实反映程序并发执行的特征。为了深刻描绘程序动态执行过程的性质乃至更好地支持和管理多道程序的并发执行,人们引入了进程概念。

(2)什么是进程及进程由什么组成?

进程是一个具有独立功能程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序代码本身,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。

一个进程实体由程序段、相关数据段和PCB三部分构成,其中PCB是标志一个进程存在的唯一标识,程序段是进程运行的程序代码,数据段则存储程序运行过程中相关的一些数据。

(3)进程是如何解决问题的?

进程把能够识别程序运行状态的一些变量存放在PCB中,通过这些变量系统能够更好地了解进程的状况,并在适当的时候进行进程的切换,以避免一些资源的浪费,甚至划分更小的调度单位——线程来提高系统的并发度。

(4)进程状态

状态种类:

1、运行状态:进程正在处理机上运行

2、就绪状态:进程已经获得了除处理机以外的一切所需资源

3、阻塞状态:进程正在等待某个事件而暂停运行

4、创建状态:进程正在被创建,尚未转到就绪状态

5、结束状态:进程在系统中消失,分为正常结束和异常退出。

状态变化:

就绪->运行:经过处理机的调度,就绪进程获得到处理机资源。

运行->就绪:时间片用完,或者在可剥夺系统中有更高优先级进程进入。

运行->阻塞:进程需要的某个资源还没准备好

阻塞->就绪:进程需要的资源已准备好

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木头编程 - moTzxx

CentOS下(rsync+crontab)触发式实现服务器间的文件备份同步

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

27120
来自专栏linux系统运维

php-fpm的pool,php-fpm慢执行日志,open_basedir,php-fpm进程管理

26540
来自专栏玄魂工作室

Hacker基础之Linux篇:基础Linux命令十

Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令

13740
来自专栏君赏技术博客

【已解决】Encountered an unknown error (Unable to find a specification for `xxxx` depended upon by `xxxx`

我们模块化的时候制作自己私有库免不了要依赖其他的私有库,我们通常在验证或者编写的时候就需要使用 podfile 文件添加我们私有库的 source 源。

2.2K10
来自专栏决胜机器学习

优化页面访问速度(一)——综述

优化页面访问速度,首先需要了解用户在浏览器输入url后,最终是如何看到所需的页面。在了解整个流程后,可以逐个步骤进行优化。

14740
来自专栏自由而无用的灵魂的碎碎念

解决Windows10或者其他版本Windows Update报错的问题

最近更新系统,发现报错0x80248014,系统版本为redstone2(创意者更新)。

12030
来自专栏Java开发者杂谈

将tomcat源码导入eclipse

前言: 写完了socket小应用的原始版本,中间还有好多预想的功能没有实现,在写的过程中也发现了很多问题。因为前面有粗略的看过tomcat实现原理解析,知道to...

37870
来自专栏算法channel

基础|进程和线程模型

计算机中最重要的模型之一,莫过于进程模型和线程模型了,对于它们的深刻理解,直接关系到软件开发,算法设计等计算机细分方向。 01 — 进程模型 进程是指一个具有一...

39950
来自专栏L宝宝聊IT

Squid代理服务器

1.1K110
来自专栏我的小碗汤

微服务学习之thrift介绍安装

最近在做一个docker+Kubernetes微服务容器化实战项目,项目中用到了很多不熟悉的组件,也遇到了挺多的问题。项目结构是这样的:

38630

扫码关注云+社区

领取腾讯云代金券