一、操作系统概述
操作系统定义:能有效的组织和管理系统中的各种软硬件资源,合理组织计算机系统工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口。
操作系统作用:
操作系统特征:
操作系统分类:
二、进程组成与状态
进程组成:进程控制块(PCB 唯一标识)、程序(进程主要做什么)、数据(存放进程执行时候的数据)
三态图:
描述:主要资源分为CPU资源与其他数据资源。当进程处于运行状态时候,进程不缺CPU资源与其他数据资源,运行过程中缺乏某种资源时候,进程会将运行态变为阻塞态,等待资源同步成功。资源同步成功后,进程从阻塞态变成就绪态,此时进程只缺少CPU资源。当进程被调度时候,进程从就绪态变更为运行态。同样,当进程在运行的时候,如果时间片到了,则会自动变更为就绪态。
注意:不能就绪态直接到阻塞态,因为进程未运行,你不清楚其缺乏啥资源。
不能从阻塞态直接到运行态,因为CPU被占用,无法直接接受阻塞状态的变更。
前趋图:任务间并行,任务间的先后顺序。
进程资源图:进程和资源之间分配情况。P代表进程,R代表资源。
做题要点:资源给进程后,进程执行完毕后,会释放资源,方便其他进程使用。先运行非阻塞节点,等待分阻塞节点运行完成后,释放资源,在运行阻塞节点。
三、进程同步与互斥
临界资源:各进程需要以互斥的方式访问的资源为临界资源。
临界区:本质是一段代码程序,进程中对临界资源实施操作的那段程序。
互斥:某资源在同一时间内只能给一个进程所使用,使用的时候加锁,使用完毕后解锁,使用期间不允许其他进程使用。
同步:多个任务可以并行执行,但是速度有差异。
互斥信号量:对临界资源采用互斥访问,使用互斥信号量后,其他进程无法访问,初值为1
同步信号量:针对共享资源,共享资源是有数量的限制的,初值是共享资源数量。
PV操作与生产者消费者问题:
P操作:代表申请资源,s=s-1 申请完一个资源少一个资源。s>=0的时候继续执行,s<0的时候进程进入阻塞状态,s为几则代表多个进程正等待资源。
V操作:释放资源,s=s+1 释放完资源,则增加一个资源。s>0的时候继续执行,s<0的时候则代表释放了资源,从阻塞进程中唤醒一个进程执行。
生产者与消费者:实际是从仓库中放入商品,消费者取出商品并释放仓库空闲数量问题。
解题思路:大胆假设,小心求证。
题目主要是和前趋图进行关联,每个前趋图中的每条指向的箭头,都代表了一个信号量,根据前趋图可以查看出释放了多少个信号量,申请了多少个信号量,根据前后关联关系,进行分析处理。