Linux操作系统复习

Linux操作系统复习

    • 一. Linux的权限和shell原理
      • 1. Linux从广义上讲是什么 从狭义上讲是什么?
      • 2. shell是什么?
      • 3. 为什么要设置一个shell外壳而不是直接和linux 内核沟通
      • 4. shell的原理是什么
      • 5. Linux中权限的概念
      • 6. 如何提升当前操作的权限
      • 7. 文件访问者的分类
      • 8. 文件的权限有哪三种
      • 9. 敲出ll指令之后会有哪些字符 分别是什么样子
      • 10. 如何修改文件的权限
      • 11. 如何修改文件的拥有者
      • 12. 如何修改文件的所属组
      • 13. 文件掩码是什么 如何修改文件的掩码
      • 14. 目录的权限可以对应下面的哪些内容
      • 15. 用户有目录的可写权限会发生什么问题 如何解决
      • 16. 介绍下缓冲区的概念
    • 二. 冯诺依曼体系
      • 1. 画出简单的冯诺依曼体系图
      • 2. 证明冯诺依曼体系的合理性
      • 3. 内存提高性能的原理
      • 4. 冯诺依曼体系之间的交流
    • 三. 认识操作系统
      • 1. 操作系统是什么
      • 2. 为什么要设计操作系统
      • 3. 操作系统的上下有什么
      • 4. 操作系统如何进行管理
    • 四. 进程概念
      • 1. 什么是进程
      • 2. 进程和程序有什么区别

一. Linux的权限和shell原理

Linux的权限和shell原理

1. Linux从广义上讲是什么 从狭义上讲是什么?

Linux从广义上讲是一个操作系统 从狭义上将是内核

许多厂商在这个内核的基础上推出了linux的发行版 比如说centos kai等

2. shell是什么?

shell的翻译是外壳 我们一般认为它是命令行解释器

3. 为什么要设置一个shell外壳而不是直接和linux 内核沟通

对用户来讲 因为用户不擅长和linux内核沟通 所以说使用shell来帮助用户

对于内核来讲 保护内核

4. shell的原理是什么

shell是对于所有外壳程序的统称 在centos中这个外壳程序是 bash

他们之间的关系就像程序员和你一样 是对一个抽象概念的实例化

5. Linux中权限的概念

权限要对应到用户上才有意义

Linux中有两种用户 一种是root 一种是普通用户

root用户几乎可以做任何事情

而普通用户则可以再Linux系统下做有限的事情

能做和不能做之间 这就叫权限

6. 如何提升当前操作的权限

我们可以使用sudo来提升当前用户的权限

sudo操作需要添加信任名单 这个名单在 /etc/sudoers 中

7. 文件访问者的分类

访问者的分类有三种

所有者 所属组 其他人

8. 文件的权限有哪三种

文件的权限有

是否可读 是否可写 是否可执行

9. 敲出ll指令之后会有哪些字符 分别是什么样子

文件符号 + 三个rwx 读写执行权限 一二三分别对应创建者 所属组 其他

10. 如何修改文件的权限

我们可以使用chmod指令来修改文件的权限

比如说 chmod + 777 (所有身份开启读写执行权限)

11. 如何修改文件的拥有者

我们可以使用chown 来改变文件的拥有者 但是这里要注意的是 必须要使用root身份

12. 如何修改文件的所属组

我们可以使用chgrp 来改变文件的所属组 但是这里要注意的是 必须要使用root身份

13. 文件掩码是什么 如何修改文件的掩码

文件掩码是来决定新建文件/目录的默认权限的一串数字

我们假设默认权限是mask 掩码是umask 那么最后的文件的权限是 mask & (~umask)

14. 目录的权限可以对应下面的哪些内容

如果没有目录的可读权限我们就无法通过ls查看目录里面的内容

如果没有目录的可写权限 我们就无法通过一系列指令在文件中创建或删除文件

如果没有目录的执行权限 我们就无法进入这个目录

