当前位置: 首页 > news >正文

软件设计师教程(六)计算机系统知识-操作系统知识

软件设计师教程

软件设计师教程(一)计算机系统知识-计算机系统基础知识
软件设计师教程(二)计算机系统知识-计算机体系结构
软件设计师教程(三)计算机系统知识-计算机体系结构
软件设计师教程(四)程序设计语言基础知识
软件设计师教程(五)计算机系统知识-数据结构


操作系统知识

  • 软件设计师教程
  • 操作系统概述
    • 操作系统的基本概念
      • 操作系统定义及作用
      • 操作系统特征与功能
    • 操作系统分类及特点
      • 批处理操作系统
      • 分时操作系统
      • 实时操作系统
      • 网络操作系统
      • 分布式操作系统
      • 微型计算机操作系统
      • 嵌入式操作系统
    • 操作系统的发展
  • 进程管理
    • 基本概念
      • 程序与进程
      • 进程的组成
      • 进程的状态机器状态间的切换
    • 进程的控制
    • 进程间的通信
      • 同步与互斥
      • 信号量机制
      • 高级通信原语
    • 管程
    • 进程调度
    • 死锁
    • 线程

操作系统概述

计算机软件分系统软件和应用软件两大类。别的软件是建立在操作系统的基础上的,并在操作系统的统一管理和支持下运行的,是用户与计算机之间的结构。

操作系统的基本概念

操作系统定义及作用

传统计算机系统资源分为硬件资源和软件资源。硬件资源包括中央处理及、存储器和输入输出设备等物理设备;软件资源是以文件形式保存在存储器上的程序和数据等信息。

操作系统特征与功能

4个特征是并发性、共享性、虚拟性和不确定性。
传统资源管理的观点看,可分为处理机管理、文件管理、存储管理、设备管理和作业管理。

  • 进程管理。实质上是对处理机的执行“时间”进行管理,采用多道程序等技术将CPU的时间合理地分配到每个任务,主要包括进程控制、进程同步、进程通信和进程调度。
  • 文件管理。主要是文件的读写管理
  • 存储管理。对主存储空间管理。
  • 设备管理。对硬件设备的管理。
  • 作业管理。任务、界面、交互等等。

操作系统分类及特点

操作系统可分为 批处理、分时、实时、网络、分布式、微型计算机和嵌入式操作系统等

批处理操作系统

单道批处理 一个接一个
多道批处理 多道、宏观上并行运行、微观上串行运行

分时操作系统

将CPU的工作时间分为许多很短的时间片,轮流为各个终端的用户服务。
多路性、独立性、交互性和及时性。

实时操作系统

可靠性要有保障。分为实时控制系统和实时信息处理系统。

实时又分为。实时控制系统用于生产过程的自动控制。实时信息处理系统用于实时信息处理。

  1. 设计目标不同。分时多用户通用系统、交互能力强;实时大多时专用系统。
  2. 交互性的强弱不同。分时强,实时弱
  3. 响应时间敏感度不同。分时弱,实时强

网络操作系统

共享网络资源,为网络用户提供各种服务的软件和有关协议的集合。
计算机网络系统除了硬件外,还需要有系统软件,二者结合构成计算机网络的基础平台。

硬件独立性、多用户支持等。
网络操作系统分三类。

  1. 集中模式。
  2. 客户端/服务器模式。
  3. 对等模式 模式。

分布式操作系统

分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息。

微型计算机操作系统

windows
mac
linux

嵌入式操作系统

  1. 微型化
  2. 可定制
  3. 实时性
  4. 可靠性
  5. 易移植性

操作系统的发展

硬件的发展、新的服务需求、自身的修补

进程管理

进程之间的并发特性,以及进程之间相互合作与资源竞争产生的问题。

基本概念

程序与进程

程序顺序执行,顺序性、封闭性和可在现性。就是程序是按照顺序执行的,永远知道下一步是哪一步

程序并发执行
在CPU忙的时候,输入输出设备可以完成别的作业。
在这里插入图片描述
并发,就没有程序的封闭性、程序和机器不能一一对应、并发程序间的相互制约性。

进程的组成

进程是用PCB、程序、数据组成的
PCB。是进程存在的唯一标志
程序。程序部分描述了进程需要完成的功能。
数据。数据部分包含程序执行时所需的数据以及工作区。

进程的状态机器状态间的切换

三态模型 ⇒ 运行+就绪+阻塞
五态模型
在这里插入图片描述
具有挂起状态的进程状态及其转换
在这里插入图片描述

进程的控制

