什么是进程? 为什么使用进程? 如何运用进程?
一丶什么是进程?
a.进程是指在系统中正在运行的一个应用程序,程序一旦运行就是进程。
b.进程是系统进行资源分配的独立实体, 且每个进程拥有独立的地址空间。
二丶为什么引进进程?
进程可以解决在一个系统可以并发执行多个任务
三丶进程的分类有哪些?
a.交互进程(前台): 简单来说就是与用户进行交互操作,用户给出某些参数才能继续执行
b.批处理进程 :与windows原来的批处理很类似,是一个进程序列。该进程负责按照顺序启动其它进程。
c.守护进程,是一类在后台运行的特殊进程,用于执行特定的系统任务。大多数守护进程在系统引导的时候启动,并且一直运行直到系统关闭。另一些只在需要的时候才启动,完成任务后就自动结束。
四丶进程与程序的区别
a.程序是静态的,进程是动态的,
b.程序是永久的,进程是暂时存在的。程序的永久性是相对于进程而言的,只要不去删除它,它可以永久的存储在介质当中。
c.进程是程序的一次执行,而进程总是对应至少一个特定的程序。
ps:一个程序可以对应多个进程,同一个程序可以在不同的数据集合上运行,因而构成若干个不同的进程。几个进程能并发地执行相同的程序代码,而同一个进程能顺序地执行几个程序。
五丶进程的状态
1、就绪状态,英文称Ready。进程已获得除处理器外的所需资源,只是在等待分配处理器资源,只要分配了处理器进程就可执行。
准备就绪进程可以按多个优先级来划分队列。例如,当一个进程由于时间片用完而进入就绪状态时,排入低优先级队列。当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。
2、运行状态,英文称Running。进程占用处理器资源,处于此状态的进程的数目小于等于处理器的数目。在没有其他进程可以执行时(如所有进程都在阻塞状态),系统通常会自动执行系统的空闲进程。
3、阻塞状态,英文称Blocked,系统由于进程等待某种条件(如I/O操作或进程同步),在条件满足之前无法继续执行。该事件发生前即使把处理器资源分配给该进程,该进程也无法进行运行。
六丶进程的生命周期
R —可执行状态 (TASK_RUNNING)
S —可中断的睡眠状态 (TASK_INTERRUPTIBLE)
D —不可中断的睡眠状态 (TASK_UNINTERRUPTIBLE)
T —暂停状态或跟踪状态 (TASK_STOPPED or TASK_TRACED)
Z —退出状态,进程成为僵尸进程 (TASK_DEAD - EXIT_ZOMBIE)
X —退出状态,进程即将被销毁 (TASK_DEAD - EXIT_DEAD)
七丶进程调度的方法
1、先来先服务和短作业(进程)优先调度算法
2、高优先权优先调度算法
3、时间片轮转法
什么是进程? 为什么使用进程? 如何运用进程?相关推荐
- python进程数上限_python如何控制进程或者线程的个数
背景 日常开发中,难免遇到并发场景,而并发场景难免需要做流量控制,即需要对并发的进程或者线程的总量进行控制. 今天简单总结两种常用的控制线程个数的方法. 方法一:进程池/线程池 如下例demo所示, ...
- python 进程池 freeze_support_Python 多进程并发操作中进程池Pool的实例
在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间.当被操作对象数目不大时,可以直接利用multiprocessing中的Process ...
- python获取进程编号(目的、获取当前进程编号、根据编号杀死指定进程号、获取当前父进程编号)
1. 获取进程编号的目的 获取进程编号的目的是验证主进程和子进程的关系,可以得知子进程是由那个主进程创建出来的. 获取进程编号的两种操作 获取当前进程编号 获取当前父进程编号 2. 获 ...
- linux查找用户前三进程_查看 Linux 系统中进程和用户的内存使用情况 | Linux 中国...
有一些命令可以用来检查 Linux 系统中的内存使用情况,下面是一些更好的命令.-- Sandra Henry-stocker 有许多工具可以查看 Linux 系统中的内存使用情况.一些命令被广泛使用 ...
- Linux进程退出详解(do_exit)--Linux进程的管理与调度(十四)
Linux进程的退出 linux下进程退出的方式 正常退出 从main函数返回return 调用exit 调用_exit 异常退出 调用abort 由信号终止 _exit, exit和_Exit的区别 ...
- C#种死锁:事务(进程 ID 112)与另一个进程被死锁在 锁
C#种死锁:事务(进程 ID 112)与另一个进程被死锁在 锁 参考文章: (1)C#种死锁:事务(进程 ID 112)与另一个进程被死锁在 锁 (2) 通信缓冲区 资源上,并且已被选作死锁牺牲品.请 ...
- mysql查看死锁并杀掉_查看当前进程,或死锁进程,并能自动杀掉死进程_MySQL
/*--处理死锁 查看当前进程,或死锁进程,并能自动杀掉死进程 因为是针对死的,所以如果有死锁进程,只能查看死锁进程 当然,你可以通过参数控制,不管有没有死锁,都只查看死锁进程 --邹建 2004.4 ...
- linux进程--进程组、会话、守护进程(八)
进程组 一个或多个进程的集合 进程组ID: 正整数 两个函数 getpgid(0)=getpgrp() 例子:显示子进程与父进程的进程组id #include <stdio.h> #inc ...
- cidaemon.exe是什么进程及如何关闭cidaemon.exe进程
问题描述: 这段时间机器总是出现一个奇怪的问题:cidaemon.exe进程占用CUP率98%以上,大大影响了电脑的正常使用.资源管理器中出现多个cidaemon.exe进程,强制结束占用cpu率最 ...
- Python 技术篇-通过进程名称、PID杀死windows进程的两种方法,获取当前运行程序的pid
方法一: 利用 os 杀死进程. import os# 通过进程名称杀死进程 os.system('taskkill /f /im %s' % 'python.exe')# 通过pid杀死进程 os. ...
最新文章
- #define barrier() __asm__ __volatile__(: : :memory) 中的memory是gcc的东西
- OAF中下载附件之后页面失效,报过时的数据异常,浏览器后退异常
- Java基础知识➣面向对象(八)
- 类文件结构-method-init和类文件结构-method-main
- Qt设置QWidget背景色4种方法
- Android-apk文件反编译
- ajax 请求_你了解前端出现Ajax跨域请求的原因吗?
- 欧空局2018机器学习系列课程发布:从概念到实践(视频+PPT)
- android和emui的版本对应,同为Android 操作系统的小米MIUI和华为EMUI, 谁更优秀?
- mysql 端口 php_php - 如何修改mysql端口并对外开放。。
- AngularJS学习之旅—AngularJS 事件(十四)
- Electron下使用samba相关问题记录
- CNN卷积神经网络原理讲解+图片识别应用(附源码)
- MediaSession框架
- win7 x64部署和串口调试虚拟驱动toaster
- 外地人如何买房落户武汉 武汉户口全解读
- iOS设备指纹的前世今生
- 【UOJ#386】【UNR#3】鸽子固定器(贪心)
- 图像特征提取(纹理特征)
- C语言·sqrt()的用法