操作系统
操作系统的四个基本元素:硬件,操作系统,应用程序,用户
批处理操作系统,分时操作系统,实时操作系统,通用操作系统,PC操作系统,网络操作系统,分布式系统
分时操作系统的特点
1. 多路调制性:即众多联机用户可以同时使
用同一台计算机;
2. 独占性:各终端用户感觉到自己独占了计
算机;
3. 交互性:用户与计算机之间可进行“会话”
分布式系统是以计算机网络为基础的计算机系统,包含多台处理机,每台处理机完成系统中指定的一部分功能。
进程管理
进程控制块PCB:
进程控制块包含了进程的描述信息、控制信息
及资源信息,是进程动态特征的集中反映。
进程控制块包含了进程的描述信息、控制信息
及资源信息,是进程动态特征的集中反映。
不允许多个并发进程交叉执行的一段程序
称为临界区(Critical Section or Critical
Region);
临界区是由属于不同并发进程的程序段共
享公用数据或变量而引起的;
临界区不可能用增加硬件的方法来解决。
因此,临界区也可以被称为访问公用数据
的那段程序。
称为临界区(Critical Section or Critical
Region);
临界区是由属于不同并发进程的程序段共
享公用数据或变量而引起的;
临界区不可能用增加硬件的方法来解决。
因此,临界区也可以被称为访问公用数据
的那段程序。
死锁,指多个进程互不相让,都得不到足够
的资源,只好一直处于等待状态;
饥饿,指一个进程一直得不到资源(其他进
程可能轮流占用资源)
的资源,只好一直处于等待状态;
饥饿,指一个进程一直得不到资源(其他进
程可能轮流占用资源)
进程间通信:分为低级通信和高级通信
低级通信只传递状态和整数值,包括进程互斥和同步所采用的信号量,优点是速度快,缺点是传送信息量小,编程复杂
高级通信能够传送任意数量的数据,包括三种消息缓冲区,邮箱机制,管道
消息或邮箱机制特点:无论接收进程是否准备好接收进程,发送进程都要将把所有发送的消息送入缓冲区或者邮箱
发送进程和接收进程地位平等
只要存在空缓冲区或邮箱,发送进程就可以发送消息
发送进程和接收进程之间无直接的连接关系,接收进程可能在收到某个发送进程发来的消息之后,又转去接收另一个发送进程发来的消息;
发送进程和接收进程之间存在缓冲区或邮箱,用来存
放消息 于消息缓冲机制中所使用的缓冲区为公 用缓冲区,使用消息缓冲区传送数据时,
发送进程和接收进程之间无直接的连接关系,接收进程可能在收到某个发送进程发来的消息之后,又转去接收另一个发送进程发来的消息;
发送进程和接收进程之间存在缓冲区或邮箱,用来存
放消息 于消息缓冲机制中所使用的缓冲区为公 用缓冲区,使用消息缓冲区传送数据时,
两个进程必须满足:
发送进程和接收进程操作缓冲区时,禁止其他进程对缓冲区消息队列的访问;
当缓冲区中无消息时,接收进程不能收到任何消息
发送进程和接收进程操作缓冲区时,禁止其他进程对缓冲区消息队列的访问;
当缓冲区中无消息时,接收进程不能收到任何消息
邮箱通信就是由发送进程申请建立一个与接收进程链接的邮箱。发送进程把消息送
往邮箱,接收进程从邮箱中将消息取走,从而完成进程间的消息交换。
设置邮箱的最大好处是发送进程和接收进程之间没有处理时间上的限制。
邮箱可以视为发送进程与接收进程之间的大小固定的私有数据结构,它不象缓冲区那样被系统中所有进程共享
往邮箱,接收进程从邮箱中将消息取走,从而完成进程间的消息交换。
设置邮箱的最大好处是发送进程和接收进程之间没有处理时间上的限制。
邮箱可以视为发送进程与接收进程之间的大小固定的私有数据结构,它不象缓冲区那样被系统中所有进程共享
父进程生成一个子进程,子进程向pipe中写入一个字符串,父进程从pipe中读出该字符串
两个进程发生死锁的情形:各拥有一部分资源,但又都得不到所需的全部资源
死锁的起因是并发进程的资源竞争。
产生死锁的根本原因:系统提供的资源个数少于并发进程所要求的该类资源数。
产生死锁的根本原因:系统提供的资源个数少于并发进程所要求的该类资源数。
死锁发生的必要条件
互斥条件:一个资源一次只能被一个进程所使用;
非剥夺条件: 进程所获得的资源在未使用完毕前,不能被别的进程强行剥夺,只能由获
得该资源的进程自己释放。
部分分配条件: 进程每次申请它所需要的一部分资源,在等待新资源的同时,继续占有
已分配到的资源。
环路条件: 若干个进程构成环行请求链,链中每个进程已获得的资源同时被下一个进程
请求
非剥夺条件: 进程所获得的资源在未使用完毕前,不能被别的进程强行剥夺,只能由获
得该资源的进程自己释放。
部分分配条件: 进程每次申请它所需要的一部分资源,在等待新资源的同时,继续占有
已分配到的资源。
环路条件: 若干个进程构成环行请求链,链中每个进程已获得的资源同时被下一个进程
请求
只要不满足其中的一个条件就不会产生死锁