计算机基础笔记—操作系统

Posted 怪怪王

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机基础笔记—操作系统相关的知识,希望对你有一定的参考价值。

前言

不必害怕未知,无需恐惧犯错,做一个Creator!

目录

一、概述

定义: 计算机硬件和用户的一个接口,它使得其他程序更加方便有效地运行,并能方便地对计算机硬件和资源进行访问。
计算机系统: 硬件+软件
软件系统: 操作系统+应用程序
操作系统加载过程:
自举程序运行→操作系统装入内存→CPU运行操作系统

二、操作系统分类

批处理操作系统: 早期控制大型计算机,保证计算机所有资源从一个作业转换到另一个作业
分时系统: 将多个作业同时装入内存,仅当资源可用时分配给需要它的作业
并行系统: 多个CPU,多任务并行处理
分布式系统: 程序和资源在一个计算机运行一部分在另一台计算机运行另一部分
实时操作系统: 在特点时间限制内完成任务,常常用以应用程序监控、响应或控制外部过程和环境

三、组成部分

用户界面+内存管理+进程管理+设备管理+文件管理

用户界面

用来解释用户的输入,命令解释程序(shell)或窗口(GUI)

内存管理器

分区调度: 将内存分为不定长的几个分区,每个部分或者分区保存一个程序,程序完全载入,占用连续地址
分页调度: 内存和程序被分为大小相等的帧和页,程序在内存中的存储不必连续,但需要整个程序在运行前全部载入
请求分页调度: 在分页调度的基础上,程序无需全部载入
请求分段调度: 程序按照程序员的角度划分成段

进程管理

程序: 一组稳定的指令,存在于磁盘中
作业: 从一个程序被操作系统选中执行,其运行结束并再次成为一个程序的过程中,该程序称为作业
进程: 一个运行中的程序,运行于内存中

作业调度器: 将一个作业从保持状态转入就绪状态,或从运行状态转入终止状态
进程调度器: 将一个进程从一个状态转入另一个状态
队列: 为处理多个进程和作业,进程管理器使用队列存有作业和进程的信息

进程同步

只要资源可以被多个用户同时使用,那么它就可能有两种问题的状态:死锁和饿死
当操作系统没有对进程的资源进行限制时将会发生死锁,4个必要条件:
互斥: 一个资源只能被一个进程占有
资源占有: 一个进程占有一个资源,即使在获取其他资源之前无法使用它
抢先: 操作系统不能临时对资源重新分配
循环等待: 所有的进程和资源包含在一个循环里
饿死
发生在当操作系统对进程分配资源有太多限制的时候

设备管理

不停地监视所有的输入输出设备,维护输入输出设备一个队列,管理策略

文件管理

控制文件的访问,管理文件的创建、删除和修改,管理文件的存储

四、主流操作系统

UNIX

多用户、多道程序、可移植的操作系统,它被设计来方便编程、文本处理、通信
组成: 内核+命令解释器+标准工具/应用程序
内核: 内存管理、进程管理、设备管理、文件管理
命令解释器: 用户可见部分,解释和接收用户输入的命令
工具: Unix标准程序,为用户提供支持,如文本编辑器、搜索程序、排序程序
应用: 编写的对系统能力拓展的程序

Linux

内核+系统库+系统工具
系统库: 用于和内核交互的函数
系统工具: 使用系统库,执行管理任务各个程序

Windows

HAL+内核+执行者+环境子系统
硬件抽象层(HAL): 为上层隐藏了硬件的差异
内核: 面向对象软件的片段
执行者: 对象管理器、安全引用监控器、进程管理器、虚拟内存管理器、本地过程调用工具和IO管理
环境子系统


提示:仅供参考。若有错误不足,欢迎批评指正。该系列文章仅供参考,欢迎互相学习交流。

感谢你的阅读,期待你的关注收藏点赞!

《操作系统基础》笔记:概述

计算机组成和计算机体系结构

计算机体系结构是指那些能够被程序员所见的计算机系统的属性。

计算机组成是指如何实现计算机体系结构所体现的属性。

计算机五大部件

运算器用来完成算术运算和逻辑运算,并将运算中间结果暂存;

存储器用来存放数据和程序;

控制器用来控制、指挥程序和数据的输入、运行及处理运算结果;

输入设备,如键盘、鼠标;

输出设备,如显示器、打印机;

