OS 学习笔记(3) 操作系统的发展与分类

news2024/10/6 16:29:49

OS 学习笔记(3) 操作系统的发展与分类

这篇笔记对应的王道考研 1.2 操作系统的发展与分类,同时参考了 《Operating System Concepts, Ninth Edition》和 《 Operating Systems: Three Easy Pieces》(俗称ostep)

文章目录

  • OS 学习笔记(3) 操作系统的发展与分类
  • 知识总览
  • OS的发展与分类
    • 手工操作阶段
    • 批处理阶段--单道批处理系统
    • 批处理阶段--多道批处理系统
    • 分时操作系统
    • 实时操作系统
    • 其他几种OS
  • 知识回顾与重要考点
  • 英文表达、术语积累(《操作系统概念》第九版、ostep 《OPERATING SYSTEMS THREE EASY PIECES》)jjjjjjjjjjjjjjjjjjb

知识总览

image-20221128125248715

OS的发展与分类

手工操作阶段

  • 主要缺点:用户独占全 机、人机速度矛盾导致资源利用率极低

image-20221128125550875

批处理阶段–单道批处理系统

操作系统的雏形

  • 引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出

  • 通过外围机把程序提前存到磁带里

在这里插入图片描述

  • 主要优点:缓解了一定程度的人机速度矛盾,资源利用率有所提升。
  • 主要缺点:内存中仅能有一道程序运行,只有 该程序运行结束之后才 能调入下一道程序。 CPU有大量的时间是在空闲等待I/O完成。资源利用率依然很低

在这里插入图片描述
在这里插入图片描述

串行

批处理阶段–多道批处理系统

在这里插入图片描述

  • 主要优点:多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资 源更能保持“忙碌”状态,系统吞吐量增大。
  • 主要缺点:用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行。eg:无法调试程序/无法在程序运行过程中输入一些参数

image-20221128125951443

分时操作系统

  • 分时操作系统

    • 计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。 主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在

      感觉似乎是自己的

    • 主要缺点

      • 不能优先处理一些紧急任务
      • 操作系统对各个用户/作业都是完全公平的,循环地为每个用户/ 作业服务一个时间片,不区分任务的紧急性。

实时操作系统

  • 实时操作系统

    • 主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
    • 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。实时操作系统的主要特点是及时性和可靠性
  • 实时操作系统的分类

    • 硬实时系统:必须在绝对严格的规定时间内完成处理
      • 例:导弹控制系统、自动驾驶系统
    • 软实时系统:能接受偶尔违反时间规定
      • 例:12306火车订票系统

其他几种OS

  • 网络操作系统:是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,实现数据传送等功能,实现网络中各种资源的共享(如文件共享)和各台计算机之间的通信。(如:Windows NT 就是 一种典型的网络操作系统,网站服务器就可以使用)
  • 分布式操作系统:主要特点是分布性和并行性。系统中的各台计算机地位相同,任何工作都可以分布在这些 计算机上,由它们并行、协同完成这个任务
  • 个人计算机操作系统:如 Windows XP、MacOS,方便个人使用。

知识回顾与重要考点

image-20221128130519655

特点优点缺点
手工操作阶段人机速度矛盾
单道批处理系统自动性
顺序性
单道性
缓解人机速度矛盾资源利用率低,吞吐量小
多道批处理系统多道
宏观上并行
微观上串行
多道程序并行,资源利用率高
系统吞吐量大
用户响应时间长
不提供人机交互能力
分时操作系统同时性 交互性 独立性 及时性提供人机交互能力不能在规定的时间内做出处理
实时操作系统硬实时系统:必须在绝对严格的时间内完成处理。如导弹控制系统,自动驾驶系统
软实时系统: 能偶尔接受违反时间规定, 如12306火车订票系统
能优先处理紧急任务

英文表达、术语积累(《操作系统概念》第九版、ostep 《OPERATING SYSTEMS THREE EASY PIECES》)jjjjjjjjjjjjjjjjjjb

  • mainframe systems 大型主机系统;大型电脑系统;大型机操作系统

  • batch processing 批处理任务

  • pioneer

    • 先驱,先锋,创始人

    • 拓荒者,开拓者,开发者

    • 做先锋,当开拓者,倡导

      • Thus, the idea of a system call was invented, pioneered by the Atlas computing system [K+61,L78].
  • procedure call 过程调用

  • take off 突然开始成功;开始走红

  • Where operating systems really took off was in the era(时代,新纪元) of computing beyond the mainframe, that of the minicomputer.

  • commonplace

  • **n.**老生常谈;常见的事;平常的事;平淡无奇的言语等

  • **adj.**平凡的;普通的;普遍的

  • **v.**把…记入备忘录;由备忘录中摘出

