把操作系统看作是向应用程序提供基本抽象的概念,是一种自顶向下的观点。按照另一种自底向上的观点,操作系统则用来管理一个复杂系统的各个部分。操作系统的任务是在相互竞争的程序之间有序地控制对处理器、存储器以及其它IO接口设备的分配。
现代计算机都是多用户环境,这意味着存在多个用户来使用一份计算机系统的资源,在这种情况下,解决资源需求的一个方法就是在用户间多路复用资源。所谓多路复用,就是共享的意思。主要有两种方式实现多路复用资源:时间上复用和空间上复用。
时间上的复用是指不同的程序或用户按照时间顺序轮流获得资源的使用权,典型的例子就是CPU的时间片,在获得资源的时间内,该资源似乎是被该用户或程序始终独占的?而操作系统的任务则是保证这种时间复用方式的稳定运作,如获得的资源的顺序,获得资源的时长等等。
空间复用是每个客户都得到资源的一部分,这样避免了客户的排队。典型的例子是内存中基本上都存在着多个程序,每个程序只占用一部分内存空间。假设有足够的内存可以存放多个程序,那么在内存中同时存放若干程序的效率,比把所有内存都分给一个程序的效率要高得多,特别是一个程序只需要内存的一小部分时,结果更是这样。关于用户和程序对磁盘空间的使用的管理,也是操作系统资源管理的典型任务。
现代计算机都是多用户环境,这意味着存在多个用户来使用一份计算机系统的资源,在这种情况下,解决资源需求的一个方法就是在用户间多路复用资源。所谓多路复用,就是共享的意思。主要有两种方式实现多路复用资源:时间上复用和空间上复用。
时间上的复用是指不同的程序或用户按照时间顺序轮流获得资源的使用权,典型的例子就是CPU的时间片,在获得资源的时间内,该资源似乎是被该用户或程序始终独占的?而操作系统的任务则是保证这种时间复用方式的稳定运作,如获得的资源的顺序,获得资源的时长等等。
空间复用是每个客户都得到资源的一部分,这样避免了客户的排队。典型的例子是内存中基本上都存在着多个程序,每个程序只占用一部分内存空间。假设有足够的内存可以存放多个程序,那么在内存中同时存放若干程序的效率,比把所有内存都分给一个程序的效率要高得多,特别是一个程序只需要内存的一小部分时,结果更是这样。关于用户和程序对磁盘空间的使用的管理,也是操作系统资源管理的典型任务。
——整理自《现代操作系统
》