操作系统引论

news2024/10/2 14:36:04

操作系统是管理硬件和软件的一种应用程序。操作系统是运行在计算机上最重要的一种软件,它管理计算机的资源和进程以及所有的硬件和软件。它为计算机硬件和软件提供了一种中间层,使应用软件和硬件进行分离,让我们无需关注硬件的实现,把关注点更多放在软件应用上。

操作系统引论

1 操作系统的目标和作用

1.1 目标

方便性——便于理解计算机;通过接口方便地使用

有效性——提高系统资源利用率;提高系统吞吐量

开放性——OS应提供统一的开放环境,以实现应用的可移植性和互操作性不同的设备能通过网络加以集成,并能正确、有效地协同工作。

可扩充性——OS应方便修改、增加新模块或功能,以适应计算机硬件、 体系结构以及应用发展的要求。

1.2 作用

①提供用户与计算机硬件系统之间的接口

(1)命令方式:指由OS提供了一组联机命令 (语言), 用户可通过键盘输入有关命令,来直接操纵计算机系统。

(2)系统调用方式:OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来操纵计算机。

(3)图标–窗口方式:用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。

(4)其他方式

②计算机系统资源的管理者

在一个计算机系统中,硬件和软件资源归纳起来可分为四类:处理器、存储器、 I/O设备以及文件(数据和程序)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理。

②实现了对计算机资源的抽象

一台完全无软件的计算机系统(即裸机),即使其功能再强,也必定是难于使用的。比如打印,只要点击打印即可,不用管打印的资源管理。

2 操作系统发展过程

2.1 单道批处理系统

批处理是指用户将一批作业提交给操作系统后就不再干预,由操作系统控制它们自动运行。单道批处理系统在内存中只保持一道作业的批处理系统。

特征:(1) 自动性 (2) 顺序性 (3) 单道性

缺点: 系统资源利用不充分。这是因为在内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便处于等待状态,必须在其I/O完成后才能继续运行。又因I/O设备的低俗性,更使CPU的利用率显著降低。

2.2 多道批处理系统

多道程序设计:多个作业存放在主存中,使它们同时处于运行状态,这些作业共享处理机时间和外围设备等资源。

好处: 提高CPU的利用率;可提高内存和I/O设备利用率;增加系统吞吐量。

