Linux命令与shell脚本编程大全【读书笔记 + 思考总结】

Linux命令与shell脚本编程大全

  • 第 1 章 初识Linux shell
    • Linux的组成及关系结构图是什么?
    • Linux系统内核的作用是什么?
    • 内核的主要功能是什么?(4点)
    • 物理内存和虚拟内存是什么关系?内核如何实现虚拟内存?
    • 什么是内存页面换出?
    • 程序要访问的内存页面被换出时,内核如何操作?
    • 什么是进程?
    • 什么是 init 进程?
    • 内核启动其他进程时会做什么?
    • 系统开机时要自动启动的进程在哪里可以查看到?
    • Linux的5个启动运行级分别是什么?
    • 驱动程序代码的作用是什么?
    • 内核中插入驱动代码的方式?
    • 内核模块有什么作用?解决了什么问题?
    • Linux 有哪些设备文件?(3中)
    • 什么是调试解调器?
    • 回环设备是什么?有什么用?

第 1 章 初识Linux shell

Linux的组成及关系结构图是什么?

Linux的组成关系及结构图是什么?

Linux系统内核的作用是什么?

控制所有硬件和软件。

内核的主要功能是什么?(4点)

  1. 系统内存管理。(物理内存和虚拟内存。)
  2. 软件程序管理。
  3. 硬件设备管理。
  4. 文件系统管理。

物理内存和虚拟内存是什么关系?内核如何实现虚拟内存?

内存划分存储单元:页面。
交换空间:内核通过硬盘的存储空间实现虚拟内存的区域。

物理内存 + 交换空间 = 虚拟内存。

内核将所有内存页面放在物理内存和交换空间,维护一个内存页面表,指明那些页面位于物理内存,那些页面位于磁盘的交换空间。
Linux系统内存映射

什么是内存页面换出?

内核会记录那些内存页面正在使用,自动把一段时间未访问的内存页面复制到交换空间,即使还有可用内存。

程序要访问的内存页面被换出时,内核如何操作?

  1. 从物理内存换出另一个内存页面让出空间。
  2. 从交换空间换入请求的内存页面。

Linux系统运行,内存页面交换就会一直进行。

什么是进程?

运行中的程序。可以在前台运行,也可以在后台运行。

什么是 init 进程?

内核创建的第一个进程,用来启动系统上所有其他进程。

内核启动其他进程时会做什么?

在虚拟内存中给新进程分配区域来存储该进程的数据和代码。

系统开机时要自动启动的进程在哪里可以查看到?

/etc/inittab文件 或 
/ect/init.d 目录下的脚本通过 /etc/rcX.d 目录下的入口启动。

Linux的5个启动运行级分别是什么?

  1. 1:启动基本系统进程 + 控制台终端进程。单用户模式(常用来在系统有问题时进行紧急文件系统维护。只有 root 用户能登陆。)
  2. 2:
  3. 3:(标准启动运行)大多数应用程序都会启动。
  4. 4
  5. 5:启动图形化桌面窗口系统。

驱动程序代码的作用是什么?

应用程序 <–> 驱动程序 <–> 硬件设备。

内核中插入驱动代码的方式?

编译进内核的设备驱动代码。
插入到内核的设备驱动模块。

内核模块有什么作用?解决了什么问题?

允许将驱动代码插入到运行中的内核,无需重新编译内核。设备移除时也可将内核模块从内核中移除。

解决问题:避免每次给系统添加新设备都要重新编译内核,简化和扩展了硬件设备在Linux上的使用。

Linux 有哪些设备文件?(3中)

字符设备文件:每次只能处理一个字符的设备。(大多数类型的调试解调器和终端,都作为字符型设备文件创建。)
块设备文件:每次能处理大块数据的设备。(硬盘。)
网络设备文件:数据包发送和接受的设备。(网卡和回环设备。)

什么是调试解调器?

回环设备是什么?有什么用?

作用:运行Linux系统使用网络编程协议同自身通信。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

zabbix 监控

