操作系统学习
导论
坦白而言,在操作系统方面博主我也只是新手,唯一一点基础的知识是Patt老先生的LC-3系统的一些设计。这一套学习笔记中,主要是整理知识重点,同时也会分享一些个人的实验项目。
操作系统功能
1、方便用户使用。
2、资源使用优化调整。
计算机系统组织
操作系统
基础结构为:冯诺依曼是架构组件连接在总线上
操作系统协调各组件的运行
1、运行bootstrap引导程序
2、各种时间发生——硬软件的中断,硬件通过发出特殊信号,软件通过执行系统调用
关于中断相减Yale Patt的ICS教材
存储结构
程序必须在内存中存储才可运行
存储和运行模式一般是—— 内存《=》寄存器的模式进行的,利用load和store指令存取数据
此时我们需要增加辅助存储空间,存储设备分为易失存储和非易失性存储,区别在于断电后是否能继续保存信息,但这个差别主要源于备用电源的有无,以及交换数据的对象
I/O结构
总线讲IO设备和CPU连接
一般的IO设备有设置特殊的寄存器以记录当前的状态
当数据传输量过大的时候我们会采取特殊的机制——设计缓存区,配合DMA 直接内存访问的方法,设置好缓冲、指针和计数器之后我们就能无需CPU干预传输数据了
计算机系统体系结构根据
根据处理器的数量,我们做出如下分类:
单处理器系统
一个主CPU运行通用指令集
会有其他特定目的的处理器运行受限指令集
操作系统分配具体任务
克服了主CPU磁盘调度超载的问题
多处理器系统
多个紧密通信的CPU,共享系统的总线、时钟、内存和外设
具体如下几点优势:
- 增加吞吐量
- 规模经济 共享了外设、大存储内存和电源供给
- 增加可靠性 单个处理器的失灵不会导致系统的停止
许多系统中,我们考虑容错能力更多,我们将能提供与正常工作的硬件成正比的服务能力成为适度退化
现有的多处理器系统有两种类型:对称多处理SMP 和 非对称多处理
非对称多处理给每个处理器各自特定的任务,主处理器控制系统,其他的处理器受主处理器控制
对称与非对称多处理之间的差异可能是由于硬件或软件的原因
特定的硬件可以区分处理器,软件也可编写成选择一个处理器为主,其他的为辅