系统架构设计师-学习第四天
计算机软件
操作系统的特征
并发性
在多道程序环境下, 并发性是指在一段时间内,宏观上有多个程序同时运行, 但实际上在单CPU的运行环境,每一个时刻只有一个程序在执行。因此,从微观上来说, 各个程序是交替、轮流执行的, 如果计算机系统中有多个CPU,则可将多个程序分配到不同CPU上实现并行运行。
共享性
共享是指操作系统中的资源(包括硬件资源和信息资源) 可以被多个并发执行的进程(线程) 共同使用,而不是被一个进程所独占。出于经济上的考虑,一次性向每个用户程序分别提供它所需的全部资源不但是浪费的,有时也是不可能的。现实的方法是让操作系统和多个用户程序共用一套计算机系统的所有资源,因此必然会产生共享资源的需要。共享资源的方式可以分为同时共享和互斥共享。
虚拟性
虚拟性是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术。前者是实际存在的,而后者是虚构假想的,是用户感觉上的东西。采用虚拟技术的目的是为用户提供易于使用且方便高效的操作环境。
不确定性
在多道程序环境中,允许多个进程并发执行, 但由于资源有限,在多数情况下进程的执行不是一贯到底的, 而是“走走停停”。例如一个进程,在CPU上运行一段时间后,由于等待资源或某事件发生,它被暂停执行, 将CPU转让给另一个进程执行。系统中的进程何时执行,何时暂停, 以什么样的速度向前推进, 进程总共要花多少时间执行才能完成,这些都是不可预知的。或者说该进程是以不确定的方式运行的,其导致的直接后果是程序执行结果可能不唯一。
操作系统的分类
批处理操作系统
批处理操作系统分为单道批处理和多道批处理。
分时操作系统
分时系统主要有4个特点: 多路性、独立性、交互性和及时性。
实时操作系统
实时系统分为实时控制系统和实时信息处理系统。
网络操作系统
网络操作系统是使联网计算机能方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合。
分布式操作系统
分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息。
微型计算机操作系统
微型计算机操作系统简称微机操作系统,常用的有 Windows、Mac OS、Linux。
嵌入式操作系统
- 微型化: 从性能和成本角度考虑,希望占用的资源和系统代码量少, 如内存少、字长短、运行速度有限、能源少(用微小型电池)。
- 可定制: 从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构与功能上的配置, 以满足不同应用需要。
- 实时性: 嵌入式操作系统主要应用于过程控制、数据采集、传输通信、多媒体信息及关键要害领域需要迅速响应的场合, 所以对实时性要求较高。
- 可靠性: 系统构件、模块和体系结构必须达到应有的可靠性, 对关键要害应用还要提供容错和防故障措施。
- 易移植性: 为了提高系统的易移植性,通常采用硬件抽象层(Hardware AbstractionLevel, HAL) 和板级支撑包(Board Support Package, BSP) 的底层设计技术。
常见的嵌入式实时操作系统有 VxWorks、μClinux、PalmOS、WindowsCE、μC/OS-Ⅱ和eCos等。