操作系统初步认识
桌面常见四大操作系统
- Windows
- Linux
- Mac
- UNIX
- Windows 基于MS-DOS
- Linux之RedHat 以HGNU/Linux为核心
操作系统与普通软件有重大区别
基本功能
- 控制程序运行
- 提供操作界面
- 管理系统资源
- 配置系统参数
- 监控系统状态
应用程序运行需要操作系统提供哪些支持?
- 文件如何存放?硬盘
- 程序如何启动?硬盘->内存
- 如何内存分配?
- 如何向屏幕输出字符串?
- while死循环会不会独占CPU?
- 程序结束如何退出系统?
操作系统功能和定义
操作系统的功能
-
进程管理
- Windows环境下多个“进程”在并发运行
-
内存管理
- 内存分配
- 内存共享
- 内存保护
- 虚拟内存
-
设备管理
- 设备的分配和调度
- 设备无关性作(第八章)
- 设备传输控制
- 设备驱动
-
文件管理
- 存储空间管理
- 文件的操作
- 目录的操作
- 文件和目录的存取权限管理
操作系统的定义
- 操作系统是一个大型系统程序
- 提供用户接口,方便用户控制计算机
- 负责为应用程序分配和调度软硬件资源,并控制和协调多个应用程序并发活动,帮助用户存取和保护信息
各种各样的应用系统 |
---|
调试程序、装入程序、编辑程序 |
编译程序、汇编程序、装配程序 |
操作系统 |
机器语言 |
微程序 |
裸机 |
操作系统发展历史
-
硬件性能的提升是操作系统发展的第一大动力
-
应用的需求是另一大动力
-
计算机硬件发展的四个典型阶段
- 电子管时代
- 晶体管时代
- 集成电路时代
- 大规模集成电路时代
-
手工操作(没有操作系统)
- 电子管时代
- 硬件:电子管、接线面板
- 程序:二进制程序、打孔和卡片
- 程序准备/启动/结束:手工处理,繁琐耗时
- 缺点:效率低、用户独占、缺少交互
- 电子管时代
-
单道批处理系统
- 晶体管时代
- 管理员事先将多个作业输入到磁盘形成作业队列
- 操作系统依次自动处理队伍中的每个作业:装入、运行、撤出
- 程序的装入和撤出:自动完成,效率高
- 工作特点:批量、自动、单道
- 外设与CPU交替空闲和忙碌,CPU和外设利用效率低
- 晶体管时代
-
多道批处理系统
- 集成电路时代
- 内存中存放多道程序,相互穿插运行
- 使CPU和外设都尽量忙碌
- 多道:内存同时存放多道程序
- 并行:宏观上
- 串行:微观上
- 缺点:处理时间长、交互能力差、运行过程不确定
- 集成电路时代
-
60年代硬件的两个重大进展
- 中断技术
- 收到中断信号后停止当前工作去处理外部事件,从原来工作的断点继续工作
- 通道技术
- 中断技术
分时操作系统
-
分时操作系统的背景
- 事务性任务的涌现
- 交互性高
- 响应迅速
- 要求支持多任务/多用户
- 多终端计算机
- 高性能主机+多个终端
- 主机:运算,CPU+内存
- 终端:输入和显示
- 主机采用分时技术轮流为每个终端服务,每个终端感觉到**独占*主机
- 事务性任务的涌现
-
概念:主机以很短的“时间片”为单位,把CPU轮流分配给每个终端使用,直到全部作业被运行完
- 等待周期 = 时间片 * 终端数量
-
分时系统的特点
- 多路调制性:多用户联机使用一台计算机
- 独占性:用户感觉独占计算机
- 交互性:及时响应用户请求
-
UNIX
- 第一个实用化的分时操作系用
- 实现了操作系统的可移植性
- 实现了硬件无关性
- 引进了“特殊文件”的概念
-
操作系统的进一步发展(分时系统的衍化)
操作系统的特性
- 并发性:同时处理多个任务的能力
- 共享性:为多个并发任务提供资源共享
- 不确定性:具有处理随机事件的能力
- 处理中断的能力
- 自动化处理的能力