现代操作系统之进程(操作系统笔记)

进程在这里插入图片描述

  • 进程:一个正在执行的程序,与之相关的有进程的地址空间和进程表(记录了某个进程的地址,便于再次调用需要的信息)
  • 在这里插入图片描述

进程模型

(1)进程模型

  • 一个进程就是一个正在执行程序的实例,包括程序计数器、寄存器和变量的当前值。就好比他们有自己的CPU,当然真正的CPU只是在进程之前来回切换,这种切换称作多道程序设计
  • 每个进程都有自己的逻辑计数器,但都装载在真正的物理计数器中,一段时间后,所有进程都运行了,但给定瞬间只有一个进程在运行,如下图
    在这里插入图片描述进程比喻
    在这里插入图片描述

(2)创建进程

  • 进程创建的步骤
    系统初始化、执行了正在运行的进程苏鸥调用的进程创建系统调用、用户请求创建一个新进程、一个批处理作业的初始化
  • 守护进程:停留在后台(等待请求,获得请求才被调用)处理注入电子邮件、web页面、等活动的进程
  • 一个进程创建另一个进程,但是新进程对原进程没有相互作用时,效果最佳
  • Windows和Uinx创建进程时的区别:
    Unix 一个进程通过调用fork(一个系统调用)创建一个新进程,此时的进程和父进程的地址映像相同,子进程(新的)再执行一个execve或者类似,修改该自己的存储存储映像来运行一个新的程序,两步走的原因就是,获得时间间隔来处理信息(文件描述符等)
    Windows则是一个win32函数本身调用CreateProcess,处理进程的创建,其中的参数包括要执行的程序,输入,安全属性等
    地址空间:windows父子的地址空间不同,而Unix有段不可写空间是共享的
    (3)进程终止
  • 正常退出(exit(U)、ExitProcess)、错误退出、严重错误(中断))、被其他进程杀死
    (4)进程层次
    Unix:有父子进程,类似多叉树,每个进程只有一个父进程
    Windows:没有层次概念,每个进程的地位都相同,但是父进程在创建子进程的时候会获得一个句柄,可以用来控制子进程,也可以把它交给其他进程
    (5)进程的状态
  • 进程在逻辑上不能运行的时候会发生阻塞
    ①等待进程所需的数据(等待输入)
    ②操作系统的系统调度
  • 有三种状态:运行态、就绪态、阻塞态
    在这里插入图片描述

(6)进程的实现

  • 进程表
    在这里插入图片描述

  • 中断向量:当磁盘发生中断,计算机执行下面的1号操作,然后跳到中断地址,执行下面![

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值