绘制X-Bar-S和X-Bar-R图,监测过程,计算CPK过程能力指数
X-Bar-S图和X-Bar-R图是统计质量控制中常用的两种控制图,用于监测过程的稳定性和一致性。它们的主要区别在于如何计算和呈现数据的变化以及所关注的问题类型。
-
X-Bar-S图(平均值与标准偏差图):
- X-Bar代表样本均值,S代表样本标准偏差。
- X-Bar-S图用于监测过程的平均值和变异性。
- 过程中的每个样本都会测量,并计算出该样本的平均值(X-Bar)和标准偏差(S)。
- 控制图上通常有两条中心线:一条代表平均值,另一条代表标准偏差。
- X-Bar-S图适用于对过程均值和过程标准偏差都有关注的情况,例如,需要确保产品的尺寸和质量稳定。
-
X-Bar-R图(平均值与范围图):
- X-Bar代表样本均值,R代表样本范围。
- X-Bar-R图主要用于监测过程的平均值和范围,而不是标准偏差。
- 对每个样本进行测量,并计算出该样本的平均值(X-Bar)和范围(R,即最大值与最小值之差)。
- 控制图上通常有两条中心线:一条代表平均值,另一条代表范围。
- X-Bar-R图适用于关注过程的平均值,但不太关注过程的标准偏差的情况,例如,需要确保生产过程的平均值在目标值附近。
总之,X-Bar-S图和X-Bar-R图都用于监测过程的稳定性,但它们关注的参数不同。X-Bar-S图同时关注平均值和标准偏差,而X-Bar-R图关注平均值和样本范围。选择使用哪种图表取决于你对过程的关注点和需要监测的参数。
------------------------
下面是X-Bar-S图和X-Bar-R图的各自控制限计算公式:
X-Bar-S图的控制限计算公式:
-
上控制限(UCL)和下控制限(LCL)用于X-Bar图(平均值图):
- UCL(X-Bar) = X-Double Bar + A3 * S-Bar
- LCL(X-Bar) = X-Double Bar - A3 * S-Bar
其中,X-Double Bar是所有样本平均值的平均值,A3是与样本容量相关的常数,S-Bar是所有样本标准偏差的平均值。
-
上控制限(UCL)和下控制限(LCL)用于S图(标准偏差图):
- UCL(S) = B4 * S-Bar
- LCL(S) = B3 * S-Bar
其中,B3和B4是与样本容量相关的常数,S-Bar是所有样本标准偏差的平均值。
X-Bar-R图的控制限计算公式:
-
上控制限(UCL)和下控制限(LCL)用于X-Bar图(平均值图):
- UCL(X-Bar) = X-Double Bar + A2 * R-Bar
- LCL(X-Bar) = X-Double Bar - A2 * R-Bar
其中,X-Double Bar是所有样本平均值的平均值,A2是与样本容量相关的常数,R-Bar是所有样本范围的平均值。
-
上控制限(UCL)和下控制限(LCL)用于R图(范围图):
- UCL(R) = D4 * R-Bar
- LCL(R) = D3 * R-Bar
其中,D3和D4是与样本容量相关的常数,R-Bar是所有样本范围的平均值。
这些常数(如A2、B3、B4、D3和D4)取决于样本容量和所选的控制图类型,通常可以在统计参考表中找到相应的值。控制限的目标是帮助检测过程中任何异常或变化,以便及时采取纠正措施来维持过程的稳定性。
--------------
两种X-Bar控制图(X-Bar-S图和X-Bar-R图)的平均值图计算方法不同,是因为它们关注的参数和控制图的目的不同,这导致了不同的控制限计算方法。
-
X-Bar-S图的平均值图(X-Bar图):
- X-Bar-S图用于监测过程的平均值和标准偏差。它关注的是过程的整体平均水平以及过程中的变异性。
- 平均值图的上控制限(UCL)和下控制限(LCL)计算方法包括平均值(X-Bar)和标准偏差(S-Bar)的组合,因为在X-Bar-S图中,两者都是关注的参数。
- 控制限的目的是确保过程的平均值和标准偏差保持在可接受的范围内。
-
X-Bar-R图的平均值图(X-Bar图):
- X-Bar-R图用于监测过程的平均值和范围(即最大值与最小值之差)。它关注的是过程的平均水平和过程的范围变化。
- 平均值图的上控制限(UCL)和下控制限(LCL)计算方法包括平均值(X-Bar)和范围(R-Bar)的组合,因为在X-Bar-R图中,这两个参数是关注的。
- 控制限的目的是确保过程的平均值和范围保持在可接受的范围内。
因此,不同的控制图类型具有不同的控制限计算方法,以反映它们关注的参数和过程监测的目的。选择使用哪种图表取决于你对过程的关注点,例如,是更关注标准偏差还是范围的变化。
----------
X-Bar-R 控制图是一种用于监测过程稳定性和一致性的质量控制工具。首先,我们需要计算每组数据的平均值和范围,然后绘制控制图,并计算CPK以及合格率。
-
计算每组数据的平均值和范围: 对于每组数据,计算平均值和范围。范围(R)是每组数据中最大值与最小值的差异。
-
计算 X-Bar 控制图: a. 计算所有平均值的平均值(X-双点中心线)。 b. 绘制 X-Bar 控制图,将每组的平均值分布在图上。
-
计算 R 控制图: a. 计算所有范围值的平均值(R-双点中心线)。 b. 绘制 R 控制图,将每组的范围值分布在图上。
-
计算控制限: a. 计算 X-Bar 控制图的控制限,可以使用标准的控制图公式,通常为 X-Bar 的平均值加减 3 倍 R 的平均值。 b. 计算 R 控制图的控制限,通常为 R 的平均值乘以一个常数因子。
-
计算CPK(过程能力指数): CPK = min[(USL - X-双点中心线) / (3 * 标准差), (X-双点中心线 - LSL) / (3 * 标准差)] 其中,USL是产品规格上限,LSL是产品规格下限。
-
sigma 表示过程的标准差,它是通过控制图中的平均范围R 来估计的。
在控制图中,R 通常代表一组样本数据的范围,而 d2 是控制图常数,它是用于校正范围以估计标准差的。
sigma 被计算为:sigma = (平均范围R) / d2 -
计算产品规格上下限间的合格率: 使用正态分布表或统计软件,根据CPK值和规格上下限,计算出合格率。
这些步骤需要一些数据处理和图表绘制,最好使用统计软件或工具来执行。确保准确地计算平均值、范围、控制限、CPK,以及合格率。
----------
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import scipy.stats as stats
plt.rcParams['font.sans-serif'] = ['SimHei'] # 防止中文标签乱码
plt.rcParams['axes.unicode_minus'] = Falsedf = pd.read_excel('GuanZi1011.xlsx') #<class 'pandas.core.frame.DataFrame'>
# print(data)# print(df.columns)
# print(df.info)# 计算每组的平均值(X-Bar)
x_bar = df.mean(axis=0) # pandas Series # 计算每组的样本标准差(S)
s = df.std(axis=0, ddof=1)# # [10 rows x 10 columns] 10组,10个数据/组
# 固定的A2、B3、B4值
A3 = 0.975
B3 = 0.284
B4 = 1.716# 计算X-Bar控制图的控制限
X_Double_Bar = x_bar.mean()
S_Bar = s.mean()UCL_X_Bar = X_Double_Bar + A3 * S_Bar
LCL_X_Bar = X_Double_Bar - A3 * S_Barprint(f"UCL_X_Bar: {UCL_X_Bar}",f"LCL_X_Bar: {LCL_X_Bar}")# 计算S控制图的控制限
UCL_S = B4 * S_Bar
LCL_S = B3 * S_Bar# 创建X-Bar 控制图,添加上下控制限
plt.figure(figsize=(5.3, 6))
plt.subplot(2, 1, 1)
plt.plot(x_bar, marker='o')
plt.axhline(X_Double_Bar, color='r', linestyle='--', label='Overall Mean')
plt.axhline(UCL_X_Bar, color='g', linestyle='--', label='UCL')
plt.axhline(LCL_X_Bar, color='b', linestyle='--', label='LCL')
plt.title('X-Bar Control Chart')
# plt.xlabel('Sample Group')
plt.ylabel('X-Bar')
plt.legend()# 创建S 控制图,添加上下控制限
plt.subplot(2, 1, 2)
plt.plot(s, marker='o')
plt.axhline(S_Bar, color='r', linestyle='--', label='Overall Mean')
plt.axhline(UCL_S, color='g', linestyle='--', label='UCL')
plt.axhline(LCL_S, color='b', linestyle='--', label='LCL')
plt.title('S Control Chart')
# plt.xlabel('Sample Group')
plt.ylabel('S')
plt.legend()plt.tight_layout()
plt.show()# X-Bar-S图 控制限计算公式:
# UCL(X-Bar) = X-Double Bar + A3 * S-Bar
# LCL(X-Bar) = X-Double Bar - A3 * S-Bar
# UCL(S) = B4 * S-Bar
# LCL(S) = B3 * S-Bar# X-Bar-R图的控制限计算公式:
# UCL(X-Bar) = X-Double Bar + A2 * R-Bar
# LCL(X-Bar) = X-Double Bar - A2 * R-Bar
# UCL(R) = D4 * R-Bar
# LCL(R) = D3 * R-Bar
import numpy as np
import matplotlib.pyplot as plt# 生成10组每组10个数据的示例数据(总共100个数据)
np.random.seed(0)
data = np.random.randn(10, 10)# 计算每组的平均值(X-Bar)
x_bar = np.mean(data, axis=1)# 计算每组的极差(R)
r = np.ptp(data, axis=1)# 固定的A2、D4、D3值
A2 = 0.308
D4 = 1.777
D3 = 0.223# 计算X-Bar控制图的控制限
X_Double_Bar = np.mean(x_bar)
R_Bar = np.mean(r)
UCL_X_Bar = X_Double_Bar + A2 * R_Bar
LCL_X_Bar = X_Double_Bar - A2 * R_Bar# 计算R控制图的控制限
UCL_R = D4 * R_Bar
LCL_R = D3 * R_Bar# 创建X-Bar 控制图,添加上下控制限
plt.figure(figsize=(12, 6))
plt.subplot(2, 1, 1)
plt.plot(x_bar, marker='o')
plt.axhline(X_Double_Bar, color='r', linestyle='--', label='Overall Mean')
plt.axhline(UCL_X_Bar, color='g', linestyle='--', label='UCL')
plt.axhline(LCL_X_Bar, color='b', linestyle='--', label='LCL')
plt.title('X-Bar Control Chart')
plt.xlabel('Sample Group')
plt.ylabel('X-Bar')
plt.legend()# 创建R 控制图,添加上下控制限
plt.subplot(2, 1, 2)
plt.plot(r, marker='o')
plt.axhline(R_Bar, color='r', linestyle='--', label='Overall Mean')
plt.axhline(UCL_R, color='g', linestyle='--', label='UCL')
plt.axhline(LCL_R, color='b', linestyle='--', label='LCL')
plt.title('R Control Chart')
plt.xlabel('Sample Group')
plt.ylabel('R')
plt.legend()plt.tight_layout()
plt.show()
绘制X-Bar-R图,监测过程,计算CPK过程能力指数
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
import pandas as pdplt.rcParams['font.sans-serif'] = ['SimHei'] # 防止中文标签乱码
plt.rcParams['axes.unicode_minus'] = False# 替换下面的数据为你的实际数据
data = pd.read_excel('GuanZi1011.xlsx')# 计算每组样本的平均值
x_bar = data.mean(axis=0) # Series# 计算每组样本的范围R
r = data.max(axis=0) - data.min(axis=0)x_bar_avg = np.mean(x_bar)
r_avg = np.mean(r)print(f'x_bar_avg: {x_bar_avg}')
print(f'r_avg: {r_avg}')# X-Bar-R图的控制系数 # [10 rows x 10 columns]
d2 = 3.078 # R控制图的常数,可以根据样本大小查表获取
A2 = 0.308 # X-Bar控制图的常数,可以根据样本大小查表获取
D4 = 1.777 # R控制图的常数,可以根据样本大小查表获取
D3 = 0.223 # R控制图的常数,可以根据样本大小查表获取USL = 5.1 # 规格上限
LSL = 4.9 # 规格下限# sigma 表示过程的标准差,它是通过控制图中的平均范围R 来估计的。
# 在控制图中,R 通常代表一组样本数据的范围,而 d2 是控制图常数,它是用于校正范围以估计标准差的。
# sigma 被计算为:sigma = (平均范围R) / d2
sigma = r_avg / d2# Z 分数(即标准分数,Z = (x - μ) / σ)根据数据点与一组点的平均值和标准偏差之间的关系来描述数据点
Zscore = min((USL - x_bar_avg) / sigma, (x_bar_avg - LSL) / sigma)# 计算CPK(过程能力指数):
# CPK = min[(USL - X-双点中心线) / (3 * 标准差), (X-双点中心线 - LSL) / (3 * 标准差)]
# 其中,USL是产品规格上限,LSL是产品规格下限。
cpk = min((USL - x_bar_avg) / (3 * sigma), (x_bar_avg - LSL) / (3 * sigma))
# 计算合格率
z_upper = (USL - x_bar_avg) / (sigma)
z_lower = (LSL - x_bar_avg) / (sigma)
cpk_area = norm.cdf(z_upper,0,1) - norm.cdf(z_lower,0,1)
cp= (USL-LSL) / (6* sigma) # 规格范围相对于过程的变异性有多宽
ppm = (1 - cpk_area) * 1000000 ## 换算成每百万机会的不合格品数print(f'sigma: {sigma}')
print(f'Zscore: {Zscore}')
print(f'CPK: {cpk}')
print(f"cpk_area:{cpk_area}")
print("CP:", cp)
print(f'PPM: {ppm}')# X-Bar-R图的控制限计算公式:
# UCL(X-Bar) = X-Double Bar + A2 * R-Bar
# LCL(X-Bar) = X-Double Bar - A2 * R-Bar
# UCL(R) = D4 * R-Bar
# LCL(R) = D3 * R-Barx_bar_UCL = x_bar_avg + A2 * r_avg
x_bar_LCL = x_bar_avg - A2 * r_avgr_UCL = D4 * r_avg
r_LCL = D3 * r_avg# 绘制X-Bar控制图
plt.figure(figsize=(7, 6))
plt.subplot(2, 1, 1)
plt.plot(x_bar, marker='o')
plt.axhline(x_bar_avg, color='r', linestyle='--', label='X-Bar Center Line')
plt.axhline(x_bar_UCL, color='g', linestyle='--', label='X-Bar UCL')
plt.axhline(x_bar_LCL, color='g', linestyle='--', label='X-Bar LCL')
plt.title('X-Bar Control Chart')
plt.legend()
plt.grid()# 绘制R控制图
plt.subplot(2, 1, 2)
plt.plot(r, marker='o')
plt.axhline(r_avg, color='r', linestyle='--', label='R Center Line')
plt.axhline(r_UCL, color='g', linestyle='--', label='R UCL')
plt.axhline(r_LCL, color='g', linestyle='--', label='R LCL')
plt.title('R Control Chart')
plt.legend()
plt.grid()
plt.show()