缺点:周转时间变长;无交互能力(比如有一个在打印,另一个打印只能等待。

2.3 分时系统

在操作系统中加入了分时技术:即将处理机的运行时间分为时间片,将时间片轮流分配给各联机作业使用。

用户的需求表现:人机交互(批处理系统做不到)。共享主机。便于用户上机。

特征:1.多路性 2.独立性 3.及时性 4.交互性

2.4 实时系统

所谓“实时”,是表示“及时”,而实时系统(RealTime System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

3 操作系统基本特性

3.1 并发

并行是指这一个时刻上面有着多个事件在执行,是一个瞬间的状态。

并发是指在某一段时间间隔以内有着多个事件同时进行。

3.2 共享

3.3 虚拟

是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的, 即实际存在的;而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、 虚拟外部设备和虚拟信道等。

3.4 异步

由于资源等因素的限制,使进程的执行通常都不是“一气呵成”, 而是以“停停走走”的方式运行。

内存中的每个进程在何时能获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需多少时间才能完成,等等,都是不可预知的。

由于各用户程序性能的不同,比如,有的侧重于计算而较少需要 I/O;而又有的程序其计算少而I/O多,这样,很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以人们不可预知的速度向前推进,此即进程的异步性

四大特征之间的联系:

  1. 并发在操作系统诞生之初就被设计了,用来解决单核CPU运行多个进程。

  1. 共享与并发互为存在意义

  1. 没有并发,虚拟就没有意义。

  1. 没有并发,就无法产生异步

4 操作系统运行环境

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

非特权指令:“管理程序”(即用户自编程序)出于安全考虑不能执行的指令。应用程序只能使用“非特权指令”,如:加法指令、减法指令等。

CPU 有两种状态,“内核态”和“用户态”

  • 处于内核态时,说明此时正在运行的是内核程序,此时可以执行特权指令

  • 处于用户态时,说明此时正在运行的是应用程序,此时只能执行非特权指

内核态、用户态 的切换

内核态→用户态:执行一条特权指令——修改 PSW 的标志位为“用户态”,这个动作意味着操作系统将主动让出CPU使用权

用户态→内核态:由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权。

内核程序和应用程序。前者是后者的管理者,因此“管理程序”(即内核程序)要执行一些特权指令,而“被管理程序”(即用户自编程序)出于安全考虑不能执行这些指令。

5 操作系统的主要功能

  1. 处理器管理(进程管理):主要控制和管理CPU的工作。

处理器管理最基本的功能是处理中断事件。处理器只能发现中断事件并产生中断而不能进行处理。配置了操作系统后,就可对各种事件进行处理。处理器管理的另一功能是处理器调度。处理器可能是一个,也可能是多个,不同类型的操作系统将针对不同情况采取不同的调度策略。也叫进程管理

  1. 存储管理:主要进行内存的分配和管理

存储器管理主要是指针对内存储器的管理。主要任务是:分配内存空间,保证各作业占用的存储空间不发生矛盾,并使各作业在自己所属存储区中不互相干扰。

  1. 设备管理:主要管理基本的输入输出设备

设备管理是指负责管理各类外围设备(简称:外设),包括分配、启动和故障处理等。主要任务是:当用户使用外部设备时,必须提出要求,待操作系统进行统一分配后方可使用。当用户的程序运行到要使用某外设时,由操作系统负责驱动外设。操作系统还具有处理外设中断请求的能力

  1. 文件管理:负责对计算机文件的组织、存储、操作和保护等。

文件管理是指操作系统对信息资源的管理。在操作系统中,将负责存取的管理信息的部分称为文件系统。文件是在逻辑上具有完整意义的一组相关信息的有序集合,每个文件都有一个文件名。文件管理支持文件的存储、检索和修改等操作以及文件的保护功能。操作系统一般都提供功能较强的文件系统,有的还提供数据库系统来实现信息的管理工作。

  1. 作业管理:是指对计算机所进行的操作进行管理

作业是指独立的、要求计算机完成的一个任务。操作系统的作业管理功能包括两点尸是在多道程序运行IC现货商时,使得备用户合理地共享计算机系统资源22是提供给操作人员一套控制命令用来控制程序的运行

6 操作系统的结构

典型的大内核/宏内核/单内核 操作系统: Linux、UNIX

典型的 微内核 操作系统: Windows NT

7 系统调用

参考资料:操作系统王道考研复习——第一章(计算机系统概述)-CSDN博客

讨论问题

  1. 操作系统的目标方便性和高效性是否一致?

方便性:便于理解计算机;通过接口方便地使用

有效性提高系统资源利用率;提高系统吞吐量

  1. 多道程序设计技术和分时技术的联系和区别?

  1. 并发和并行的区别是什么?

相同点:并发和并行的目标都是最大化CPU的使用率,将cpu的性能充分压榨出来。

不同点:

(1)并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在

(2)并行要求程序能够同时执行多个操作,而并发只是要求程序“看着像是”同时执行多个操作,其实是交替执行。

  1. 哪些指令是特权指令?

特权指令有以下几种:

1)允许和禁止中断,控制中断禁止屏蔽位

2)在进程间切换处理

3)存取用于主存保护的寄存器

4)执行I/O操作

5)停止一个中央处理器的工作

6)清理内存

7)设置时钟

8)建立存储键

9)加载PSW

5、请讨论操作系统各个功能中,最为重要的功能是什么?

处理器管理(进程管理):主要控制和管理CPU的工作。

处理器管理最基本的功能是处理中断事件。处理器只能发现中断事件并产生中断而不能进行处理。配置了操作系统后,就可对各种事件进行处理。处理器管理的另一功能是处理器调度。处理器可能是一个,也可能是多个,不同类型的操作系统将针对不同情况采取不同的调度策略。也叫进程管理

  1. OS的作用主要表现在哪几个方面?

