shell命令以及运行原理,命令行解释器/bash,Linux Kernel与Shell简单理解等

news2024/10/7 20:24:44

引入

  1. 输入指令的过程本质上就是在输入一个字符串,然后指令的本质就是编译好的程序.exe与脚本。它们都是在系统的特定路径之下放着呢。
  2. 在这里插入图片描述
  3. 然后我们所有指令最终都是要到操作系统内部去运行的,也就是说各种各样的指令都需要操作系统的参与。
  4. 我们有各种各样的需求与指令需要跑起来,都需要操作系统的参与,但操作系统直接使用难度高,因此用户不可能直接使用操作系统太复杂了,成本太高了。所以我们用户不可能直接与操作系统进行打交道,但是功能还是得让它跑起来,怎么办呢?
  5. 于是我们就有了图形化界面啊,命令行解释器啊等等…相当于是通过一个中介与媒婆,帮我们与直接打交道困难的操作系统进行打交道。

命令行解释器(统称)

  1. 因为我们直接与操作系统打交道,成本太高,太过于复杂。但是又需要让操作系统来办各种各样的事情,所以说就采取一个中介与媒婆让他来帮助我们与操作系统打交道。
  2. 这个中介与媒婆就是命令行解释器,命令行解释器的话,它是一个统称。
  3. 在Linux下,也称之为命令行,shell,bash,sh…
  4. 在Windows下,也称之为图形化界面。
    在这里插入图片描述
  5. 这个命令行解释器就是充当一个中介人,这样子的话,用户只要根据需求输入指令,然后这个命令行解释器会把他以特定的方式下达给操作系统,然后操作系统会进行响应,并且通过命令行解释器再返回给用户,比方说,如果没找到指令就会有command not found…、
  6. 在这里插入图片描述
  7. 在这里插入图片描述

命令行解释器的好处

  1. 在这里插入图片描述
  2. 首先第一个就是功能性意义:命令行解释器可以对你的命令行进行一个解释与翻译,也可以理解为相当于在用户与操作系统之间添加了一个软件层,在软件层当中对用户进行健全。
  3. 还有一个意义就在于也变相的保护操作系统,因为对于用户的非法请求,他会进行直接拦截(在Shell层),而不是下达到操作系统,这样的话就可以节省资源,让操作系统有更多的时间去响应别处的请求。

Shell,bash,sh,bash命令行

  1. Shell是也可以理解成是命令行解释器的一个统称,只不过在Linux下面提到的多一点,总而言之,他也可以理解成就是命令行解释器,也就是王婆。符合命令行解释器的都称之为shell。
  2. 然后bash与sh等都是不同种类的具体的解释器罢了。比如说媒婆中的李婆,胡婆…
  3. 那么bash命令行又是什么呢?看:
    在这里插入图片描述
  4. 上面这四个东西组合起来的这么一串就是bash命令行,以后我们也会知道他其实就是一个进程。bash这个具体的命令行解释器长什么样子?就是bash命令行这样子,相当于王婆就长那样子,也就是具体命令行解释器展现出来的样子在这里插入图片描述

Linux Kernel 与 Shell

  1. 我们一般的Linux操作系统它是一个统称,它主要包括Linux的各种应用,还有命令行解释器,还有Linux内核…
  2. 用户管理,文件管理,进程管理,还有内存管理,驱动管理等等,都需要Linux内核)Kernel进行一些操作
  3. 但是用户无法直接与Linux Kernel进行打交道,而是通过Kernel的外壳程序,也就是所谓的Shell来与Kernel沟通。
  4. 这个Shell也就是上面提到过得命令行解释器…在这里插入图片描述
    在这里插入图片描述

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

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

相关文章

WordPress 如何开启多站点 含Apache和Nginx伪静态规则

