定义:一组控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序
把底层硬件抽象成人容易理解操作理解的接口
安卓等系统是基于linux开发,严格意义上不是一个操作系统,是linux包了一层外壳在给用户使用。
操作系统的特征:
并发:两个或多个活动在同一给定的时间间隔中进行
共享:计算机系统中的资源被多个进程所共用
异步:进程以不可预知的速度向前推进
虚拟:把一个物理上的实体变为若干个逻辑上的对应物(把硬件抽象成人理解的接口)
最基本特征:并发、共享(两者互为存在条件)
单核CPU中,同一时刻只有一个进程可以运行,一个时间段内可以有多个,谁先谁后,谁什么时候停换另一个是不可预知的,此为异步
有并发基本上有异步
并发并行区别:并发同一时间,一个程序在跑,一个时间段内,每个跑一下。 而并行则是,同一时间内多个程序在跑。
操作系统功能:
处理机管理:主要有进程控制、进程同步、进程通信、死锁处理、处理机调度等
存储器管理:主要有内存分配、地址映射、内存保护与共享和内存扩充等功能
文件管理:主要有文件存储空间的管理、目录管理、文件读写管理和保护等
设备管理:缓冲管理、设备分配、设备处理和虚拟设备等
简答题多一个空记得写用户接口
操作系统发展史:
手工操作阶段(此时无操作系统缺点、人机速度矛盾批处理阶段)
1、单道批处理阶段:一次只能做一个,其他要等,资源利用率低
2,多道批处理,解决资源低利用率:多个作业进行,放好了就固定了,不可更改。缺点:不提供人机交互能力(缺少交互性)
分时操作系统:不可以插队,有了人机交互 缺点:不能处理紧急事务
实时操作系统:可以插队
1,硬实时系统:必须在被控对象规定时间内完成(比如导弹拦截,必须在这个时间内执行)
2,软实时系统:可以松一些(比如订票)
优点:能优先处理紧急任务,从可靠性看实时操作系统更强,从交互性看分时操作系统更强
Windows操作系统的体系结构采用了分层的模块结构,主要层次有硬件抽象层HAL、内核、执行体,系统进程和 系统线程。
操作系统的结构:简单结构、整体式 层次式 微内核
简单结构:
ROM(只读内存中的基本设备驱动)
设备驱动
常驻系统服务(系统基本功能)
应用程序
存在问题: 没有模块化(应用可以直接调用硬件指令、代码混杂、不好修改)、维护升级难(有bug整个系统影响、增新要改多个部分易出错、稍改影响整个系统稳定性)、安全性差(程序一个级别没权限隔离、程序可操作硬件容易破坏和被攻击)、不适合复杂系统(代码多系统臃肿、无法多任务多用户复杂需求、结构太扁平功能集中)
整体式结构:把操作系统所有核心功能系在一个统一大模块中,所有服务运行在同一空间内核程序中。
特点:
1,所有核心服务都运行在内核态(不划模块运行层级、不同功能可以直接调用和通信)
2,使用系统调用作为用户和内核之间的接口(用户无法直接操作硬件、调用进入内核由对于模块处理请求)
缺点:
1,易出错(所有服务在一个内核里,一个环节出错系统会崩)
2,不易维护(功能耦合紧密、代码庞大、修改更新困难)
3,安全性低(所有模块都能访问系统资源、缺乏隔离保护机制)