软考学习笔记--操作系统概述

操作系统是计算机系统中最重要,最基本的系统软件,它位于硬件和用户之间,一方面可以向用户提供接口,方便用户使用计算机;另一方面能管理计算机软硬件资源,以便充分利用他们。从资源管理的角度来看,它是计算机系统中的资源管理器,负责对系统的软硬件资源实施有效的控制和管理,提高系统资源的利用率;从方便用户使用的角度来看,操作系统是一台虚拟机,它是计算机硬件的首次扩充,隐藏了硬件操作细节,使用户与硬件细节隔离,从而方便了用户的使用。

1.操作系统概述

操作系统是控制和管理计算机软硬件资源,以尽可能合理,有效的方法组织多个用户共享多种资源的程序集合。它具有并发性,共享性,虚拟性和不确定性等特点,一般的操作系统都具有处理机管理,存储器管理,设备管理,文件管理和用户接口等5种主要功能。

1.1处理机管理。负责对处理机的分配和运行实施有效的管理。在多道程序环境下,处理机的分配和运行是以进程为基本单位的。因此,处理机管理可以归结为进程管理。

1.2存储器管理。存储器管理的主要任务是对内存进行分配,保护和扩充。

1.3设备管理。设备管理应具有设备分配,设备传输控制和设备独立性等功能。其中设备分配是指根据一定的原则对设备进行分配,为了使设备与主机并行工作,通常采用缓冲技术和虚拟技术。

1.4文件管理。负责对文件存储空间进行管理,包括存储空间的分配和回收,目录管理、文件操作管理和文件保护等功能。

1.5用户接口。为了使用户能灵活方便使用计算机和系统功能,操作系统还提供一组友好的使用其功能的手段,称为用户接口,包括两大类,分别是程序接口和操作接口。用户通过这些接口能方便地调用操作系统的功能,有效的组织作业和处理流程,并使整个系统能高效运行

2.操作系统的类型

一般来说,操作系统可分为单用户操作系统,批处理系统,分时系统,实时系统、网络操作系统,分布式操作系统,并行操作系统和嵌入式操作系统等。

2.1单用户操作系统

单用户操作系统的基本特征是在一台处理机上只能支持一个用户程序的运行,系统的全部资源都提供给改用户使用。多数微机上运行的操作系统都属于单用户操作系统。

2.2批处理系统

批处理系统也称为作业处理系统。在批处理系统中,作业成批装入计算机中,由操作系统在计算机的输入并将其组织好,按一定的算法选择其中的一个或多个作业,将其调入内存并使其运行。运行结束后,把结果存入磁盘输出井,由计算机统一输出后交给用户。

2.3 分时操作系统

为了解决批处理系统无法进行人工交互的问题,并使用多个用户能同时通过自己的终端以交互式使用计算机,共享主机中的资源,为此,系统中采用了分时技术,即把CPU的时间划分成很多的时间片,轮流地分配给各个终端作业使用。这种操作系统就称为分时操作系统。

分时操作系统具有多路性,独立性,及时性、交互性和同时性等特征。

2.4 网络操作系统

网络操作系统是指在计算机网络环境下,具有网络功能的操作系统。计算机网络是一个数据通信系统,它把地理上分散的计算机和终端设备连接起来,达到数据通信和资源共享的目的。网络操作系统最主要的特点是网络中各种资源的共享,以及各台计算机之间的通信。

2.5 分布式操作系统

分布式系统是由多台计算机组成的系统,系统中若干台计算机可以相互合作,共同完成一个任务。在分布式系统中,任意两台计算机之间都可以利用通信来交互数据,系统中的资源为所有用户共享。分布式系统的优点是各节点的自治性好,资源共享的透明性强,各节点具有协同性,其主要缺点是系统的状态不精确,控制机构复杂,通信开销会引起性能的下降。

2.6嵌入式操作系统

嵌入式操作系统运行在嵌入式智能芯片环境中,对整个智能芯片和它所有操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制。嵌入式操作系统具有微型化、可定制、实时性、可靠性,易移植性这些特点。嵌入式实时操作系统是指系统能及时响应外部事件的请求,在规定时间内完成对该事件的处理。

3.操作系统的结构

从操作系统的结构来看,主要有整体结构,层次结构,客户/服务器结构和面向对象结构等。

3.1整体结构

整体结构也称为模块组合结构或无序结构,是基于结构化程序设计的一种软件设计方法。

设计思想步骤如下:

  1. 把模块作为操作系统的基本单位,按照功能将整体系统分解为若干个模块,明确各个模块之间的接口关系,各模块之间可以不加控制地自由调用。
  2. 分别设计、编码、调试各个模块
  3. 将所有模块连接成一个完整的系统。