15. 用户有目录的可写权限会发生什么问题 如何解决

用户只要有目录的可写权限就可以删除目录内文件 即时它没有文件的可写权限

此时我们可以利用 chmod + t 这样子即使有目录的写权限也无法删除了

不过要注意的是 只是影响删除 不影响创建文件

16. 介绍下缓冲区的概念

我们打印一些数据得到时候 不会立即刷新 而是会按照一定的规则来刷新 就比如说显示器就是行刷新 如果我们不打印换行符 它就不会立即刷新

二. 冯诺依曼体系

参考博客

冯诺依曼体系

1. 画出简单的冯诺依曼体系图

在这里插入图片描述

2. 证明冯诺依曼体系的合理性

首先我们创造计算机出来肯定要有输入和输出设备

我们输入数据之后肯定要有组件来处理数据吧 这个时候就引出了运算器的存在

在这里插入图片描述

而此时这三个单元是孤立存在的 所以说我们需要控制器去控制整个流程

在这里插入图片描述

是我们知道 cpu的运算能力是非常快的 而我们的输入输出则是非常慢的

这里就会引出一个矛盾 如果让输入输出设备和cpu直接连接的话效率就会变得非常低

于是我们后面想到了在输入和输出设备和cpu之间添加一个缓冲区 不让他们直接接触 这个缓冲区的效率一定要高于输入输出设备 它就是内存

加上了内存之后输入的数据直接写入到内存中 然后由内存与cpu沟通

经过了cpu的计算后再次写入内存中由内存写进输出设备

这样子就避免了cpu和输入输出设备的直接沟通 提高了效率

在这里插入图片描述

而此时的控制器会控制整个流程

在这里插入图片描述

3. 内存提高性能的原理

内存提高性能主要是因为局部性原理

局部性原理是指CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中

内存首先是一个存储设备 它肯定有存储数据的能力 它可以再cpu处理一行的数据的时候将下面几行的数据预加载到高速缓存中 而下面的几行数据就是大概率要被使用的

而cpu能够同时处理数据和加载数据 这样子cpu就可以直接从内存中读取数据了

这就是内存能提高性能的原因

4. 冯诺依曼体系之间的交流

在这里插入图片描述

以IM通讯为例 数据首先由键盘进行输入到内存中 cpu从内存中读取数据 处理完毕之后返回内存中 网卡读取内存中的数据发送到

网卡读取到数据 加载到内存中 由cpu进行获取之后处理数据 最后返回内存中 之后显示到显示器上

三. 认识操作系统

1. 操作系统是什么

操作系统是管理软硬件资源的软件

2. 为什么要设计操作系统

我们想一下 如果没有操作系统的话我们是不是要直接去操作计算机硬件了 而直接操作计算机硬件是不是对我们来说难度太高了

同样的对于计算机硬件来说 如果让用户直接操作可能会对硬件造成破坏

  1. 统筹硬件资源
  2. 为用户提供一个良好的操作环境

3. 操作系统的上下有什么

这里可以从整个操作系统的发展开始讲 首先是硬件层

在这里插入图片描述

然后直接有硬件是不可以的 我们肯定还需要有操作系统去统筹这些资源

但是操作系统能够直接和硬件打交道嘛? 显然是不可以的 不然必须要我要换一块键盘就要重写一部分操作系统嘛

所以说 操作系统和硬件中间要加一块驱动层 驱动由各个硬件厂商开发 操作系统只提供接口就可以

在这里插入图片描述

之后再上面就是用户了

在这里插入图片描述

但是操作系统肯定是不能直接暴露给用户的 操作系统会暴露出一些接口

在这里插入图片描述

但是这些接口对于普通人来说又太难了 所以说又有开发者开发了一些用户调用接口

在这里插入图片描述

4. 操作系统如何进行管理

先描述 再组织

先描述 再组织这句话贯穿整个linux操作系统的学习

管理分两步走 首先描述被管理对象的各种属性将其数据化 之后使用数据结构将这些数据组织起来