# X-Bar-S图 控制限计算公式:
# UCL(X-Bar) = X-Double Bar + A3 * S-Bar
# LCL(X-Bar) = X-Double Bar - A3 * S-Bar
# UCL(S) = B4 * S-Bar
# LCL(S) = B3 * S-Bar
# X-Bar-R图的控制限计算公式:
# UCL(X-Bar) = X-Double Bar + A2 * R-Bar
# LCL(X-Bar) = X-Double Bar - A2 * R-Bar
# UCL(R) = D4 * R-Bar
# LCL(R) = D3 * R-Bar
相关文章:
绘制X-Bar-S和X-Bar-R图,监测过程,计算CPK过程能力指数
X-Bar-S图和X-Bar-R图是统计质量控制中常用的两种控制图,用于监测过程的稳定性和一致性。它们的主要区别在于如何计算和呈现数据的变化以及所关注的问题类型。 X-Bar-S图(平均值与标准偏差图): X-Bar代表样本均值,S代表…...
【每日一句】只出现一次的数
文章目录 Tag题目来源题目解读解题思路方法一:位运算 其他语言Cpython3 写在最后 Tag 【位运算-异或和】【数组】【2023-10-14】 题目来源 136. 只出现一次的数字 题目解读 给你一个数组,找出数组中只出现一次的元素。题目保证仅有一个元素出现一次&a…...
GDB调试程序常用命令
编译文件 g -g -o test test.cpp(注意:GDB调试的前提是在编译时加上-g参数.) 启动gdb # 方法一 gdb test # 方法二 gdb file test 设置断点 tbreak:设置临时断点,仅在第一次触发后失效。 watch:设置观察点,监控变量的…...
C语言,求两个数的二进制表达中,有多少个位数不同
以前我的博客中写过一篇求二进制的1的个数的博客,里面用按位与1的方式来判断位数是否为一。 如代码所示: #include <stdio.h> int num(int n) {int a 0;int i 0;while (i < 32){a a (n & 1);n n >> 1;i;}return a; } int main…...
解决Win10电脑无线网卡的移动热点无法开启问题
一、目的 利用无线网卡连接网络,然后又用无线网卡通过移动热点分享该网络。 移动热点,简单地说,就是将台式机或笔记本的 Internet 连接转化成 WIFI 信号以供移动设备无线上网的功能,硬件前提是电脑须安装有无线网卡。 二、问题 …...
Spring framework Day10:JSR330注入注解
前言 JSR330是Java社区标准化进程(Java Community Process,简称JCP)中的一个规范,全名为"Dependency Injection for Java",即Java的依赖注入规范。它定义了一组注解和相关的规范,用于实现依赖注…...
Java开发中List数据量大,需要分片批次处理
在开发过程中可能会遇到需要处理的List数据量过大,可以选择分批处理的方式对大量数据进行处理。 1、使用 apache 的工具包 <dependency><groupId>org.apache.commons</groupId><artifactId>commons-collections4</artifactId><v…...
Apache Doris 2.0.2 版本正式发布!
峰会官网已上线,最新议程请关注:doris-summit.org.cn 点击报名 亲爱的社区小伙伴们,Apache Doris 2.0.2 版本已于 2023 年 10 月 6 日正式发布,该版本对多个功能进行了更新优化,旨在更好地满足用户的需求。有 92 位贡献…...
transformers架构实现
目录 架构代码如下 模型打印如下 架构代码如下 import numpy as np from torch.autograd import Variable import copy from torch import softmax import math import torch import torch.nn.functional as F import torch.nn as nn # 构建Embedding类来实现文本嵌入层 class…...
C++类型推导
这里对C的类型推导方式进行一次全面的总结。 C中有三种类型推导的方式,分别是模板、auto以及decltype()。以下分别介绍这三种方式的同异。 一 模板 假设有这样的函数模板和这样的调用: template<typename T> void f(ParamType param);f(expr);…...
Open3D(C++) SVD分解求两个点云的变换矩阵
目录 一、算法原理二、代码实现三、结果展示四、相关链接一、算法原理 计算两个点云的质心计算中心化向量计算协方差矩阵奇异值分解,求解旋转矩阵 R R R计算平移向量 t t...
rtmp htttp推流Windows桌面到srs进行播放
推流命令: ffmpeg -f gdigrab -framerate 30 -i desktop -c:v libx264 -preset ultrafast -tune zerolatency -pix_fmt yuv420p -f flv rtmp://xxx.xxx.xxxx.xx/live/livestream 后面是推流地址 推流后的播放地址为: http://xxxxxx:8080/live/livestream.flv 可以写一个…...
NSSCTF做题(9)
[GDOUCTF 2023]<ez_ze> 看见输入框而且有提示说是ssti注入 输入{{7*7}} 试试,发现报错 输入{%%}发现了是jinja2模板 找到关键函数 Python SSTI利用jinja过滤器进行Bypass ph0ebuss Blog 原理见这篇文章,这里直接给出payload {%set ninedict(aaa…...
【09】基础知识:React组件的生命周期
组件从创建到死亡它会经历一些特定的阶段。 React 组件中包含一系列勾子函数(生命周期回调函数 <> 生命周期钩子函数 <> 生命周期函数 <> 生命周期钩子),会在特定的时刻调用。 我们在定义组件时,会在特定的生…...
Pytorch之ConvNeXt图像分类
文章目录 前言一、ConvNeXt设计决策1.设计方案2.Training Techniques3.Macro Design🥇Changing stage compute ratio🥈Change stem to "Patchify" 4.ResNeXt-ify5. Inverted Bottleneck6.Large Kernel Size7.Micro Design✨Replacing ReLU wit…...
Linux系统编程:makefile以及文件系统编程
增量编译概念 首先回顾一下我们之前写的各种gcc指令用来执行程序: 可以看见非常繁琐,两个文件就要写这么多,那要是成百上千岂不完蛋。 所以为了简化工作量,很自然的想到了将这些命令放在一起使用脚本文件来一键执行,…...
《动手学深度学习 Pytorch版》 8.5 循环神经网络的从零开始实现
%matplotlib inline import math import torch from torch import nn from torch.nn import functional as F from d2l import torch as d2lbatch_size, num_steps 32, 35 train_iter, vocab d2l.load_data_time_machine(batch_size, num_steps) # 仍然使用时间机器数据集8.…...
写一个宏,可以将一个整数的二进制位的奇数位和偶数位交换
我们这里是利用按位与来计算的 我们可以想想怎么保留偶数上的位?我们可以利用0x55555555按位与上这个数就保留了偶数 我们知道,16进制0x55555555转换为二进制就是0x01010101010101010101010101010101 我们知道,二进制每一位,如…...
Zabbix监控系统详解2:基于Proxy分布式实现Web应用监控及Zabbix 高可用集群的搭建
文章目录 1. zabbix-proxy的分布式监控的概述1.1 分布式监控的主要作用1.2 监控数据流向1.3 构成组件1.3.1 zabbix-server1.3.2 Database1.3.3 zabbix-proxy1.3.4 zabbix-agent1.3.5 web 界面 2. 部署zabbix代理服务器2.1 前置准备2.2 配置 zabbix 的下载源,安装 za…...
docker 安装oracle
拉取镜像 拉取oracle_11g镜像 拉取oracle镜像(oracle 11.0.2 64bit 企业版 实例名: helowin) Oracle主要在Docker基础上安装,安装环境注意空间和内存,Oracle是一个非常庞大的一个软件, 建议使用网易镜像或阿里镜像网站这里以oracle 11.0.2…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
sshd代码修改banner
sshd服务连接之后会收到字符串: SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢? 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头,…...
