一.引论
1. 基本定义
操作系统是配置在计算机硬件系统上的第一层软件,是对硬件进行的首次扩充,其目的是管理好这些硬件设备,并提高他们的利用率和系统的吞吐量
2. OS目标:方便性、有效性、可扩充性、开放性
1>方便性:一个为配置计算机系统的计算机是极难使用的,操作系统方便了用户使用和学习
2>有效性:第一层含义是提高资源的利用率(资源:处理机、内存、各种I/O设备),
第二层含义是提高系统的吞吐量:通过合理的组织计算机工作流程,加速程序的运行
3>可扩充性:适应计算机硬件、体系结构、计算机应用的发展要求
4>开放性:系统遵循国际的各种标准
3. 操作系统的作用
1> 作为用户与计算机硬件系统之间的接口
2> 作为计算机资源的管理者
3> 实现了计算机资源的抽象
4. 计算机的发展动力
1> 不断的提高计算机资源的利用率
2> 方便用户
3> 器件的不断更新换代
4> 不断提出新的应用要求
5> 计算机体系结构的不断发展
5. 操作系统的发展过程:
1> 人工操作:最落后的,资源利用率极度低
2> 脱机输入输出:仅仅解决了CPU和I/O系统不匹,配提高了I/O速度,减少CPU空闲时间
3> 单道批处理系统:解决了人机矛盾和CPU与I/O速度不匹配问题
4> 多道批处理系统:进一步提高了系统的资源利用率和吞吐量,加入了后备队列
5> 分时系统:满足人机交互的需求
6> 实时系统:实现在规定事件内完成一项任务
7> 微机操作系统(单用户单任务--->单用户多任务--->多用户多任务):这是随着微处理芯片出现应运而生和发展的系统
6. 操作系统的基本特性:
1> 并行和并发:并行两个或多个事件是在同一时刻发生,并发是两个或多个在同一时刻发生(现在可以达到并行处理,在单处理机时只能并发执行)因为要并发执行资源分配的基本单位------进程(现在有引入了线程,为了适应多处理机的系统)
2> 共享:系统中的资源被多个并发执行的进程共同使用(如果是临街资源则是互斥共享:大多数的物理设备、栈、变量和表格,不是临界资源可以在宏观上共享使用)
3> 虚拟:通过某种技术把一个物理实体虚拟成若干个逻辑上的实体(通常用到时分复用:利用某设备为一个用户服务的空闲时间来为另外的用户服务 和空分复用:把一个物理实体划分为多个逻辑实体)
7. 操作系统的主要功能
1> 处理机管理功能:分为进程控制、进程同步、进程通信、调度:作业(一个或者多个进程组成一个作业)调度、进程调度
2> 存储器管理功能:内存分配、内存保护、地址映射、内存扩充
3> 设备管理功能:缓冲管理:主要是弥补cpu和I/O设备的速度不匹配,设备分配:接受和响应I/O请求、设备处理:通过驱动程序实现cpu和设备的通信
4> 文件管理:文件的存储空间管理、目录管理、文件的读写管理和保护
8. 操作系统的接口
1> 用户接口:联机用户接口:一台主机连接多个控制台,多个用户键入命令交给主机处理,处理结果返回到终端。脱机用户接口:多到批处理用户把作业和说明书交给系统,一起提供给系统,直至作业完成。图形用户接口:抽象具体化,把功能通过图标实现,点击图标即可实现不同的操作的命令
2> 程序接口:为用户方便方位系统资源而设置的,是用户取得操作系统服务的唯一途径
9. 现在操作系统的新功能
1> 系统安全:提供了密码技术、认证技术、访问控制技术、反病毒技术,是操作系统和各类资源运行安全(重点是存储和数据传输安全)
2> 网络的功能和服务:网络通信、资源管理(网络里的共享资源)、应用互操作
3> 支持多媒体:处理文字、图像、声音、和视频等功能 有接纳控制功能、实时调度功能、多媒体文件的存储功能
10. 操作系统的结构
1> 刚刚开始是没有结构的OS
2> 之后出现了模块化结构的OS:使操作系统的歌功能成为不同的模块(如文件管理模块,进程管理模块,存储器管理模块),各个模块之间有接口相互连接,各个模块有分为多个子模块
3> 发展到一定程度之后出现了分层结构的OS:如windows的应用软件要运行在windows的系统上,通过windows来链接底层的硬件
4> 之后为了适应互联网的需求,出现了客户服务器模式C/S:有客户机:平时处理一些本地,也可以发送一个消息给服务器,请求服务、服务器:驻留有网络文件系统和数据库管理系统、网络系统:能在网上提供用户一种或者多种服务三部分组成、
11. 微内核的发展
1> 基本概念:是精心设计的,能实现现代OS基本功能的小型内核,他基于客户/服务器模式,也把机制和策略分离(机制:实现某一功能的具体执行机构,策略:在机制上借助某些参数和算法实现功能优,同时他依然采用了面向对象的技术
2> 微内核的基本功能:进程(线程)管理、低级存储管理、中断和陷入处理、
3> 优点:提高了系统的可扩展性、增强了系统可靠性、可移植性强、提供了对分布式系统的支持、融入了面向对象技术