承上计组 408的第二门操作系统 同样可搭配Java深入学习的总结
操作系统概述

概念性的东西偏多 我们分为四个讲解 尽量用图形总结
一.OS概念
操作系统官方性定义
我所理解 OS是程序 负责人和硬件之间的交互
OS应该具备的功能:
- 处理机管理(进/线程)
- 存储器管理(内存)
- 文件管理(文件)
- 设备管理(I/O)
上述同样是除了本章概述外 后四章OS探讨的问题
关于OS的接口作用
先看命令接口 即用户利用这些来组织和控制作业执行
根据作业控制方式的不同 分为:
- 联机命令接口(交互式命令接口)
OS被用户键盘输入命令 然后OS去干活 一条命令 干一件事 - 脱机命令接口(批处理命令接口)
用户提前写好要干的 然后OS去干活 一批清单 按照清单干事
再看程序接口 即一组系统调用(广义指令)组成
大致意思就是 用户调用的接口即系统调用请求OS服务 间接性
下面还会详细讲解系统调用
操作系统的特征:
- 并发
- 共享
- 虚拟
- 异步
重点是前两个 也是目前操作系统的基本特征
并发
并发:指两个或多个事件在同一时间间隔内发生
并行:同一时刻完成两种或两种以上的工作
并发和并行的区别
各个程序在某个时间间隔内并发执行 但是某一时刻 实际上只有一个程序在运行
宏观上在同时执行 微观上实际是程序分时交替执行的 而并行就是在同一时刻干多件事情

共享
即资源共享 系统中的资源可供内存中多个并发执行的进程共同使用
分为两种:互斥共享方式和同时访问方式
只总结互斥共享方式 另一种对照即可
虚拟
顾名思义 将物理实体 真的 变为 若干逻辑的对应物 就是假的
异步
一张图来搞定
大致就是并发的实行方式
二.OS发展历程

第一个没啥好说的
批处理OS
- 单道批处理OS
- 多道批处理OS
这里的道即完成几个作业
这里更需要区分 多道批处理OS 多任务OS 多处理器OS 多用户OS

分时OS和实时OS

分时OS就是为了及时快速响应用户 时间片分配使用
但有些场合需要在规定的时间内作出响应 这就是实时OS
其就是及时性和可靠性 在规定时刻内完成响应
网络OS 分布式OS
前者通过计算机网络实现资源共享 后者即多台计算机相互协同完成同一个任务
个人OS
就是现在流行的OS 如Windows MacOS Linux等
看一道题:

三.OS运行环境
三步走 用户态和内核态 特权和非特权指令 系统调用
1.用户态和内核态
关于用户态没啥好说的 主要看内核态
这里讲解 还有特权和非特权指令 为的就是后面总的总结系统调用过程

时钟管理负责计时和中断进行进程的切换
原语即底层一些可被调用的公用小程序
两者之间的转换
2.特权和非特权指令
即是否允许用户直接使用的指令

3.系统调用
重点来看这个过程
一图真相大白
用户态参数压栈 中断变成内核态 系统调用执行相应服务 返回用户态
每个系统调用都有唯一的系统调用号
注意:
内核态除了可以运行特权指令 还可以运行除访管指令之外的非特权指令
用户态变成内核态就是 发生中断
关于中断和异常未总结
前面计组总结够详细 参考:
https://www.cnblogs.com/gaodiyuanjin/p/19224363
https://www.cnblogs.com/gaodiyuanjin/p/19259843
四.OS结构 OS引导 虚拟机
1.OS结构
分层法
模块化
内聚性:模块内部各部分间的联系程度
耦合度:模块间的联系和影响
宏内核 微内核
注意:微内核添加系统服务无需修改内核
外核(虚拟)
作用就是为虚拟机分配资源并检查
2.OS引导
操作系统最终被加载到RAM中
3.虚拟机
没错就是跟我们开发常用的vmware有关
利用虚拟化技术 将一台物理机器虚拟化为多台虚拟机器
分为第一类虚拟机管理程序和第二类虚拟机管理程序
第一章仍然是概念性的 所以过多是理解性的概念 无太多题目整理
12.1日生病记为上午还行 越往后头脑越懵
















浙公网安备 33010602011771号