整体结构设计方法的优点如下:

  1. 结构紧密、组合方便,灵活性大
  2. 针对某个功能可用最有效的算法和任意调用其他模块中的过程实现,系统效率高。
  3. 各模块设计及编码可以并行,可以加快操作系统的研制过程。

整体结构设计方法的缺点如下:

模块独立性差,模块之间牵连多,调用关系复杂,系统结构不清晰,可靠性降低。对系统的修改比较困难。

3.2 层次结构

层次结构是将操作系统划分为内核和若干模块,这些模块按功能的调用次序排列成若干层次,各层之间只能是单向依赖或单向调用关系,及底层为高服务,高层可以调用底层的功能,反过来则禁止。

层次结构优点:

因此整个系统中的接口比其它结构方式的接口要少、简单。增加,修改或替换一个层次不会影响其它层次,有利于系统的维护和扩展。

层次结构缺点:分层单向依赖,必须要建立模块之间的通信机制,系统花费在通信上的开销较大,系统效率有所降低。

3.3 客户/服务器结构

现代操作系统大多拥有两种工作状态,分别是说核心态和用户态。一般应用程序工作在用户态你,而内核模块和最基本的操作系统核心工作在核心态。

客户/服务器结构也称为微内核结构。操作系统将传统的操作系统代码放置到更高层,从操作系统中去掉尽可能多的东西,留下一个最小的核心,称为微内核。通常的方法是将大多数操作系统功能由在用户态的服务器进程来实现。为了获取某个服务,用户进程将请求发送给一个服务进程,服务进程来完成这个操作后,把结果返回给用户进程。

优点:某个服务的奔溃不会导致整个系统的奔溃,更适用于分布式系统。

  1. 统一的接口,在用户态和核心态之间无需进程识别。
  2. 可伸缩性好,适应硬件和应用的更新变化。
  3. 可移植性好。
  4. 实时性好
  5. 安全可靠性高
  6. 支持分布式系统

3.4 面向对象结构

面向对象结构被广泛应用于操作系统的设计和实现中,特别是在网络操作系统和分布式操作系统中。面向对象的操作系统中的对象是操作系统管理的信息和资源的抽象,可以被视为受宝华的信息或资源的总称。面向对象结构有自己的状态和存储空间,而且其状态只能由事先定义好的操作来改变,而改变这些对象状态的操作又需要其他对象发送相应的消息才能被启动。

 

 

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

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

相关文章

Open CASCADE学习|模块组成

OpenCASCADE由七个模块组成,分别如下: Foundation Classes基础类 Modeling Data 建模数据 Modeling Algorithms 建模算法 Visualization 可视化 Data Exchange 数据交换 Application Framework 程序框架 Kernel Classes 核心类 2D Geometry 二维几…

nginx(1.13.7)首次安装出现:【make: *** 没有规则可以创建“default”需要的目标“build” 问题】解决措施

目录 前言: 一.龙蜥(Anolis)操作系统上安装GCC 1.安装gcc 2.检验安装 二.安装出现 make: *** 没有规则可以创建“default”需要的目标“build” 问题 1.解压安装nginx 2.安装出现问题展示 3.解决措施 4.重新编译进行安装 5…

yolov5-6.0 tensorrt推理

CMakeLists.txt cmake_minimum_required(VERSION 3.0) # CMake最低版本要求,低于2.6的构建过程会被终止set(CMAKE_CXX_STANDARD 14) #opencv4以上加此句 set(CMAKE_CXX_STANDARD 14) project(cmake_test) # 定义工程名称 find_package(OpenCV REQUIRED) …

【Sublime Text】| 01——下载安装注册

系列文章目录 【Sublime Text】| 01——下载软件安装并注册 【Sublime Text】| 02——常用插件安装及配置 失败了也挺可爱,成功了就超帅。 文章目录 前言1. 下载2. 安装3. 注册3.1 通过修改应用程序注册3.2 通过替换应用程序注册 感谢 前言 轻量代码编辑器有很多 之…

国家发改委:《电能质量管理办法(暂行)》2024年4月1日起施行

中华人民共和国国家发展和改革委员会令 第8号 《电能质量管理办法(暂行)》已经2023年12月26日第7次委务会议审议通过,现予公布,自2024 年4月1日起施行。 主任 郑栅洁 2023年12月27日 电能质量管理办法(暂行) 第一章 总则 第一条 为加强电能质量管理&…

中小型企业如何在当今的商业环境中占得一席之地?

在电商新零售的浪潮下,一种全新的消费模式正在崭露头角——消费增值模式。这种模式不仅改变了消费者的购物体验,更在电商领域掀起了一场革命。本文将通过具体数据,为您揭示消费增值模式的魅力。 一、消费增值模式的奥秘 消费增值模式的核心在…

【DevOps-08-2】Harbor的基本操作