zabbit 监控 非常成熟的监控软件。 运维人员&#xff0c;尽快系统服务器的状态&#xff0c;网站的流量&#xff0c;服务进程的运行状态。 保证整个集群的工作正常。7*24 zabbix是什么&#xff1a; web界面提供的一种可视化监控服务软件。 分布式的方式系统监控以及网络监控…

NodeJs(一):初识nodejs、模块化、CommonJS、ESModule等

目录 (一)Nodejs简介 1.nodejs是什么 2.nodejs架构 3.nodejs的应用场景 (二)准备工作 1.安装nodejs 2.nodejs版本管理工具 (三)nodejs的使用 1.node的输入 2.node的输出 3.其他的console方法 (四)全局对象 1.常见的全局对象 2.特殊的全局对象 3.global和window的…

用友U8 ERP和面粉行业专版系统接口集成方案

面粉加工行业面临着数据管理和业务流程自动化的挑战。众诚ERP系统和用友U8系统的数据集成是解决这一挑战的关键。 解决方案 轻易云平台提供了一套完善的数据同步和集成解决方案&#xff0c;包括以下几个方面&#xff1a; 基础资料同步&#xff1a;包括物料、客户、供应商、仓…

matlab 路面裂缝检测识别系统设计GUI

1、内容简介 略 23-可以交流、咨询、答疑 2、内容说明 路面裂缝检测识别系统设计GUI 基于matlab的GUI设计路面裂缝检测识别系统 matlab、GUI、直方图、裂缝检测、二值化 3、仿真分析 4、参考论文 略 链接&#xff1a;https://pan.baidu.com/s/1AAJ_SlHseYpa5HAwMJlk…

​LeetCode解法汇总2661. 找出叠涂元素

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 描述&#xff1a; 给你一个下…

基于PHP的高中生物学习平台

有需要请加文章底部Q哦 可远程调试 基于PHP的高中生物学习平台 一 介绍 此高中生物学习平台基于原生PHP开发&#xff0c;数据库mysql。系统角色分为用户和管理员。(附带参考设计文档) 技术栈&#xff1a;phpmysqlphpstudyvscode 二 功能 学生 1 注册/登录/注销 2 个人中心 …

Unittest(1):unittest单元测试框架简介setup前置初始化和teardown后置操作

unittest单元测试框架简介 unittest是python内置的单元测试框架&#xff0c;具备编写用例、组 织用例、执行用例、功能&#xff0c;可以结合selenium进行UI自动化测 试&#xff0c;也可以结合appium、requests等模块做其它自动化测试 官方文档&#xff1a;https://docs.pytho…

CSS 多主题切换思路

前言 本篇仅提供多主题切换思路&#xff0c;示例简单且清晰。 实现 步骤一&#xff1a;多主题(颜色)定义 定义根伪类 :root&#xff0c;代码第 2 和 7 行。分别定义了默认和带参数的伪类&#xff1b;定义 CSS 变量&#xff0c;注意变量名需要以两个减号&#xff08;--&…

如何选择适合长期投资的股票板块?

大家在学习炒股的过程中肯定没少听“板块”这个词&#xff0c;新手可能一脸懵逼&#xff0c;板块到底是啥意思&#xff1f;为什么会有这么多板块&#xff1f; 一、什么是股票板块&#xff1f;常见的板块分类有哪些&#xff1f; 板块理解起来其实很简单&#xff0c;它就是一种分…

API成批分配漏洞介绍与解决方案

一、API成批分配漏洞介绍 批量分配&#xff1a;在API的业务对象或数据结构中&#xff0c;通常存在多个属性&#xff0c;攻击者通过篡改属性值的方式&#xff0c;达到攻击目的。比如通过设置user.is_admin和user.is_manager的值提升用户权限等级&#xff1b;假设某API的默认接口…

从自动化、数字化到智能化,鸿蒙与制造业的双向奔赴