因为我们想要管理一个对象肯定不可能去了解他的全部 肯定要量化这些数据才能进行管理

我们如果只是管理一个对象的话 那么可以不去组织嘛 但是一般都是管理很多个对象吗 所以说要用数据结构把他们组织起来

四. 进程概念

1. 什么是进程

进程是操作系统进行资源分配的最小单位 一个进程就是一个程序执行一次的过程

2. 进程和程序有什么区别

在这里插入图片描述

我们能看到 程序以文件的格式保存在磁盘中 之后双击运行 被加载到内存中

被加载到内存后我们会发现除了原本的代码之外还多了一堆的数据

根据管理的原则 先描述 再组织 这些实际上就是os对于这段代码的描述 就是PCB

所以说 进程等于程序加上PCB

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

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

相关文章

Spring AI 快速入门:从环境搭建到核心组件集成

Spring AI 快速入门:从环境搭建到核心组件集成 一、前言:Java开发者的AI开发捷径 对于Java生态的开发者来说,将人工智能技术融入企业级应用往往面临技术栈割裂、依赖管理复杂、多模型适配困难等挑战。Spring AI的出现彻底改变了这一局面——…

C++11介绍

目录 一、C11的两个小点 1.1、decltype 1.2、nullptr 二、列表初始化 2.1、C98传统的{} 2.2、C11中的{} 2.3、C11中的std::initializer_list 三、右值引用和移动语义 3.1、左值和右值 3.2、左值引用和右值引用 3.3、引用延长生命周期 3.4、左值和右值的参数匹配 3…

基于机器学习的网络钓鱼邮件智能检测与防护系统

phishingDP 介绍 phishingDP 是一个基于机器学习的网络钓鱼邮件智能检测与防护系统,旨在通过深度学习技术识别潜在的钓鱼邮件,保护用户免受网络诈骗威胁。该系统集成了数据预处理、模型训练、实时预测和结果可视化功能,提供用户友好的Web界…

OpenAI 推出「轻量级」Deep Research,免费用户同享

刚刚,OpenAI 正式上线了面向所有用户的「轻量级」Deep Research 版本,意味着即便没有付费订阅,也能体验这一强大工具的核心功能。 核心差异:o4-mini vs. o3 模型迭代 传统的深度研究功能基于更大规模的 o3 模型。轻量级版本则改以…

什么是优质的静态IP?以及如何选择优质的静态IP?

在如今的大数据生态中,静态IP的使用频率和重要性不断提升。但是,我们常听到业界提到“优质的静态IP”,那么什么样的静态IP能够称之为优质?如何判断这些IP能否满足我们的需求?今天这篇文章,将为您揭开优质静…

Hadoop生态圈框架部署 - Windows上部署Hadoop

文章目录 前言一、下载Hadoop安装包及bin目录1. 下载Hadoop安装包2. 下载Hadoop的bin目录 二、安装Hadoop1. 解压Hadoop安装包2. 解压Hadoop的Windows工具包 三、配置Hadoop1. 配置Hadoop环境变量1.1 打开系统属性设置1.2 配置环境变量1.3 验证环境变量是否配置成功 2. 修改Had…

搜广推校招面经八十一

OPPO搜广推一面面经 一、介绍一下PLE模型 在多任务学习(Multi-Task Learning, MTL)中,多个任务共享部分模型结构,以提升整体效果。然而,不同任务间存在 任务冲突(Task Conflict) 问题&#xf…

LangChain 中主流的 RAG 实现方式

文章目录 **一、基础流程实现**1. **全自动索引构建(VectorstoreIndexCreator)**2. **标准问答链(RetrievalQA)**3. **Document Chain 手动检索**4. **load_qa_chain(传统方式)** **二、高级定制化实现**1…

解决:springmvc工程 响应时,将实体类对象 转换成json格式数据

问题:一直无法将user对象转成json格式 按理来说,我在类上使用RestController注解,就可以实现将实体类对象写入响应体中,并作为json格式传递到客户端,但现实是没有生效,并且出现404,406&#xf…