In particular, multiprogramming became commonplace due to the desire to make better use of machine resources. Instead of just running one job at a time, the OS would load a number of jobs into memory and switch rapidly between them, thus improving CPU utilization.

  • breed

    • **v.**交配繁殖;饲养;孕育;导致
    • **n.**品种(尤指人工培育的狗、猫或牲畜);种类

    Beyond the minicomputer came a new type of machine, cheaper, faster, and for the masses: the personal computer, or PC as we call it today. Led by Apple’s early machines (e.g., the Apple II) and the IBM PC, this new breed of machine would soon become the dominant force(主导力量) in computing, as their low-cost enabled one machine per desktop instead of a shared minicomputer per workgroup.

  • a great leap 一个巨大飞跃

  • DOS 磁盘操作系统 (disk operating system)

    • For example, early operating systems such as DOS (the Disk Operating System, from Microsoft) didn’t think memory protection was important; thus, a malicious(恶意的) (or perhaps just a poorly-programmed) application could scribble all over memory.

    • scribble

      • **v.**草草记下;胡写;乱画
      • **n.**潦草的文字;胡写乱画的东西

      “Scribble all over memory” 是指在内存中随意写入数据,它不保证数据的正确性,可能导致内存损坏或系统崩溃。应该可以翻译为 “随意写入内存” 或 “在内存中乱写数据”。

  • heyday 全盛期

  • it is good to see that the good ideas developed in the heyday of OS development have found their way into( 应该可以翻译为这些好的想法被采用/被引入到了现代世界中) the modern world.

  • aside

    • **adv.**留;存;到旁边;在旁边
    • n.旁白;低声说的话;离题话
  • underlie

    • **v.**构成…的基础;作为…的原因

    Underlying the original “Bell Labs” UNIX was the unifying principle of building small powerful programs that could be connected together to form larger workflows.

  • legal wrangling 法律纠纷

    • wrangle
      • **v.**争吵;通过争辩使某人… (into; out of)
        of building small powerful programs that could be connected together to form larger workflows.
  • legal wrangling 法律纠纷

    • wrangle
      • **v.**争吵;通过争辩使某人… (into; out of)
      • **n.**争吵;争论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/185257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构】堆的应用——TOP-K问题详解

目录 🍎前言🍎: 🥝一、TOP-K 问题概述🥝: 🍉二、不同解决思路实现🍉: ①排序法: ②直接建堆法: ③K 堆法(最优解)&a…

Redis简单入门

Redis简介 Redis是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value的NoSQL数据库。特点如下: 读写速度快:Redis官网测试读写能到10万左右每秒。速度快的原因这里简单说一下,第一是因为数据存储在内存中,我们知…

标准有效的项目开发流程

代码版本管理在项目中,代码的版本管理非常重要。每个需求版本的代码开发在版本控制里都应该经过以下几个步骤。在master分支中拉取该需求版本的两个分支,一个feature分支,一个release分支;feature分支用于接受个人分支merge过来的…

二叉树DFS、BFS

目录 1,DFS遍历 2,DFS遍历OJ实战 力扣 144. 二叉树的前序遍历 力扣 94. 二叉树的中序遍历 力扣 145. 二叉树的后序遍历 力扣 105. 从前序与中序遍历序列构造二叉树 力扣 106. 从中序与后序遍历序列构造二叉树 力扣 889. 根据前序和后序遍历构造二…

C++中的new、operator new与placement new