有效性 方便性 可扩展性 开放性

  1. 什么是微内核OS?它具有哪些优点?

微内核操作系统,即实现了一个可在其上构建通用 OS 的基础内核,该内核程序运行在核心态,开机常驻内存。

当前微内核操作系统结构仍没有一致公认的定义,但可从以下4方面进行描述:

足够小的内核:微内核并非一个完整的OS。与硬件紧密相关,实现较基本功能,复杂客户和服务器通信

应用机制与策略分离原理:机制用于实现某一功能的具体执行机构,位于基层;策略借助某些参数和算法实现功能优化或达到不同功能目标,位于高层

采用面向对象技术

基于 C/S 模式

微内核包含的基本功能有:进程管理、低级存储管理、中断和陷入处理等,调度算法、虚拟内存的页面置换算法等都放入外部服务器中实现

优点

1) 灵活性高易扩展

2) 可靠性强

3) 可移植强

4) 提供了对分布式系统的支持

5) 便于维护

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

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

相关文章

嵌入式C语言设计模式 --- 外观模式

1 - 什么是外观模式? 外观模式(Facade Pattern),是一种比较简单的结构型模式,它存在的目的,也是为了简单。 外观模式隐藏了一系列接口的复杂性,旨在为外部客户端提供一个更高层次且统一简单的接口,简化了客户端调用某些模块的一系列操作。 外观模式应该是软件工程师…

Git入门使用详细笔记小白教程

Git入门使用详细笔记小白教程 一、克隆远程仓库到本地 1.复制远程仓库的地址到URL中: 二、本地和远程冲突 注意事项: 一定要在第二次修改提交到本地之前先pull远程的项目!!!不然就会本地和远程的项目起冲突。 冲突…

Selection bias mitigation in recommender system using uninteresting items学习笔记

0 简介 论文题目:Selection bias mitigation in recommender system using uninteresting items based on temporal visibility 发表情况:2023年,Expert Systems With Applications 论文地址:https://doi.org/10.1016/j.eswa.202…

Java_Maven:5. 把第三方 jar 包放入本地仓库或私服

目录 1 导入本地库 2 导入私服 3 参数说明 1 导入本地库 随便找一个 jar 包测试,可以先 CMD进入到 jar 包所在位置,运行 mvn install:install-file -DgroupIdcom.alibaba -DartifactIdfastjson -Dversion1.1.37-Dfile fastjson-1.1.37.jar -Dpackaging…

基于matlab使用深度学习的SAR目标分类

一、前言此示例演示如何创建和训练一个简单的卷积神经网络,以使用深度学习对 SAR 目标进行分类。深度学习是一种强大的技术,可用于训练健壮的分类器。它已经在从图像分析到自然语言处理的不同领域显示出其有效性。这些发展对SAR数据分析和SAR技术具有巨大…

YOLOv5简介

YOLOv5 一、输入端 1. Mosaic数据增强: CutMix 数据增强:随机生成一个裁剪框Box,裁剪掉A图中的相应位置,然后用B图相应位置的ROI放到A中被裁剪的区域中形成新的样本。采用加权求和的方式计算损失,将A区域中被cut掉的…

Kubernetes安全

Kubernetes RBAC授权 Kubernetes 安全框架 K8S安全控制框架主要由下面3个阶段进行控制,每一个阶段都支持插件方式,通过API Server配置来启用插件。1. Authentication(鉴权) K8s Apiserver提供三种客户端身份认证:• H…

JVM08执行引擎

执行引擎属于JVM的下层 执行引擎是Java虚拟机核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的,而虚拟机的执行引擎则…

JavaWeb5-线程常用属性

目录 1.ID 2.名称 3.状态 4.优先级 5.是否守护线程 5.1.线程类型: ①用户线程(main线程默认是用户线程) ②守护线程(后台/系统线程) 5.2.守护线程作用 5.3.守护线程应用 5.4.守护线程使用 ①在用户线程&am…

基础篇(-1)-java特点、JDK、JRE、JVM区别、字节码编译、跨平台、程序运行

