首页 > 系统相关 >操作系统:进程与程序

操作系统:进程与程序

时间:2023-03-01 20:55:14浏览次数:27  
标签:执行 操作系统 程序 阻塞 进程 就绪 运行

操作系统第二讲:进程与程序

1.多道程序设计

多道

宏观并发

微观串行

优点

CPU利用率提高

设备利用率提高

系统吞吐量提高

2.多道程序的效率计算(时间是单位1

img

往下算的算法和这个类似。

3.进程的定义

进程:程序的一次执行过程(是一个执行过程)

进程的生命周期:进程从起点刀终点的时间为生命周期

进程是程序在数据集合上的运行过程,进行资源分配的一个独立单位。

对于进程定义的理解

1.从物理内存的分配来看,每个进程占用一片内存空间,从这个点上说,进程就是内存的某片空间。

2.从逻辑上来看,每个进程可以执行,也可以暂时挂起让别的进程执行,之后又可以接着执行(sleep)

3.从时间上看,每个进程都必须往前推进。

程序和进程的区别

1.进程是动态的,程序是静态的,程序是有序代码的集合,属于静态的文本概念,进程是程序的一次执行。

2.进程是并发的,会相互制约,程序是顺序的。

3.进程是暂时的,程序是永久的,进程是一个状态变化的过程,程序可以长久保存。

4.进程和程序的组成不同,进程的组成包括程序、数据和进程控制块。

5.进程与程序的对应关系,通过多次执行,一个程序可对应多个进程。

4.进程的生命周期

img

就绪态

进程所有的执行条件都满足,只等着CPU来调度;

当前是就绪态的话,要么是要等待运行,要么是运行时间片用完又回到了就绪态。

运行态

进程占有处理器正在运行的状态

阻塞态

进程不具备执行条件,比如需等待I/O;

阻塞态是运行过程中,条件不满足了被阻塞,等到条件满足了,回到就绪态。

引起进程创建的情况

1.系统初始化时

2.用户请求创建一个新进程

3.正在运行的进程执行了创建进程的函数(fock)

进程进入阻塞的情况

1.请求并等待系统服务,无法马上完成。

2.启动某种操作,无法马上完成

3.需要的数据没有到达

进程结束的情况

1.退出(自愿)

2.致命错误(强制)

 (博客处女作)

标签:执行,操作系统,程序,阻塞,进程,就绪,运行
From: https://www.cnblogs.com/jiluzhu/p/17169743.html

相关文章

  • 进程通信3-信号
    1.信号的概念信号是Linux进程间通信的最古老的方式之一,是事件发生时对进程的通知机制,有时也称之为软件中断,它是在软件层次上对中断机制的一种模拟,是一种异步通信的方......
  • Linux系统的进程管理
    (Linux系统的进程管理)一、系统进程介绍1.进程概念进程process是指正在执行的程序;是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的......
  • 微信小程序:登录页面模板
    微信小程序:登录页面模板wxml:<viewclass="v1"><!--v2父容器子view使用绝对布局--><viewclass="v2"><viewclass="dltext">登录</view><!--......
  • 2023 年适用于 Mac 的最佳 IDE 应用程序推荐
    "IDE"是集成开发环境的简称,一般包括编辑器,编译器,调试器等。而一个好用的IDE不仅能提升代码质量,还能使管理开发工作更简单。五个美观好用的全能性IDE应用推荐给大家,需要的......
  • 多线程和多进程的区别
    一个线程从属于一个进程;一个进程可以包含多个线程。一个线程挂掉,对应的进程挂掉,多线程也挂掉;一个进程挂掉,不影响其它进程,多进程稳定。进程系统开销显著大于线程开销;线程......
  • 创建进程的流程及进程切换的情况
    创建进程为新进程分配一个唯一的进程标识符(pid)。为新进程分配资源,如内存空间、文件描述符、信号处理函数等。初始化新进程的进程控制块(PCB),包括设置初始状态、优先级、......
  • 系统调用的过程及操作系统通过什么机制触发系统调用
    过程用户进程通过库函数或者直接使用汇编指令(如svc)发起系统调用请求,将系统调用号和参数保存在寄存器中。处理器切换到内核模式,根据中断向量表跳转到系统调用总入口程序,......
  • xv6系统调用流程——MIT6.S081操作系统
    这篇文章通过gdb跟踪基于risc-v架构的xv6系统中write系统调用的处理流程。系统调用是操作系统给应用程序提供的操作底层硬件资源的简单清晰的接口,隐藏底层资源的复杂性,比......
  • 在Linux下写一个简单的驱动程序
    本文首先描述了一个可以实际测试运行的驱动实例,然后由此去讨论Linux下驱动模板的要素,以及Linux上应用程序到驱动的执行过程。相信这样由浅入深、由具体实例到抽象理论......
  • 用Vue开发小程序怎么做到的?
    ​目前来说,不管是BAT大厂,还是创业公司,Vue都有着广泛的应用,对于任何一个前端工程师来说,Vue都是一门非常值得学习的前端框架之一。Vue、React和Angular是当前应用最广......