new operator 当我们使用了new关键字去创建一个对象时,你知道背后做了哪些事情吗? A* a new A;实际上这样简单的一行语句, 背后做了以下三件事情: 分配内存,如果类A重载了operator new,那么将调用A::operator new(…

TencentOS安装并运行多版本php

TencentOS版本3.1安装并运行php7,现在需要同时运行一个php8. php选择使用了php v8.0.27 采用编译安装的方式,编译命令如下: ./configure --prefix/application/php8 --with-config-file-path/application/php8/etc --with-mhash --with-o…

51单片机学习笔记-4矩阵键盘

4 矩阵键盘 [toc] 注:笔记主要参考B站江科大自化协教学视频“51单片机入门教程-2020版 程序全程纯手打 从零开始入门”。 注:工程及代码文件放在了本人的Github仓库。 4.1 矩阵键盘介绍 在键盘中按键数量较多时,为了减少I/O口的占用&#…

vuex中 this.$store.dispatch() 与 this.$store.commit()

一、理解 this.$store.dispatch 分发 actions-> 调用 mutations->改变 states 二、思考 1、为什么不直接分发 mutation mutation 有必须同步执行的限制,而 Action 不受约束,可以在 action 内部执行异步操作2、Action 通常是异步的,…

配置日志输出到指定位置的文件,单独报错error级别以上的日志,按日志类别打印日志

目录1.配置文件2.测试程序:工具:log4j的jar包、配置文件log4j.properties(文件名自定义)、eclipse或IDEA 更多参考:https://www.cnblogs.com/ITtangtang/p/3926665.html、 1.配置文件 新建一个配置文件log4j.properties(我把它放…

区块链游戏走出一地鸡毛,元宇宙3D国风链游或成最大受益者

曾推出过《Cytus》《Deemo》《聚爆》等知名游戏的雷亚,其CEO游名扬在接受采访时曾谈到,游戏产业是文化产业加上科技产业的组合体,这两者是组成游戏产业的主要部分。看游戏的趋势,就要针对文化和科技的趋势上来看。 这话没错。 20…

flutter StreamController,ValueListenableBuilder,NotificationListener

FutureBuilder &#xff08;异步数据更新&#xff09; StreamBuilder &#xff08;异步数据更新&#xff09; 构造函数 特点 接收多个异步操作的结果class StreamBuilder<T> extends StreamBuilderBase<T, AsyncSnapshot<T>>{}单订阅&#xff1a;StreamCo…

在Linux中进行Hbase搭建

在公网IP为x.x.x.x、y.y.y.y和z.z.z.z并装有Centos8的服务器上进行hadoop集群搭建、zookeeper集群搭建和hbase搭建&#xff0c;都安装hadoop-3.1.3、server-jre-8u202-linux-x64、apache-zookeeper-3.6.4-bin和hbase-2.5.0-bin。 环境准备&#xff08;三台服务器都一样&#x…

基于javaweb宠物领养平台管理系统设计和实现

基于javaweb宠物领养平台管理系统设计和实现 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java毕设项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码联系方…

C++基础——C++ 判断

C基础——C 判断C 判断判断语句C if 语句语法流程图? : 运算符C 判断 判断结构要求程序员指定一个或多个要评估或测试的条件&#xff0c;以及条件为真时要执行的语句&#xff08;必需的&#xff09;和条件为假时要执行的语句&#xff08;可选的&#xff09;。 下面是大多数编…

DAMA数据管理知识体系指南之数据管理概述

第2章 数据管理 2.1 引言 2.2 使命和目标 使命 在信息的可用性、安全性和质量方面&#xff0c;满足并超越企业中所有利益相关者的信息要求。 战略目标 &#xff08;1&#xff09;理解企业和所有利益相关者的信息需求。 &#xff08;2&#xff09;获取、存储、保护和确保数据资…

堆的结构及函数接口、堆排序,TopK

本篇内容涉及到二叉树的概念及性质&#xff0c;可参考文章 树和二叉树的概念及性质 文章目录一、堆的概念二、堆的存储结构三、堆的函数接口1. 初始化及销毁2. 打印函数3. 堆的插入4. 堆的删除5. 取堆顶、判空、数据个数四、建堆算法和时间复杂度1. 向上调整建堆2. 向下调整建堆…

CTFshow--web--红包题第二弹

查看源代码&#xff0c;按注释提示&#xff0c;构造参数试试?cmdaa<?php #error_reporting(0); ?> <html lang"zh-CN"><head><meta http-equiv"Content-Type" content"text/html; charsetUTF-8" /><meta name&quo…

MATLAB绘制爱心曲线并导出

MATLAB绘制爱心曲线并导出 爱心曲线的表达式&#xff1a; f(x)x2/3e3(π−x2)1/2sin(aπx)f(x)x^{2/3}\frac e 3(\pi-x^2)^{1/2}sin(a\pi x) f(x)x2/33e​(π−x2)1/2sin(aπx) f (x,a)x.^2.^(1/3)exp(1)/3*(pi-x.^2).^(1/2).*sin(a*pi*x); h figure(color,[1 1 1]); set(g…

应用系统与钉钉集成案例及操作步骤

1、准备钉钉应用 1.1、注册钉钉账号 作为钉钉的企业管理员&#xff0c;首先登录钉钉官网&#xff0c;注册一个钉钉账号。 如果已经有账号&#xff0c;则直接使用即可。 钉钉官网&#xff1a;https://www.dingtalk.com/ 1.2、开通企业团队 企业管理员使用账号登录钉钉。 如…

如何限制docker容器使用内存大小

本文介绍如何通过docker运行参数配置限制docker容器可以使用的内存上限。docker容器默认可以使用全部宿主机的所有内存和 swap 分区&#xff0c;比如宿主机的内存是32G&#xff0c;则运行一个docker容器最多可以分配到32G内存&#xff0c;如果启用了多个docker容器&#xff0c;…