【操作系统】24王道考研笔记——第一章 计算机系统概述

第一章 计算机系统概述

一、操作系统基本概念

1.1 定义

1.2 特征

并发

(并行:指两个或多个事件在同一时刻同时发生)

共享

(并发性指计算机系统中同时存在中多个运行着的程序,共享性指系统中的资源可供内存中多个并发执行的进程共同使用)

虚拟

异步

并发和共享互为存在条件。没有并发和共享,就谈不上虚拟和异步,因此并发和共享是操作系统的两个最基本的特征

1.3 目标和功能

1.作为计算机系统资源的管理者

  • 处理机管理
  • 存储器管理
  • 文件管理
  • 设备管理

2.作为用户与计算机硬件系统之间的接口

  • 命令接口(分为联机命令接口(交互式命令接口),脱机命令接口(批处理命令接口))
  • 程序接口(由一组系统调用(也成广义指令)组成

3.实现对计算机资源的扩充

二、操作系统发展分类

手工操作阶段

批处理阶段

分时操作系统

实时操作系统

其他:网络操作系统、分布式计算机系统、个人操作系统(目前最广泛Windows、Linux...)

三、操作系统运行环境

3.1 运行机制

内核程序和应用程序:我们普通程序员写的程序就是"应用程序"。由很多内核程序组成了"操作系统内核",或简称"内核(Kernel)" 内核是操作系统最重要最核心的部分,也是最接近硬件的部分。甚至可以说,一个操作系统只要有内核就够了。内核程序是应用程序的管理者。

特权指令:不允许用户直接使用的指令,如I/O指令、置中断指令、存取用于内存保护的寄存器、送程序状态字到程序状态字寄存器等指令。

非特权指令:允许用户直接使用的指令,不能直接访问系统中的软硬件资源,仅限于访问用户的地址空间,防止用户程序对系统造成破坏。

内核态和用户态:

内核态用户态的切换:

总结:

3.2 中断与异常

中断的作用:

中断的分类:

基本原理:不同的中断信号,需要用不同的中断处理程序来处理。当CPU检测到中断信号后,会根据中断信号的类型去查询"中断向量表",以此来找到相应的中断处理程序在内存中的存放位置。

总结:

3.3 系统调用

定义:

按系统调用功能分类:

过程:

总结:

四、操作系统结构

操作系统结构图:

内核:

操作系统内核需要运行在内核态,操作系统的非内核功能运行在用户态

大内核与微内核:

总结:

不同的体系结构:

五、操作系统引导

指计算机利用CPU运行特定程序,通过程序识别硬盘,识别硬盘分区,识别硬盘分区上的操作系统,最后通过程序启动操作系统,一环扣一环完成上述过程。

常见引导过程:

  1. 激活CPU
  2. 硬件自检
  3. 加载带有操作系统的硬盘
  4. 加载主引导记录MBR
  5. 扫描硬盘分区表
  6. 加载分区引导记录PBR
  7. 加载启动管理器
  8. 加载操作系统

六、虚拟机

虚拟机:使用虚拟化技术,将一台物理机器虚拟化为多台虚拟机器(Virtual Machine, VM),每个虚拟机器都 可以独立运行一个操作系统。同义术语:虚拟机管理程序/虚拟机监控程序/Virtual Machine Monitor/Hypervisor

两类VMM:

主要参考:王道考研课程

后续会持续更新考研408部分的学习笔记,欢迎关注。

github仓库(含所有相关源码):408数据结构笔记

相关推荐
今天背单词了吗9801 小时前
算法学习笔记:16.哈希算法 ——从原理到实战,涵盖 LeetCode 与考研 408 例题
笔记·学习·算法
梁辰兴1 小时前
企业培训笔记:axios 发送 ajax 请求
前端·笔记·ajax·vue·axios·node
DKPT2 小时前
Java观察者模式实现方式与测试方法
java·笔记·学习·观察者模式·设计模式
鲁子狄2 小时前
[笔记] 动态 SQL 查询技术解析:构建灵活高效的企业级数据访问层
java·spring boot·笔记·sql·mysql·mybatis
ChongYu重玉2 小时前
【node/vue】css制作可3D旋转倾斜的图片,朝向鼠标
javascript·css·vue.js·经验分享·笔记·node.js·vue
饕餮争锋5 小时前
设计模式笔记_结构型_代理模式
笔记·设计模式·代理模式
序属秋秋秋5 小时前
《C++初阶之STL》【泛型编程 + STL简介】
开发语言·c++·笔记·学习
特种加菲猫6 小时前
构建完整工具链:GCC/G++ + Makefile + Git 自动化开发流程
linux·笔记·git·自动化
Jackyzhe13 小时前
Flink学习笔记:整体架构
笔记·flink
徒 花13 小时前
初级网安作业笔记1
笔记