文章目录1.Java的特点有哪些?2.JDK和JRE和JVM的区别3.Java为什么采用字节码编译?4.什么是跨平台?5.Java程序从源代码到运行需要三步?1.Java的特点有哪些? Java是一种编程语言,被特意设计用于互联网的分布式…

windwos安装spring-cloud-alibaba-nacos

windwos安装spring-cloud-alibaba-nacos前言一、预备环境二、下载源码或者安装包1.启动2.关闭总结前言 这个快速开始手册是帮忙您快速在您的电脑上,下载、安装并使用 Nacos。 一、预备环境 Nacos 依赖 Java 环境来运行。如果您是从代码开始构建并运行Nacos&#x…

[ vulhub漏洞复现篇 ] Drupal Core 8 PECL YAML 反序列化任意代码执行漏洞(CVE-2017-6920)

🍬 博主介绍 👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 养成习…

Django框架进阶版

一、Django介绍 1.起源 2005年发布,采用python语言编写的。 早期Django主要做新闻和内容管理 重量级python web框架,配备了大量组件 2.组件 包含组件如下 基本配置文件/路由系统 MTV设计模式 Cookies和Session 分页和发邮件 Admin管理后台 3…

2023美赛A题完整数据!思路代码数据数学建模

选取内蒙古河套灌区(典型干旱区)2010-2020年气温,降雨,蒸散发和水汽压月数据 包括四种主要作物及其占比 内容截图如下: 链接为:https://www.jdmm.cc/file/2708703 同时还提供参考代码和参考文章的选项~…

格式化字符串

组包&#xff1a;按照需要的格式组成字符串解包&#xff1a;解析特定格式的数据网络信息传输解析字符串的格式使用较多&#xff01;1、sprintf用于组包将零散的数据格式按照固定的格式组成字符串#include <stdio.h> int sprintf(char *str, const char *format, ...); …

博客排名的影响是什么? 说明优点、注册方法和推荐网站

如果您经营博客&#xff0c;您是否在博客排名网站上注册&#xff1f;博客排名网站是以排名格式介绍各种注册博客的网站。如果您注册博客&#xff0c;您将有更多机会被人们看到&#xff0c;并且可以期望增加访问权限。对于那些刚刚打开博客并担心访问量不会轻易增加的人来说&…

王道考研——计算机网络(第一章 计算机网络体系结构)

1.0认识计算机网络 在下载电影&#xff08;不会出现乱序问题&#xff09;和微信收发消息&#xff08;比如表情包乱序了&#xff09;所使用的协议是不同的 1.1-1概念和功能 &#xff08;1&#xff09;计算机网络的概念 &#xff08;2&#xff09;计算机网络的功能 &#xff08;…

酸回收树脂的应用

酸洗废水 在轧钢、金属表面处理、电子元件制造等过程中需要清除钢材表面氧化铁皮而使用酸进行酸洗&#xff0c;酸洗过程中会产生废酸液和酸洗废水。 这些废酸产量大、酸度高&#xff0c;而且由于酸洗废水来自钢铁和金属表面处理的清洗水&#xff0c;水中含有多种重金属离子&am…

2023年美赛F题

关键点1.绿色GDP(GGDP)是否比传统GDP更好好的衡量标准?2.如果GGDP成为经济健康的主要量标准&#xff0c;可能会对环境产生什么影响?3建立一个简单的模型&#xff0c;估计GGDP取代GDP作为经济健康的主要衡量标准&#xff0c;对减缓气候变化产生的影响。4.GGDP取代GDP可能会遇到…

复旦-华盛顿大学EMBA项目二十年20人丨赵中华:“拓荒”新天地

复旦大学-华盛顿大学EMBA项目20周年校友系列访谈。      从业十八载&#xff0c;赵中华的身上始终葆有一种开拓创新的拼劲和韧劲。身为德国威卡集团计量校准事业部中国区销售总监&#xff0c;他认为无论是在开辟新市场时勇敢接受不确定性带来的挑战&#xff0c;还是在遭遇新…