Linux:基本指令与内涵理解
1.文件操作指令
1.1 ls
ls指令用于查看指定层级文件夹下的文件或文件夹
基本格式:ls (选项) (查看层级)
其中选项处不写就默认是显示文件名,查看层级默认是当前层级
选项1: -l
作用:将查找文件的详细信息显示出来
我们看到这里有些是以d开头的,有些是-开头的。
用d带头的是目录(文件夹), - 开头的是普通文件
选项2: -a
作用:将隐藏的文件显示出来(隐藏文件前面有一个' . ')
选项3:-d
作用:将目录名字显示出来,而不显示其下面的文件
这里我们的t1文件夹(目录)有一个test.c文件,正常来说我们会将t1中的文件test.c显示出来,使用-d选项后,我们就只显示目录本身
1.2pwd
作用:显示用户当前所在的目录层级
格式:pwd
这表示我们现在在一个普通用户的根目录下
1.3cd 与whoami
作用:用于进入不同的目录中
格式: cd (目录名)
目录名可以用绝对路径,也可以用相对路径
其中绝对路径是从/根目录开始定位的,相对路径是从当前目录开始定位的
绝对路径:
这里我们cd后面跟的就是绝对路径,是从根目录开始定位的
相对路径:
这里我们进入的就是当前目录的上一级目录,..表示上一级,.表示当前级,/后面接文件表示进入该文件
特殊目录名:~
我们用cd ~可以快速进入到家目录,而家目录就是用whoami指令查找到的目录层级位置
我们用whoami指令查找到家目录是Ubuntu,然后cd ~就跳转到了Ubuntu为止
特殊用法: -
可以进入上一次访问的路径
![]()
补充:对于linux与Windows系统的目录结构的理解(系统皆文件)
两个系统的结构都是树状结构,也就是多叉树结构。
对于叶子结点:一定是空目录或文件
对于非叶子节点:一定是目录
linux:
绝对路径具有唯一性:因为每个文件只有一个直接上级目录,这种定位准确且直观,但是如果我们的树状结构层级很深,那么绝对路径就会显得很麻烦,此时我们就应该使用相对路径
接下来我们使用相对路径从t1位置跳转到test位置
原本我们在t1目录中,然后我们..进入上一级目录ubuntu,再/test进入test中
需要注意的是,从当前目录到某个文件的相对路径也是唯一的
Windows:
我们可以把此电脑当成一个根目录文件夹,而本地磁盘c,d,e可以当成是文件夹
我们都知道,在进入系统桌面时我们需要登录账号,而这个登录其实就是进入用户文件夹,而admin就是Windows系统中的一个管理员用户的账号,还可以创建其他的普通用户。
而桌面其实也是一个user中的文件夹,只是用图形化界面显示而已
1.4touch与stat
我们知道文件是由文件属性和文件内容构成的,对文件的操作分为内容操作和属性操作
stat指令
可以查看文件的更多属性
这里我们先看其中三个属性
1.Access 最新访问时间 2.Modify 内容修改时间 3.Change 最新变动时间
我们可以用不同的选项更改这三个时间
用touch再操作一次已有文件:三个时间都更新为这次操作的时间
用touch -a :修改access和change
用touch -m: 修改modify和change
用touch -c:修改三个时间
touch指令
作用1:更改文件的存取或更改时间,这是对文件的属性的操作
作用2:创建;一个新文件
我们可以看到这里新建了一个newtext文件
1.5mkdir与tree
(1)mkdir
作用:创建新的目录
格式:mkdir (选项)新目录名
这里我们用mkdir在ubuntu目录下创建一个新目录newdir,然后进入到该新目录中
选项1:-p
作用:创建一连串的目录
这里我们原本是没有目录存在的,后面利用-p选项实现了一次创建多个连续目录
(2)tree
作用:利用树状图的形式将我们当前目录下的子文件和子目录显示出来
格式:tree 目录名(默认当前目录)
不过tree不是默认安装的指令,如果要使用还需要联网用指令安装,具体的指令可以用大模型搜索问一下
1.6rmdir,rm,alias
(1)rmdir
作用:删除目录
格式:rmdir 目录名
原本当前目录中有一个t3目录,我们利用rmdir删除t3目录
(2)rm
作用:删除目录或文件
格式:rm (选项)目录/文件名
删除文件:
删除文件的时候可以随意删除,但是默认情况下(没给特定选项),它无法删除目录
默认情况无法删除目录:
选项1:-r
作用:递归的删除该目录及该目录的所有子目录与子文件
格式:rm -r 目录名
加了-r之后我们就可以实现对目录以及目录的子目录、文件的删除
选项2:-i
作用:让系统每次执行访问或删除操作前对我们进行指令确认
格式: rm -i 目录名
这里我们加了-i之后,系统提示我们是否需要删除t3.txt,我们输入y表示yes,输入n表示no。
作为普通用户,我们的删除一般是不会弹出确认提示的
不过如果我们是root账号登录,任何删除指令都会问我们进行确认
此时如果我们确认需要删除,但是删除的层级又太深,就需要输入很多次y,很繁琐,所以我们还有一个选项可以去除指令确认步骤,直接删除
选项3:-f
作用:免除指令确认步骤,直接执行对应指令
格式:rm -f 目录名
由于ubuntu系统不建议使用root账号,所以这里我们其实是使用普通账号进行操作,仅供参考代码。
思考:我们使用-r可以删除一连串的目录或文件,那么我们可不可以将-r和-i选项结合使用,实现删除链路上的指定文件呢?
这里我们前两行指令确认是访问指令,我们同意进入t1/t2,第三行指令询问我们是否删除delete.txt,我们选择y,然后后面的t2和t1删除指令我们选择n。这样子我们就实现了只删除delete.txt的操作了。
补充:alias
作用:给某个指令取别名
格式:alias 别名=‘原名’
其实涉及指令结合的时候我们可以不用-r -i这样分开来书写,而是直接-ri
目的:当出现选项和文件名繁多的时候简化指令书写,提高可读性
实现原理:利用了alias指令对原本复杂的名字取别名
注意:别名,=,原名之间不能加空格
![]()
思考:我们是否可以一次性建立多个文件,然后又一次性删除多个文件呢?
创建多个文件的格式:touch 文件名{编号1..编号n}.文件属性(.c/.txt)
删除的格式:rm 文件名{编号1..编号n}.文件属性(.c/.txt)
1.7指令手册man
作用:查找对应指令的作用
格式:man (选项:手册编号)指令名
输入完指令后按回车键进入手册
退出手册按q字母键
手册编号:在选项位置输入不同的数字就会查找对应指令在该编号手册的信息
手册编号有多个,其中
1:普通指令
2:系统调用
3:库函数
4:。。。。
一个指令可能会在多个手册中同时存在,并记载着他的不同作用
1.8which
作用:查找指令所处的目录
格式:which 指令名eg:查找ls的目录
这里我们看到ls所处的目录是user路径下的bin文件夹中,在该文件夹中的可执行程序其实就是指令,我们自己也可以写一个程序放进bin文件夹中,放进去后我们的程序编译后的名字就是一个我们自己实现指令了,可以在linux中当成指令使用,不过平时不要图方便乱加指令进去污染指令库
对指令格式的理解:我们平时如果要执行一个程序,第一步就是找到这个程序的位置,然后才能执行命令,但是为什么指令可以直接输入指令名,而不需要查找指令程序的位置?
这是因为我们有一个默认的指令位置:user/bin,所有指令都存在这个默认目录下,所以我们可以直接使用指令
而安装软件其实也就是从网络上下载到bin目录下
1.9cp
作用:将对应文件或目录复制到目标目录或文件中
格式:cp (选项)文件、目录 目标文件、目录
这里我们原本test.txt是和test目录同级的,然后我们用cp指令把test.txt复制到了test文件夹中,从而test目录中也有了test.txt
我们这里同样也可以用相对路径实现,如果我们还需要更改名字,我们可以在后面加个/然后写个新文件名
2.linux中一切皆文件
我们在linux的显示器上输出数据相当于是将数据输入到显示器文件中,而从键盘中读取数据相当于从键盘文件中获取数据。
我们用echo命令来加深这个理解
echo的作用:将指定信息写入显示器文件中
格式: echo 文件/目录、字符串等信息
1.输出重定向:>
作用:将原本应该写在显示器文件中的数据写在另一个文件或目录中(先清空再写入)
格式:echo(也可以是任意写入信息到显示器的指令,比如ls) 信息>目录/文件
这里我们就把原本应该写在显示器上的信息重定向给了log.txt
2.追加重定向:>>
作用:将原本应该写在显示器文件中的数据追加到另一个文件或目录中(不用先清空)
格式:写入内容在显示器的指令 >>指定文件
3.清空指定文件/新建文件
格式:>文件名
若对应文件不存在,他还可以新建一个这个文件
相关文章:
Linux:基本指令与内涵理解
1.文件操作指令 1.1 ls ls指令用于查看指定层级文件夹下的文件或文件夹 基本格式:ls (选项) (查看层级) 其中选项处不写就默认是显示文件名,查看层级默认是当前层级 选项1: -l 作用:将查找文件的详细信息显示出来 我们…...
C++设计模式-抽象工厂模式:从原理、适用场景、使用方法,常见问题和解决方案深度解析
一、模式基本概念 1.1 定义与核心思想 抽象工厂模式(Abstract Factory Pattern)是创建型设计模式的集大成者,它通过提供统一的接口来创建多个相互关联或依赖的对象族,而无需指定具体类。其核心思想体现在两个维度: …...
LINUX系统安装+添加共享目录
一、前言 Windows或mac系统中创建Linux工作环境是基于VMware和SL(Scientific Linux),下面分别安装二者。 二、VMware软件安装及注册 1、双击VMware安装包 2、点击下一步 3、 勾选接受许可,并点击下一步 4、更改路径(建议更改为容易找到的路…...
《UE5_C++多人TPS完整教程》学习笔记34 ——《P35 网络角色(Network Role)》
本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P35 网络角色(Network Role)》 的学习笔记,该系列教学视频为计算机工程师、程序员、游戏开发者、作家(Engineer, Programmer, Game Developer, Author) Stephe…...
成为git砖家(9): rebase进阶: 拆分commit为多个
问题描述 当一次性 git add 了多个修改点, 并且快速的执行了 git commit 后, 你觉得有点懊恼: 明明可以独立为两次或多次 commit, 揉在一块导致历史记录不太清晰。 比如我在 nn1 这个练手项目中, 最近一次 commit&am…...
pytorch retain_grad vs requires_grad
requires_grad大家都挺熟悉的,因此穿插在retain_grad的例子里进行捎带讲解就行。下面看一个代码片段: import torch# 创建一个标量 tensor,并开启梯度计算 x torch.tensor(2.0, requires_gradTrue)# 中间计算:y 依赖于 x&#x…...
Axure常用变量及使用方法详解
点击下载《Axure常用变量及使用方法详解.pdf》 摘要 Axure RP 作为一款领先的前端原型设计工具,提供了全面的 变量 和 函数 系统,以支持复杂的交互设计和动态内容展示。本文将从专业角度详细解析 Axure 中的 全局变量、中继器数据集变量/函数、元件变量…...
为企业级AI交互系统OpenWebUI集成LDAP用户权限认证(2)
为企业级AI交互系统OpenWebUI集成LDAP用户权限认证(2) 本文介绍如何OpenWebUI系统集成LDAP认证服务,及其用户权限及用户组设置。 推荐超级课程: 本地离线DeepSeek AI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速入门实战目录…...
mac 被禁用docker ui后,如何使用lima虚拟机启动docker
本机macos 安装lima brew install lima创建配置 echo "\\ndynamic:\n big-sur:\n image: docker://docker:git\n linux:\n image: docker.io/limasoftware/ubuntu:20.04 \\n" > ~/.lima/default.yaml启动名叫default的虚拟机 limactl start default进…...
C#实现AES-CBC加密工具类(含完整源码及使用教程)
一、AES-CBC加密应用场景 AES(Advanced Encryption Standard)作为全球公认的安全加密标准,广泛使用在以下场景: API通信加密:保护HTTP接口传输的敏感数据(如身份令牌、支付信息)文件安全存储&…...
Unity辅助工具_头部与svn
Unity调用者按钮增加PlaySideButton using QQu; using UnityEditor; using UnityEngine; [InitializeOnLoad] public class PlaySideButton {static PlaySideButton(){UnityEditorToolbar.RightToolbarGUI.Add(OnRightToolbarGUI);UnityEditorToolbar.LeftToolbarGUI.Add(OnLe…...
VBA 数据库同一表的当前行与其他行的主键重复判断实现方案1
目的,判断是否主键重复,不重复则登录新数据,重复则不登录。 定义类型: DataRecord tableName 表名 rowNumber 行号 columnName 列名 data 数据 想要实现的代码逻辑如下: 模拟数据库的登录过程。假设…...
Pytorch系列教程:可视化Pytorch模型训练过程
深度学习和理解训练过程中的学习和进步机制对于优化性能、诊断欠拟合或过拟合等问题至关重要。将训练过程可视化的过程为学习的动态提供了有价值的见解,使我们能够做出合理的决策。训练进度必须可视化的两种方法是:使用Matplotlib和Tensor Board。在本文…...
CSS伸缩盒模型(弹性盒子)
伸缩盒模型(Flexbox,Flexible Box Layout)是 CSS 中一种一维布局模型,用于更高效地处理元素的对齐、分布和响应式布局。其核心思想是让容器内的子元素(称为“项目”)能够灵活地自动调整大小和位置以适应不同…...
C++蓝桥杯基础篇(十一)
片头 嗨~小伙伴们,大家好!今天我们来学习C蓝桥杯基础篇(十一),学习类,结构体,指针相关知识,准备好了吗?咱们开始咯~ 一、类与结构体 类的定义:在C中&#x…...
版本控制泄露源码 .svn
##相关知识 SVN源码泄露 SVN(subversion)是源代码版本管理软件,造成 SVN 源代码漏洞的主要原因是管理员操作不规范。“ 在使用 SVN 管理本地代码过程中,会自动生成一个名为 .svn 的隐藏文件夹,其中包含重要的源代码信…...
基于单片机的风速报警装置设计
标题:基于单片机的风速报警装置设计 内容:1.摘要 本设计聚焦于基于单片机的风速报警装置,旨在解决传统风速监测缺乏实时报警功能的问题。采用单片机作为核心控制单元,结合风速传感器采集风速数据。经实验测试,该装置能准确测量 0 - 60m/s 范…...
YOLOv12本地部署教程——42%速度提升,让高效目标检测触手可及
YOLOv12 是“你只看一次”(You Only Look Once, YOLO)系列的最新版本,于 2025 年 2 月发布。它引入了注意力机制,提升了检测精度,同时保持了高效的实时性能。在保持速度的同时,显著提升了检测精度。例如&am…...
Banana Pi OpenWRT One Wifi6 OpenWrt社区官方开源路由器评测
第一款不可破解、开源、版权软件、符合 FCC、CE 和 RoHS 的维修权路由器 OpenWRT项目今年已经20岁了,为了纪念这一时刻,Banana Pi OpenWrt One/AP-24.XY路由器开发系统已经上市。这是OpenWRT团队与硬件公司的第一个联合项目。选择 Banana Pi,…...
【算法】经典排序算法介绍+代码示例
排序算法介绍 1)冒泡排序 (Bubble Sort)2)选择排序(Selection Sort)3)插入排序(Insertion Sort)4)希尔排序(Shell Sort)5)归并排序(Me…...
DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加列宽调整功能,示例Table14_02带边框和斑马纹的固定表头表格
前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...
【Linux】线程控制
目录 一、原生线程库: 二、线程控制: 1、线程创建: 2、线程等待: 自定义类型的接收对象: 编辑 3、线程终止: pthread_exit: pthread_cancel: 4、线程ID: 线程库的底层原…...
pyqt联合designer的运用和设置
PyQt Designer 简介 PyQt Designer 是一个用于创建和设计 PyQt 应用程序用户界面的可视化工具。它允许用户通过拖放方式添加和排列各种控件,如按钮、文本框、滑块等,并设置它们的属性和样式,从而快速构建出美观且功能完整的 UI 界面。 Windows版本:【免费】安装包别管啊啊…...
spring boot3.4.3+MybatisPlus3.5.5+swagger-ui2.7.0
使用 MyBatis-Plus 操作 books 表。我们将实现以下功能: 创建实体类 Book。 创建 Mapper 接口 BookMapper。 创建 Service 层 BookService 和 BookServiceImpl。 创建 Controller 层 BookController。 配置 MyBatis-Plus 和数据库连接。 1. 项目结构 src ├─…...
利用微软的 HTML 应用程序宿主程序的攻击
mshta.exe 是微软的 HTML 应用程序宿主程序(Microsoft HTML Application Host),属于 Windows 系统组件。它的核心功能是运行 .hta(HTML Application)文件,允许通过 HTML、JavaScript、VBScript 等技术创建交…...
【深度学习】读写文件
读写文件 到目前为止,我们讨论了如何处理数据,以及如何构建、训练和测试深度学习模型。 然而,有时我们希望保存训练的模型,以备将来在各种环境中使用(比如在部署中进行预测)。 此外,当运行一个…...
Bert的使用
一、Data.py # data负责产生两个dataloader from torch.utils.data import DataLoader, Dataset from sklearn.model_selection import train_test_split #给X,Y 和分割比例, 分割出来一个训练集和验证机的X, Y import torchdef read_file(path):data []label …...
Unity使用UGUI制作无限滑动列表
原理参照上一篇使用NGUI的制作无限滑动列表的文章 Unity 使用NGUI制作无限滑动列表_unity 滑动列表很多物体-CSDN博客 准备工作: 新建一个空物体命名为LoopList,并调整其大小, 并增加Scroll Rect组件(用于滑动)、Re…...
ThinkPHP6用户登录系统的全过程
ThinkPHP6用户登录系统的全过程涉及请求处理、数据传输、路由分发、控制器逻辑、模型验证及中间件协作等多个模块的交互。详细的过程解析如下: 1. 前端请求与路由分发 前端发起请求:用户在前端页面(如Vue组件或HTML表单)输入用户…...
C++全栈聊天项目(2) 单例模式封装Http管理者
完善注册类界面 先在注册类构造函数里添加lineEdit的模式为密码模式 ui->lineEdit_Passwd->setEchoMode(QLineEdit::Password); ui->lineEdit_Confirm->setEchoMode(QLineEdit::Password);我们在注册界面的ui里添加一个widget,widget内部包含一个tip居…...
【鸿蒙开发】OpenHarmony调测工具hdc使用教程(设备开发者)
00. 目录 文章目录 00. 目录01. OpenHarmony概述02. hdc简介03. hdc获取04. option相关的命令05. 查询设备列表的命令06. 服务进程相关命令07. 网络相关的命令08. 文件相关的命令09. 应用相关的命令10. 调试相关的命令11. 常见问题12. 附录 01. OpenHarmony概述 OpenHarmony是…...
ORACLE EBS数据库RELINK方式搭建克隆环境
ORACLE EBS系统的数据库,一般都安装了很多特定功能的小补丁来解决特定的BUG;因此对于已经安装好的系统,想要克隆一套测试环境、搭建一个新的备机做测试等,如果按照生产环境标准,则需要安装大量补丁,带来很大…...
MySQL regexp 命令
REGEXP命令是一种用于进行正则表达式匹配的运算符,允许在查询中使用正则表达式来匹配字符串模式1。 基本语法 基本的语法结构如下: SELECT * FROM table_name WHERE column_name REGEXP pattern; 这里,pattern是你要匹配的正则表达式模…...
前端实习到工作的经历
看了很多人的程序员生涯之路,我突然意识到我也该记录一些东西,因此有感而发。 我是一个24届毕业生,大三下就开始找前端实习,当时学校不让走,我们都是先面着然后准备放假就去。当时周围小伙伴都找好了,考完…...
Vue3——Fragment
文章目录 一、Fragment的核心意义1. 解决Vue2的单根限制问题2. 减少不必要的 DOM 嵌套3. 语义化和结构化 二、Fragment 的实现原理三、Fragment 使用方式1. 基本用法2. 结合条件渲染3. 动态组件 四、实际应用场景1. 列表/表格组件2. 布局组件3. 语义化标签 五、注意事项1. 属性…...
Linux_16进程地址空间
CPU内的寄存器只有一套,但是CPU内寄存器的数据可能会有多份! 一、程序地址空间 下面这个图对应的是内存吗?(实际上是虚拟的进程地址空间) 32位机器内存最大为多少? 32位操作系统的地址总线为32位&#x…...
职坐标机器学习编程实战:调试优化与自动化测试精要
内容概要 在机器学习编程实践中,代码调试优化与自动化测试工具的应用是构建高可靠性系统的核心环节。本书聚焦从数据预处理到模型部署的全流程,通过特征工程优化、训练过程监控及持续集成方案的设计,系统化解决算法工程化中的典型问题。在特…...
git文件过大导致gitea仓库镜像推送失败问题解决(push failed: context deadline exceeded)
问题描述: 今天发现gitea仓库推送到某个镜像仓库的操作几个月前已经报错终止推送了,报错如下: 首先翻译报错提示可知是因为git仓库大小超过1G限制。检查本地.git文件,发现.git文件大小已达到1.13G。确定是.git文件过大导致&…...
llvm数据流分析
llvm数据流分析 1.数据流分析2.LLVM实现2.1.常量传播2.2.活跃性分析 相关参考文档:DataFlowAnalysisIntro、ustc编译原理课程、南大程序分析课程1、南大程序分析课程2。 1.数据流分析 数据流分析在编译优化等程序分析任务上都有重要应用。通常数据流分析可被抽象为…...
Vite为什么选用Rollup打包?
Vite 在生产阶段使用 Rollup 打包,但这不是唯一选择。它的设计背后有明确的权衡和考量,同时开发者也可以选择其他替代方案。 一、为什么 Vite 默认使用 Rollup? 1. Rollup 的核心优势 • Tree-shaking:Rollup 的静态分析能力极强&…...
Docker 入门与实战指南
Docker 入门与实战指南 一、Docker 简介 Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖打包成一个可移植的容器。容器可以在任何安装了 Docker 的环境中运行,确保应用的一致性和可移植性。 1.1 为什么使用 Docker? 环境一…...
C# 常用数据类型
C# 数据类型分为 值类型、引用类型 和 特殊类型,以下是详细分类及对应范围/说明: 一、值类型(Value Types) 值类型直接存储数据,分配在栈内存中,默认不可为 null。 简单类型 整数类型…...
深入解读 JavaScript 中 `this` 的指向机制:覆盖所有场景与底层原理
this 是 JavaScript 中最容易引发困惑的核心概念之一,它的指向在不同场景下呈现截然不同的行为。本文将系统性地解析 this 的所有使用场景,结合代码示例和底层原理,帮助你彻底掌握其运行机制。 一、全局环境下的 this 1. 浏览器环境 在浏览器…...
无人机全景应用解析与技术演进趋势
无人机全景应用解析与技术演进趋势 ——从立体安防到万物互联的空中革命 一、现有应用场景全景解析 (一)公共安全领域 1. 立体安防体系 空中哨兵:搭载 77 GHz 77\text{GHz} 77GHz毫米波雷达(探测距离 5 km 5\text{km} 5km&…...
手写简易Tomcat核心实现:深入理解Servlet容器原理
目录 一、Tomcat概况 1. tomcat全局图 2.项目结构概览 二、实现步骤详解 2.1 基础工具包(com.qcby.util) 2.1.1 ResponseUtil:HTTP响应生成工具 2.1.2 SearchClassUtil:类扫描工具 2.1.3 WebServlet:自定义注解…...
【音视频】ffmpeg命令提取像素格式
1、提取YUV数据 提取yuv数据,并保持分辨率与原视频一致 使用-pix_fmt或-pixel_format指定yuv格式提取数据,并保持原来的分辨率 ffmpeg -i music.mp4 -t "01:00" -pixel_format yuv420p music.yuv提取成功后,可以使用ffplay指定y…...
深度剖析Redis:双写一致性问题及解决方案全景解析
在高并发场景下,缓存与数据库的双写一致性是每个开发者必须直面的核心挑战。本文通过5大解决方案,带你彻底攻克这一技术难关! 一、问题全景图:当缓存遇到数据库 1.1 典型问题场景 // 典型问题代码示例 public void updateProduc…...
Redis----大key、热key解决方案、脑裂问题
文章中相关知识点在往期已经更新过了,如果有友友不理解可翻看往期内容 出现脑裂问题怎么保证集群还是高可用的 什么是脑裂问题 脑裂说的就是当我们的主节点没有挂,但是因为网络延迟较大,然后和主节点相连的哨兵通信较差,之后主…...
Android 调用c++报错 exception of type std::bad_alloc: std::bad_alloc
一、报错信息 terminating with uncaught exception of type std::bad_alloc: std::bad_alloc 查了那部分报错c++代码 szGridSize因为文件太大,初始化溢出了 pEGM->pData = new float[szGridSize]; 解决办法 直接抛出异常,文件太大就失败吧 最后还增加一个日志输出,给…...
【从零开始学习计算机科学】操作系统(五)处理器调度
【从零开始学习计算机科学】操作系统(五)处理器调度 处理器调度一些简单的短程调度算法的思路先来先服务(First-Come-First-Served,FCFS)优先级调度及其变种最短作业优先调度算法(SJF)--非抢占式最短作业优先调度算法(SJF)--抢占式最高响应比优先调度算法轮转调度算法…...