WordPress 3.0以上的版本支持直接开启多站点模式,这样一来,你可以在一个后台切换多个站点进行管理。 最近打算折腾一个主题演示站,给每个主题使用独立的子站点来搭建演示,如果是Apache环境,配置就比较容易,但是倡萌使用的是 Nginx,花了大量的时间测试了N多网络上的伪静…

什么是无头浏览器?如何使用Golang实现无头浏览器截图?

前言 在Web开发中,有时需要对网页进行截图,以便进行页面预览、测试等操作。 而使用无头浏览器来实现截图功能,可以避免手动操作的繁琐和不稳定性。 这篇文章将介绍:使用Golang进行无头浏览器的截图,轻松实现页面预览…

苹果电脑PS Raw增效工具:Camera Raw 15中文版

Camera Raw 15是Adobe公司开发的一款用于处理RAW格式图像的插件软件,它可以帮助用户在Photoshop、Lightroom等软件中对RAW格式图像进行调整和优化。Camera Raw 15提供了丰富的调整工具,包括白平衡、曝光、色彩、锐化、噪点、透视等,可以让用户…

home assistant添加天气预报

先上效果图&#xff0c;大体就是这个样子 1.天气API链接 https://www.windy.com 选择页面嵌入式微件 下面是完整的HTML 代码&#xff0c;但是需要修改一下 <iframe width"1000" height"600" src"https://embed.windy.com/embed2.html?lat21.2…

【腾讯云Finops Crane集训营】利用云原生成本优化项目实现降本增效泰裤辣~

Crane 是一个基于 FinOps 的云资源分析与成本优化平台。在保证客户应用运行质量的前提下实现极致的降本。 文章目录 一、 前言&#x1f350;二、 Crane开源项目简介&#x1f34e;2.1. Crane整体框架&#x1f352;2.2. Crane主要功能&#x1f345; 三、Crane实验前期准备&#x…

PaLM 2 硬刚 GPT-4,未来还有变数

在 ChatGPT 没有出现之前&#xff0c;谷歌多年来一直是 AI first战略 &#xff0c;不出意外的话还会是领头羊&#xff0c;手握 DeepMind 和 Google Brain 两大 AI 王牌&#xff0c;再加上投资技术实力雄厚的 Anthropic&#xff0c;论资排辈都得是他。时不我与&#xff0c;被 Op…

链表--part 1--链表基础理论(概括)

文章目录 单链表双链表循环链表链表链表的定义删除节点增加节点 首先什么是链表&#xff0c;链表是一种通过指针串联在一起的线性结构&#xff0c;每一个节点由两部分组成&#xff0c;一个是数据域一个是指针域&#xff08;存放指向下一个节点的指针&#xff09;&#xff0c;最…

低代码平台的分类及选择参考

目录 零、认识低代码 一、低代码平台的分类 1.1通用低代码平台 1.2垂直低代码平台 1.3开放式低代码平台 二、低代码平台的特点 三、低代码平台的优缺点对比 四、低代码平台的选择参考 为什么选择IVX&#xff1f; 五、iVX平台与其他低代码平台的区别 零、认识低代码 …

机器学习项目实战-能源利用率 Part-2(探索性数据分析)

Part-1部分的博客可见下&#xff1a; 机器学习项目实战-能源利用率 Part-1&#xff08;数据清洗&#xff09; 这部分进行的是探索性数据分析。 探索性数据分析 Exploratory Data Analysis 简单的说&#xff0c;就是画图来分析数据。 分析标签数据 data data.rename(colum…

c++ 11标准模板(STL) std::set(六)