终端万物互联&#xff0c;商业竞争瞬息万变&#xff0c;制造企业面临着数字化转型与产品智能化升级的双重考验。鸿蒙操作系统以统一操作系统方案&#xff0c;可以为制造企业解决设备生态碎片化以及跨终端对接问题&#xff0c;提供安全性、流畅度、多屏协同等功能&#xff0c;实…

将本地项目推送到github

欢迎大家到我的博客浏览。将本地项目推送到github | YinKais Blog 本地项目上传至 GitHub<!--more--> 1、进入项目根目录&#xff0c;初始化本地仓库 git init 2、创建密钥&#xff1a;创建 .ssh 文件夹&#xff0c;并进入 .ssh 文件夹 mkdir .ssh cd .ssh/ 3、生成…

Robotframework自动化常见问题总结

Robotframework自动化新手常见问题总结 1. 经常有人问这个元素找不到&#xff0c;一般先排除这两个地方&#xff0c;再自己找找 A&#xff1a;是否等待了足够的时间让元素加载 (增加sleep xx, wait Until xxx) B: 仔细查查&#xff0c;这个元素是否进入到另一个frame了 (sel…

基于Intel Ai Analytics Toolkit 及边缘计算的溶氧预测水产养殖监测方案

基于AI的淡水养殖水质溯源、优化系统方案 前言一、关键需求及方案概述二、方案设计预测机制LSTM 模型基于intel AI 的时序水质分析模型与分类模型优化 三、实战分析1、方案简述2、数据分析预处理特征类型处理特征分布分析 3、特征构造4、特征选择过滤法重要性排序 5.构建LSTM模…

java游戏攻略资讯网站的设计与实现springboot+vue

游戏攻略网站分为管理员与用户两种角色。 管理员的功能包括登录&#xff0c;用户管理&#xff0c;游戏分类管理&#xff0c;游戏攻略管理&#xff0c;游戏资讯管理等。 登录功能&#xff1a;管理员需要登录进入系统后台。 用户管理&#xff1a;实现用户信息的查询&#xff0c;修…

TCP 重传、滑动窗口、流量控制、拥塞控制

1&#xff1a;重传机制 超时重传 快速重传 SACK 方法 Duplicate SACK 1&#xff1a;重传机制 超时重传&#xff1a;重传机制的其中一个方式&#xff0c;就是在发送数据时&#xff0c;设定一个定时器&#xff0c;当超过指定的时间后&#xff0c;没有收到对方的ACK确认应答报文…

vue3 中使用 sse 最佳实践,封装工具

工具 // 接受参数 export interface SSEChatParams {url: string,// sse 连接onmessage: (event: MessageEvent) > void,// 处理消息的函数onopen: () > void,// 建立连接触发的事件finallyHandler: () > void,// 相当于 try_finally 中的 finally 部分&#xff0c;不…

读书笔记-《数据结构与算法》-摘要1[数据结构]

文章目录 [数据结构]1. String - 字符串2. Linked List - 链表2.1 链表的基本操作2.1.1 反转链表单向链表双向链表 2.1.2 删除链表中的某个节点2.1.3 链表指针的鲁棒性2.1.4 快慢指针 3. Binary Tree - 二叉树3.1 树的遍历3.2 Binary Search Tree - 二叉查找树 4. Queue - 队列…

JDK21无法导入TimeUnit类

运行环境&#xff1a;windows11、IDEA2023.1.3、JDK21 问题描述&#xff1a;IDEA中无法导入java.util.concurrent.TimeUnit类。 以下截图是问题解决后的截图。有问题的时候未截图&#xff0c;说明一下&#xff0c;有问题的时候TimeUnit类是红色的&#xff0c;无法导入&#x…

申请开通QMT量化需要多少资金?免费开通!

最近量化交易在市场上大火&#xff0c;很多投资者想要参与进来。QMT量化软件是目前市场上一款比较常见并且强大的量化软件。那开通QMT量化交易软件需要多少资金&#xff1f; QMT量化交易软件是一种专门用于量化交易的工具&#xff0c;它能够帮助投资者通过程序化交易策略进行股…