一、串行处理
人工通过按钮卡带串行输入,无操作系统。
缺点:
1.专业性强,普通人用不来。
2.资源浪费,程序启动速度慢,人工输入时计算机闲置,一人独占全机。
二、简单(单道)批处理系统
外存中有一批作业在排队等待(批处理),一次取一个作业放入内存中运行(单道),Monitor(监督程序,最早的操作系统),常驻在内存中,用于作业的调度。
优点:比串行输入高效。
缺点:有I/O操作时CPU内存闲置,浪费资源——出现多道系统。
三、多道批处理系统
允许多道程序在内存中同时准备运行(多道),正在运行的程序暂时不能运行时(如I/O时),系统自动启动另外一道程序运行,之后在某一时间继续运行原来的程序。(感觉像空间换时间啊)
操作系统主要解决:程序的资源分配问题(CPU、内存分配)、进程调度问题、安全性问题。
设计困难:
1.同步:使得每个进程间运行的先后顺序正确(类似拓扑图??)。
2.互斥: 多个进程间读写互斥,不能同时读或写。
3.操作的不确定性:多个进程间的干扰影响运行结果。
4.死锁:多个进程竞争同个资源导致死锁问题。
四、分时系统
属于多道批处理系统,每个任务每次运行的时间确定,一到时间就运行下一个任务,适合交互式系统。缺点是频繁中断进程会导致额外的系统开销,浪费时间,且某些程序不允许中断(如打印机打印文件)。