进程控制就是对系统中的所有进程从创建到消亡的全过程实施有效的控制。

进程间的通信

进程间存在资源共享和相互合作。

同步与互斥

同步就是系统中一些需要相互合作,协同工作的进程,这样相互联系称为进程的同步
互斥就是,多个进程因争用临届资源而互斥执行。有些资源一次只能一个进程使用就叫临界资源。
临界区管理原则

  1. 有空即进
  2. 无空则等
  3. 有限等待
  4. 让权等待

信号量机制

信号量机制是一种有效的进程同步与互斥工具。

高级通信原语

进程通信方式分为高级和低级两种,PV操作属于低级通信方式,高级的微共享存储模式、消息传递模式和管道通信。

管程

采用资源集中管理的方法,将系统中的资源用某种数据结构抽象的表示出来。
在这里插入图片描述

进程调度

进程调度方式是指当有更高优先级的进程到来时如何分配CPU,分为刻薄多和不可剥夺两种。

死锁

两个以上进程互相要求对方已经占有的资源导致无法继续运行下去

线程

线程作为调度和分配的基本单位,进程作为独立分配资源的单位。


相关文章:

软件设计师教程(六)计算机系统知识-操作系统知识

软件设计师教程 软件设计师教程(一)计算机系统知识-计算机系统基础知识 软件设计师教程(二)计算机系统知识-计算机体系结构 软件设计师教程(三)计算机系统知识-计算机体系结构 软件设计师教程(…...

Zookeeper下载安装与集群搭建

Zookeeper下载安装与集群搭建1.下载安装1.1 下载安装1.2 配置启动2.集群搭建2.1 搭建要求2.2 准备工作2.3 配置集群2.4 启动集群2.5 模拟集群异常1.下载安装 1.1 下载安装 1、环境准备 ZooKeeper服务器是用Java创建的,它运行在JVM之上。需要安装JDK 7或更高版本。…...

Filter防火墙(8)

实验目的 1、了解个人防火墙的基本工作原理; 2、掌握Filter防火墙的配置。 预备知识防火墙 防火墙(Firewall)是一项协助确保信息安全的设备,会依照特定的规则,允许或是限制传输的数据通过。防火墙可以是一台专属的硬…...

Spring事务的传播级别——包你一文通

文章目录一、简单说明二、具体案例描述2.1.PROPAGATION_REQUIRED2.2.PROPAGATION_REQUIRED_NEW2.3.PROPAGATION_SUPPORTS2.4.PROPAGATION_NOT_SUPPORTED2.5.PROPAGATION_MANDATORY2.6.PROPAGATION_NEVER2.7.PROPAGATION_NESTED三、总结3.1、PROPAGATION_REQUIRED3.2、PROPAGATI…...

C语言(C预编译指令)

目录 1.undef 2.条件编译#ifdef,#else和#endif 3.#ifndef 4.#if和#elif 5.预定义宏 6.#line和#error 7.#pragma 1.undef #undef指令用于取消已定义的#define指令 #define LIMIT 400 #undef LIMIT 如果想使用一个名称但又不确定之前是否已经用过,为了安全起…...

JMeter 接口测试/并发测试/性能测试

Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。因为再做接口测试时可以设置线程组,所以也可做接口性能测试。本篇使用JMeter完成了一个…...

大家心心念念的RocketMQ5.x入门手册来喽

1、前言 为了更好的拥抱云原生,RocketMQ5.x架构进行了大的重构,提出了存储与计算分离的设计架构,架构设计图如下所示: RocketMQ5.x提供了一套非常建议的消息发送、消费API,并统一放在Apache顶级开源项目rocketmq-clie…...

(考研湖科大教书匠计算机网络)第四章网络层-第三节1:IPv4地址概述

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一:IPv4地址概述二:IPv4地址表示方法(1)概述(2)8位无符号二进制数转十进制正整数&#xff…...

B站Python与OpenCV人脸识别项目超详细记录(对图片、视频、摄像头人脸的检测)

课程来源:一天搞定人脸识别项目!学不会up直接下跪!(pythonopencv)_哔哩哔哩_bilibili 图片来源:感谢王鹤棣先生友情出镜~ 环境配置详见: 在conda虚拟环境中安装OpenCv并在pycharm中使用_cond…...

【Node.js实战】一文带你开发博客项目之Koa2重构(实现session、开发路由、联调、日志)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未…...

第一部分:简单句——第二章:简单句的补充

简单句的核心构成:一主一谓 主语/宾语/表语 可以变成名词/代词/doing/to do 谓语动词有四种核心变化:三态 一否 时态语态情态否定 简单句的核心:将简单句给写对 简单句的补充:将简单句给写的更好、更充分 简单句的补充 1、限定…...

Spring Security简介

前面我们已经完成了传智健康后台管理系统的部分功能,例如检查项管理、检查组管理、套餐管理、预 约设置等。接下来我们需要思考2个问题: 问题1:在生产环境下我们如果不登录后台系统就可以完成这些功能操作吗? 答案显然是否定的&am…...

Hadoop安装 --- 简易安装Hadoop

目录 1、使用xftp工具 在opt目录下创建install和soft文件 2、使用xftp工具 将压缩包上传到install文件 3、编写shell脚本 3.1、创建目录来放shell脚本 3.2、创建autoinsatll.sh文件并修改权限 3.3、编写autoinsatll.sh 文件 刷新资源 运行文件 格式化 启动所有进程 Ha…...

俞军产品方法论,消化吸收,要点整理

一、总体概括二、产品经理、价值、用户模型、交易模型三、价值、产品和企业的价值生存游戏的常见要点:企业做产品的4方面产出:四、决策五、俞军产品方法论,认知迭代史1)俞军12条产品军规2)产品经理职级的背后影响因素:…...