【踩坑记录】stm32 jlink程序烧录不进去

最近通过Jlink给STM32烧写程序时一直报错,但是换一个其他工程就可以烧录,对比了一下jink配置,发现是速率选太高了“SW Device”,将烧录速率调整到10MHz以下就可以了

运维打铁:Mysql 分区监控以及管理

文章目录 一、简介二、设计逻辑1、配置文件检查2、创建逻辑3、 删除逻辑4、重建表分区逻辑5、recognize maxvalue分区表逻辑6、创建多个未来分区逻辑7、定时检测分区是否创建成功,否则发送告警邮件。 三、解决的问题四、配置例子与介绍 一、简介 操作数据库&#xf…

Appium自动化开发环境搭建

自动化 文章目录 自动化前言 前言 Appium是一款开源工具,用于自动化iOS、Android和Windows桌面平台上的本地、移动web和混合应用程序。原生应用是指那些使用iOS、Android或Windows sdk编写的应用。移动网页应用是通过移动浏览器访问的网页应用(appum支持iOS和Chrom…

《R语言SCI期刊论文绘图专题计划》大纲

今天开始,我将和大家分享系统且详细的《R语言SCI期刊绘图专题教程》,内容会从基础到高阶应用,从配色美学到顶刊风格复现,确保大家可以学到高质量内容!下面是大纲。 📚《R语言SCI期刊论文绘图专题计划》 第…

STUN协议 与 TURN协议

STUN(Session Traversal Utilities for NAT,NAT会话穿越应用程序)是一种网络协议, STUN(Simple Traversal of User Datagram Protocol through Network Address Translators (NATs),NAT的UDP简单穿越&#…

在vscode终端中运行npm命令报错

解决方案 这个错误信息表明,你的系统(可能是 Windows)阻止了 PowerShell 执行脚本,这是由于 PowerShell 的执行策略导致的。PowerShell 的执行策略控制着在系统上运行哪些 PowerShell 脚本。默认情况下,Windows 可能…

手搓雷达图(MATLAB)

看下别人做出来什么效果 话不多说,咱们直接开始 %% 可修改 labels {用户等级, 发帖数, 发帖频率, 点度中心度, 中介中心度, 帖子类型计分, 被列为提案数}; cluster_centers [0.8, 4.5, 3.2, 4.0, 3.8, 4.5, 4.2; % 核心用户0.2, 0.5, 0.3, 0.2, 0.1, 0.0, 0.0;…

ViViT: 一种视频视觉Transformer

摘要 我们提出了基于纯transformer的视频分类模型,借鉴了这种模型在图像分类中的成功经验。我们的模型从输入视频中提取时空token,然后通过一系列transformer层进行编码。为了处理视频中遇到的长序列token,我们提出了几种高效的模型变种,这些变种将输入的空间和时间维度进…

嵌入式鸿蒙系统环境搭建与配置要求实现01

各位开发者大家好,今天主要给大家分享一下,鸿蒙系统的环境配置实现。 第一:鸿蒙配置基本要求 对电脑的要求,虚拟机配置建议 200GB 硬盘大小,10GB 内存,4*2CPU。 安装必要的依赖文件方法: sudo apt-get update && sudo apt-get install binutils git git-lfs g…

【多目标进化算法】常见多目标进化算法一览

算法全称核心特点备注NSGA-IINon-dominated Sorting Genetic Algorithm II非支配排序 拥挤度最经典,应用最广NSGA-IIINon-dominated Sorting Genetic Algorithm III支撑向量引导,适合高维(3目标以上)NSGA-II 的高维扩展版MOEA/DM…

创意无限,从这些视频素材开始你的创作!

在视频创作的世界里,找到合适的素材就像是挖掘宝藏,不仅能节省时间,还能让作品瞬间提升一个档次。今天,就来给大家分享一些超实用的视频素材网站,无论是国内的宝藏平台,还是国外的优质资源,都能…