进程管理

来源:互联网 发布:审核员 知乎 编辑:程序博客网 时间:2024/05/17 00:02

1、进程

 

       进程是把一个程序在一个程序机上的依次执行.进程是一个可并发执行的程序.是系统进程资源分配的一个独立单位.

 

(1)、进程的状态

    进程具有的状态,就绪状态,等待态,运行态.

          

 (2)、进程控制块

对进程进行管理和调度的信息集合.

(3)、进程队列

      多道程序设计系统中,往往会同时创建多个进程,这些被创建的若个就绪进程可按一定的次序排成队列,等待系统把处理器分配给它们以便运行.为了便于控制和管理,进程的队列可以通过进程控制块的链接来形成.

(4)、线程

     为了提高系统内程序并发执行的程序,进一步提高系统吞吐量,在现代操作系统中引入了比进程更小的能独立运行的基本单位,线程.

 

2、同步与互斥

       进程的互斥是进程进程之间的间接制约关系.在多道程序环境下,每次只允许一个进程对临界资源进行访问.

        进程的同步是指在并发进程之间存在的一种制约关系,一个进程的执行依赖另一个进程的消息,当一个进程没有得到另一个进程的消息时应等待,直到消息到达才被唤醒.

 

 

3、通信

      相关进程之间进行的信息交换即为通信.

      为避免信件的丢失和错误地索取信件,通信时遵循的规则:

若发送信件时信箱已满,则应把发送信件的进程置成"等信箱"状态,直到信箱有空时才被释放.

若取信件时信箱中无信,则应把接收信件的进程置成"等信件"状态,直到信箱中有信件时才被释放.

 

4、调度

      进程调度分为非剥夺方式和剥夺方式.

      非剥夺方式:一旦把处理机分配给某个进程它会一直运行下去,直到进程完成或发生事件阻塞才把处理机给另一个进程.

      剥夺方式:一个进程在运行时,系统基于某种原则,剥夺已分配给它的处理机,将它分配给其他进程.原则:先来先服务,最高优先级,时间片轮转.

 

5、死锁

      若系统中存在一组进程,它们中的每一个进程都占用了某种资源而又都在等待该组进程中另一个进程所占用的资源,这种等待永远不能结束,则说系统出现了死锁.

(1)、死锁的必要条件:

互斥的使用资源、占有且等待资源、循环等待资源、非抢夺式分配

(2)、死锁的防止:

静态分配资源:破坏了占有且等待资源和循环等待资源

按序分配:破坏了循环等待资源的条件。

剥夺式分配:破坏了非抢夺式分配的条件。

(3)、避免死锁:

      由于在避免死锁的策略中,允许进程动态地申请资源。因而,系统在进行资源分配之前预先计算资源分配的安全性。若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,进程等待。其中最具有代表性的避免死锁算法是银行家算法。

      银行家算法是在保证至少有一个进程能得到所需的全部资源的前提下进行资源分配的,避免了进程共享资源时可能发生的死锁,但这种算法必须不断测试各种进程占用和申请资源的情况,需花费较多的时间。

 

6、总结

      通过进程的学习了解了进程的概念及其进程的工作机制和进程工作过程中可能出现的问题以及解决方法。通过操作系统的学习对操作系统不再陌生,对计算机系统中信息的读写机制也有一定的了解了。

原创粉丝点击