spring注解的开端(@Component替代bean标签的使用)

目录 一、介绍 1.什么是注解开发? 2.Spring注解的版本 3.基于spring注解的应用 4. Component的细分注解 5.相关注解 二、简单例子讲解 1.类打注解 2.扫描注解放入工厂 3.总工厂取注解调用 4.运行结果 总结: 一、介绍 1.什么是注解开发&…...

Matlab傅里叶谱方法求解一维波动方程

傅里叶谱方法求解基本偏微分方程—一维波动方程 一维波动方程 对于一根两端固定、没有受到任何外力的弦, 若只研究其中的一段, 在不太长的时间 里, 固定端来不及对这段弦产生影响, 则可以认为固定端是不存在的, 弦的长度为无限大。 这种无界 (−∞<x<∞)(-\infty<x&…...

py3中 collections.Counter()函数典型例题

文章目录py3中 collections 的常用STL**Counter()** 函数**defaultdict()** 函数**deque()** 函数**orderedDict()** 函数&#xff08;缺例题&#xff09;小结py3中 collections 的常用STL 对于这个工具包非常好用&#xff0c;尤其是其中的 Counter() 函数 使用次数颇为频繁&a…...

Linux部署达梦数据库超详细教程

陈老老老板&#x1f9b8;&#x1f468;‍&#x1f4bb;本文专栏&#xff1a;国产数据库-达梦数据库&#x1f468;‍&#x1f4bb;本文简述&#xff1a;本文讲一下达梦数据库的下载与安装教程&#xff08;Linux版&#xff09;&#xff0c;超级详细。&#x1f468;‍&#x1f4bb…...

ctfshow 每周大挑战 极限命令执行

《简单的命令执行题目》 这里感叹一下&#xff0c;g4佬是真好厉害&#xff0c;这次题目十分的难&#xff0c;嗯&#xff0c;对我这种菜鸡来说是这样的&#xff0c;想了一天&#xff0c;最后结束了&#xff0c;也还是没有想明白第五题的解法&#xff0c;我真是fw&#xff0c;到最…...

使用vue3,vite,less,flask,python从零开始学习硅谷外卖(16-40集)

严正声明&#xff01; 重要的事情说一遍&#xff0c;本文章仅供分享&#xff0c;文章和代码都是开源的&#xff0c;严禁以此牟利&#xff0c;严禁侵犯尚硅谷原作视频的任何权益&#xff0c;我知道学习编程的人各种各样的心思都有&#xff0c;但这不是你对开源社区侵权的理由&am…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

AI编程--插件对比分析:CodeRider、GitHub Copilot及其他

AI编程插件对比分析&#xff1a;CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展&#xff0c;AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者&#xff0c;分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例&#xff0c;其中使用的是 Module Federation 和 npx-build-plus 实现了主应用&#xff08;Shell&#xff09;与子应用&#xff08;Remote&#xff09;的集成。 &#x1f6e0;️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 &#xff08;一&#xff09;项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台&#xff0c;其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言&#xff0c;首次接触 OpenBCI 设备时&#xff0c;往…...

日常一水C

多态 言简意赅&#xff1a;就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过&#xff0c;当子类和父类的函数名相同时&#xff0c;会隐藏父类的同名函数转而调用子类的同名函数&#xff0c;如果要调用父类的同名函数&#xff0c;那么就需要对父类进行引用&#…...