运算器和控制器在逻辑关系和电路结构上联系十分紧密,两者往往继承在同一芯片上,合起来称为中央处理器(Central Processing Unit,CPU)。输入和输出设备合称为I/O设备(Input/Output Equipment)。CPU和主存储器合称为主机,I/O设备又称为外部设备。

CPU的核心部件是算术逻辑单元(ALU)和控制单元(CU)。I/O设备也受CU控制。

主存储器

主存储器包括存储体、各种逻辑部件及控制电路等。存储体由许多存储单元构成。存储单元包含若干个存储元件(存储基元、存储元)每个存储元件能寄存一位二进制代码。

一个存储单元可以寄存一串二进制代码(存储字),其位数称为存储字长。数据和指令都存放在存储体内各自所占用的存储单元内

主存的工作方式就是按存储单元的地址号来实现对存储字各位的写入和读出(地址存取方式)。

为了实现按地址访问的方式,主存中还必须配置两个寄存器MAR(Memory Address Register)和MDR(Memory Data Register)。MAR是存储器地址寄存器,用来存放欲访问存储单元的地址,位数对应存储单元的个数。MDR是存储器数据寄存器,用来存放从存储单元取出或欲存入存储单元的代码,位数与存储字长相等。

想要完整地完成存取操作,CPU还得给主存加以各种控制信号。随着硬件技术的发展,主存都制成大规模集成电路的芯片,而将MAR和MDR集成在CPU芯片中。

运算器

运算器最少包括3个寄存器(或通用寄存器组)和一个算数逻辑单元(ALU)。这3个寄存器包括ACC(Accumulator)累加器、MQ(Multiplier-Quotient Register)乘商寄存器、X操作数寄存器。

控制器

控制器是计算机的神经中枢。具体而言,他首先要命令存储器读出一条指令(取指过程)。接着对这条指令进行分析,指出该指令要完成什么操作,并按寻址特征指明操作数地址(分析过程)。最后根据操作数地址以及指令的操作码完成某种操作(执行过程)。

控制器由程序计数器(Program Counter,PC)、指令寄存器(Instruction Register,IR)以及控制单元(CU)组成。

  • PC 用来存放当前欲执行指令的地址,它与主存MAR有一条直接通路,且具有自动加1的功能(自动形成下一条指令的地址)。
  • IR 用来存放当前指令,IR的内容来自主存的MDR。IR中的操作码送至CU控制单元,用来分析指令。其地址码送至主存MAR用来读出主存中对应地址的数据
  • CU 用来分析当前指令需要完成的操作,并发出各种微操作命令序列。

通过上述描述,基本可以有对于计算机执行指令的初步理解。

I/O设备

I/O子系统包括各种I/O设备及相应的接口。

每一种I/O设备由接口与主机联系,它接受控制单元CU发出的各种控制命令,并完成响应的操作。

计算机硬件的主要技术指标

(一)机器字长

机器字长是指粗能一次处理数据的位数,通常与CPU的寄存器位数有关。字节越长,数的表示范围越大,精度也越高。机器字长也会影响机器的运算速度。

机器字长对硬件的造价也有较大影响。机器字长的确定不能单从精度和数的表示范围来考虑。

(二)存储容量

存储器的容量包括主存容量和辅存容量。主存容量是指主存中存放的二进制代码的总位数(存储单元个数*存储字长,可以通过MAR和MDR的位数计算得到)。辅存容量通常用字节数表示。

(三)运算速度

计算机的运算速度与许多因素有关,如机器的主频、执行什么样的操作、主存本身的速度等。

现在的机器运算速度普遍采用单位时间内执行的指令平均条数来衡量,并用MIPS(Million Instruction Per Second,百万条指令每秒)作为单位,也可以用CPI(Cycle Per Instruction)即执行一条指令所需的时钟周期来衡量。.

以上是关于计算机基础笔记—操作系统的主要内容,如果未能解决你的问题,请参考以下文章

(软考笔记)—— 系统架构设计师 - 系统开发基础知识笔记

(软考笔记)—— 系统架构设计师 - 系统开发基础知识笔记

5214页PDF的进阶架构师学习笔记,offer拿到手软

Fast.Framework开发笔记一:系统的定位及架构控件选择

大数据系统架构师学习笔记

软考高级-系统架构设计师-知识点总结架构设计基础