一、简要描述 Harbor作为镜像仓库,主要的交互方式就是将镜像上传到Harbor上,以及从Harbor上下载指定镜像 在传输镜像前,可以先使用Harbor提供的权限管理,将项目设置为私有项目,并对不同用户设置不同角色,从而更方便管理镜像。 二、Harbor添加用户和项目 1、添加Harbor用…

一篇文告诉你:到底该如何搭建好企业知识库

全球化的竞争环境和瞬息万变的市场使得企业需要一种管理和整合各种信息与知识的方式。这就是企业知识库,一种核心资源,能够帮助企业提升工作效能,并更好地支持决策、创新和学习。但是,如何优化知识库,让它成为企业的有…

迁移学习的最新进展和挑战

随着深度学习和人工智能技术的飞速发展,迁移学习作为一种有效的机器学习方法,已经在各个领域取得了显著的成果。迁移学习是指将一个领域(源领域)的知识应用到另一个领域(目标领域),以提高目标领…

spark基础--学习笔记

1 spark 介绍 1.1 spark概念 Apache Spark是专为大规模数据处理而设计的快速通用的分布式计算引擎,是开源的类Hadoop MapReduce的通用分布式计算框架。和MapReduce一样,都是完成大规模数据的计算处理。 简而言之,Spark 借鉴了 MapReduce思…

在1G的内存中,对百亿个QQ号去重?

文章目录 一、公共方法1、生成模拟QQ号2、读取数据文件3、测试方法 二、HashSet三、Java8的Stream四、Segment五、BloomFilter六、BitMap七、总结 假设QQ号是int类型,那么最多可以有4294967295个,就是43亿左右,QQ号无论多少位,每个…

【链表】力扣206反转链表

题目 力扣206反转链表 思路图解 代码实现 双指针代码实现 public static ListNode reverseList(ListNode head) {// 初始化pre,curListNode pre null;ListNode cur head;// 当cur为null时,说明反转结束while(cur ! null) {// 临时保存cur.next节点…

Python写冒泡

当你要用Python写冒泡排序算法时,你可以使用下面的代码: def bubble_sort(arr):n len(arr)for i in range(n-1):for j in range(n-i-1):if arr[j] > arr[j1]:arr[j], arr[j1] arr[j1], arr[j]return arr这个函数接受一个数组作为输入,并…

linux开发板静态IP无法ping通外网

硬件平台:韦东山的6ull开发板 问题: 使用网线直连路由器,动态获取IP时能ping通外网; 改为静态IP时,能ping通局域网,但无法ping通外网。 改为静态IP:修改/etc/network/interfaces 测试&#…

CentOS本地部署SQL Server数据库无公网ip环境实现远程访问

文章目录 前言1.安装GeoServer2. windows 安装 cpolar3. 创建公网访问地址4. 公网访问Geo Servcer服务5. 固定公网HTTP地址 前言 GeoServer是OGC Web服务器规范的J2EE实现,利用GeoServer可以方便地发布地图数据,允许用户对要素数据进行更新、删除、插入…

Linux系统——测试端口连通性方法

目录 一、TCP端口连通性测试 1、ssh 2、telnet(可能需要安装) 3、curl 4、tcping(需要安装) 5、nc(需要安装) 6、nmap(需要安装) 二、UDP端口连通性测试 1、nc(…

adb forward使用

adb forward是Android Debug Bridge(ADB)的一个命令,它可以将设备端口和主机端口之间建立一个转发通道,从而使主机可以通过该通道访问设备端口提供的服务。使用adb forward可以方便地进行端口转发,例如在电脑上运行的应…

spring-boot-admin-server-ui 打包备忘

spring-boot-admin-server-ui 打包备忘 先试一下springboot2.0*,这是一个老项目 ui包里面发现 "node-sass": "^4.11.0",Node.js 版本node-sass 版本16.x6.x15.x5.x14.x4.14.x13.x4.13.x12.x4.12.x11.x4.10.x10.x4.9.x8.x4.5.3 先把node调成1…

【MySQL】MySQL版本8+ 的 with recursive 两种递归语法的使用

力扣题 1、题目地址 1270. 向公司 CEO 汇报工作的所有人 2、模拟表 员工表:Employees Column NameTypeemployee_idintemployee_namevarcharmanager_idint employee_id 是这个表具有唯一值的列。这个表中每一行中,employee_id 表示职工的 ID&#x…

从0到1实战微服务架构之Nacos下载安装

目录 一、前言 二、Nacos概述 三、Nacos架构 3.1 Open API 3.2 Config Service 3.3 Naming Service 3.4 Nacos Core 3.5 Consistency Protocol 四、Nacos部署实践 4.1 Nacos下载 4.2 Nacos部署 五、总结 一、前言 Nacos是一个开源的、易于使用的、功能丰富的平台&a…