定义于头文件 <set> template< class Key, class Compare std::less<Key>, class Allocator std::allocator<Key> > class set;(1)namespace pmr { template <class Key, class Compare std::less<Key>> using se…

STL配接器(容器适配器)—— queue 的介绍使用以及模拟实现。

注意 &#xff1a; 以下所有文档都来源此网站 &#xff1a; http://cplusplus.com/ 一、queue 的介绍 queue 文档的介绍&#xff1a;https://cplusplus.com/reference/queue/queue/ 1. 队列是一种容器适配器&#xff0c;专门用于在FIFO上下文(先进先出)中操作&#xff0c;其…

将本机安装的chrome插件移至其他电脑

国内chrome应用商店默认是打不开的&#xff0c;属于绕过应用商店安装的一种办法 假设已安装插件的电脑为A电脑 待安装插件电脑为B电脑 首先在A电脑打开chrome浏览器&#xff0c;然后输入chrome://version/ 找到"个人资料路径"对应位置 个人资料路径下的Extensions目…

LabVIEWCompactRIO 开发指南22 CVT客户端通信(CCC)

LabVIEWCompactRIO 开发指南22 CVT客户端通信&#xff08;CCC&#xff09; 如果使用第3章中讨论的CVT进行进程间通信&#xff0c;请考虑使用CCC。如果已经创建了CVT标签&#xff0c;并且想在网络上发布此数据&#xff0c;CCC不失为一个简单而优雅的解决方案。它基于TCP/IP&am…

java接口与实现

文章目录 一、Java接口二、Java实现接口三、Java接口回调四、Java接口与多态五、Java接口参数六、Java接口与抽象类的比较七、Java接口的UML图总结 一、Java接口 接口是Java语言中一种重要的数据类型&#xff0c;通常使用关键字interface来定义一个接口。 接口的定义和类的定…

【22-23 春学期】人工智能基础--AI作业10-经典卷积网络

LeNet & MNIST LeNet是由Yann LeCun及其合作者于1998年开发的一种具有开创性的卷积神经网络架构。它的设计目的是识别手写数字并执行图像分类任务。MNIST是一个用于手写数字识别的大型数据库&#xff0c;常被用于训练图像处理系统。LeNet与MNIST的关系在于&#xff0c;LeNe…

二十六、搜索与图论——SPFA算法(单源最短路 + 负权边 + Bellman-Ford 时间复杂度优化)

SPFA算法主要内容 一、基本思路1、算法概念2、SPFA 算法步骤算法步骤注意事项 3、SPFA算法进行负环判断 二、Java、C语言模板实现SPFA 算法SPFA求负环 三、例题题解 一、基本思路 1、算法概念 概念&#xff1a; SPFA 算法是 Bellman-Ford算法 的队列优化算法的别称&#xff0…

〖大学生·技术人必学的职业规划白宝书 - 职业规划篇⑤〗- 利用职业能力模型拆解目标岗位

历时18个月&#xff0c;采访 850 得到的需求。 不管你是在校大学生、研究生、还是在职的小伙伴&#xff0c;该专栏有你想要的职业规划、简历、面试的答案。说明&#xff1a;该文属于 大学生技术人职业规划白宝书 专栏&#xff0c;购买任意白宝书体系化专栏可加入TFS-CLUB 私域社…

redis高级篇(2)---主从同步

一)搭建主从架构: 单节点Redis的并发能力是有限的&#xff0c;所以说要想进一步提高Redis的并发能力&#xff0c;就需要搭建主从集群&#xff0c;实现读写分离&#xff0c;因为对于Redis来说大部分都是读多写少的场景&#xff0c;更多的要进行读的压力&#xff0c;最基本都要是…

7.Redis管道/流水线

这里写目录标题 是什么&#xff1f;Redis pipelining 案例演示&#xff1a;小总结Pipeline与原生批量命令对比Pipeline与事务对比使用Pipeline注意事项 &#xff08;Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。一个请求会遵循以下步骤&#xff1a; 1 .客户…

[云原生] 破局微服务通信:探索MegaEase服务网格的创新之路

文章目录 [云原生]破局微服务通信&#xff1a;探索MegaEase服务网格的创新之路解析MegaEase&#xff1a;服务网格领域的领先者 1. MegaEase的背景和使命拓展: 2. MegaEase的核心产品&#xff1a;EaseMesha. 动态服务发现与负载均衡b. 弹性和容错机制c. 安全性与身份认证d. 可观…