Nginx02-安装
零、文章目录
Nginx02-安装
1、Nginx官网
- Nginx官网地址:http://nginx.org/
2、Nginx下载
(1)Nginx下载
- 下载页地址:http://nginx.org/en/download.html
(2)更老版本下载
- 下载页地址:http://nginx.org/download/
3、Windows下安装
(1)下载最新稳定版解压如下
(2)两种启动nginx的方法
- 直接双击nginx.exe,双击后一个黑色的弹窗一闪而过
- 打开cmd命令窗口,切换到nginx解压目录下,输入命令
nginx.exe
,回车即可
(3)检查nginx是否启动成功
- 直接在浏览器地址栏输入网址 http://localhost:80 回车,出现以下页面说明启动成功!
(4)修改nginx配置监听
- nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可。
- 当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令
nginx -s reload
即可让改动生效。
(5)三种关闭nginx方法
## 快速停止nginx
nginx -s stop## 完整有序的停止nginx
nginx -s quit## 使用taskkill
taskkill是用来终止进程的,
/f是强制终止 .
/t终止指定的进程和任何由此启动的子进程。
/im示指定的进程名称
taskkill /f /t /im nginx.exe
4、linux环境准备
(1)准备服务器环境
- 虚拟机:VMware WorkStation,安装教程参考VMware Workstation Pro详解
- Linux 系统:Centos7.9
- 上传软件工具:FinalShell
- 网络:NAT 192.168.119.161
(2)确认CentOS的内核
- 准备一个内核为 2.6 及以上版本的操作系统,因为 linux2.6 及以上内核才支持 epoll,而 Nginx 需要解决高并发压力问题是需要用到 epoll,所以我们需要有这样的版本要求。
- 我们可以使用 uname -a 命令来查询linux的内核版本
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
(3)确保CentOS能联网
- 虚拟机设定NAT网络,参考VMware Workstation Pro详解
[root@localhost ~]# ping www.baidu.com
PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=1 ttl=128 time=35.1 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=2 ttl=128 time=34.4 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=3 ttl=128 time=31.0 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=4 ttl=128 time=31.2 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=5 ttl=128 time=34.9 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=6 ttl=128 time=30.5 ms
...
(4)确认关闭防火墙
- 这一项的要求仅针对于那些对 Linux 系统的防火墙设置规则不太清楚的,建议大家把防火墙都关闭掉,因为把防火墙关闭掉,可以省掉后续 Nginx 使用过程中遇到的诸多问题。
systemctl stop firewalld # 关闭运行的防火墙,系统重新启动后,防火墙将重新打开
systemctl disable firewalld # 永久关闭防火墙,系统重新启动后,防火墙依然关闭
systemctl status firewalld # 查看防火墙状态
(5)确认停用selinux
- selinux(security-enhanced linux),美国安全局对于强制访问控制的实现,在 Linux2.6 内核以后的版本中,selinux 已经成功内核中的一部分。可以说selinux 是 Linux 史上最杰出的新安全子系统之一。虽然有了 selinux,我们的系统会更安全,但是对于使用 Nginx 或者其他的学习过程中,会有很多设置,所以这块建议大家将 selinux 进行关闭。
- 修改配置文件
/etc/selinux/config
来进行设置,修改 SELINUX=disabled,然后重启下系统即可生效。
- 关闭之后,使用
sestatus
查看是否关闭成功
[root@localhost ~]# sestatus
SELinux status: disabled
5、Linux下Nginx安装环境配置
(1)更换YUM源
- 默认的源是国外的,网速较慢,经常会连不上,更换为国内镜像源
# 备份原有的 Yum 源配置文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# 下载新的 Yum 源配置文件,你可以选择使用阿里云、网易、腾讯云等国内镜像源。以下是使用阿里云作为例子的命令
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# 清理YUM缓存并重建缓存
sudo yum clean all
sudo yum makecache
(2)GCC
- Nginx 是使用 C 语言编写的程序,因此想要运行 Nginx 就需要安装一个编译工具。GCC 就是一个开源的编译器集合,用于处理各种各样的语言,其中就包含了 C 语言。
# 安装 gcc
yum install -y gcc# 查看 gcc 版本
gcc --version
(3)PCRE
- Nginx 在编译过程中需要使用到 PCRE 库(perl Compatible Regular Expressoin 兼容正则表达式库),因为在 Nginx 的 Rewrite 模块和 Http 核心模块都会使用到 PCRE 正则表达式语法。
# 安装 PCRE 和 pcre-devel
yum install -y pcre pcre-devel# 查看 PCRE 是否安装成功
rpm -qa pcre pcre-devel
(4)zlib
- zlib 库提供了开发人员的压缩算法,在 Nginx 的各个模块中需要使用 gzip 压缩,所以我们也需要提前安装其库及源代码 zlib 和 zlib-devel。
# 安装 zlib 和 zlib-devel
yum install -y zlib zlib-devel# 查看 zlib 和 zlib-devel 是否安装成功
rpm -qa zlib zlib-devel
(5)OpenSSL
- OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包进行安全通信,并且避免被窃听。
- SSL:Secure Sockets Layer 安全套接协议的缩写,可以在 Internet 上提供秘密性传输,其目标是保证两个应用间通信的保密性和可靠性。在 Nginx 中,如果服务器需要提供安全网页时就需要用到 OpenSSL 库,所以我们需要对 OpenSSL 的库文件及它的开发安装包进行一个安装。
# 安装 OpenSSL 库
yum install -y openssl openssl-devel# 查看 OpenSSL 是否安装成功
rpm -qa openssl openssl-devel
(6)全部软件一键安装
- 上述命令,一个个来的话比较麻烦,我们也可以通过一条命令来进行安装
# 全部安装 GCC、PCRE、zlib、OpenSSL
yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel# 查看安装版本
rpm -qa pcre pcre-devel zlib zlib-devel openssl openssl-devel
6、Linux下Nginx安装
(1)源码简单安装
- 在
/opt
目录下创建nginx/core
目录,-p
代表允许创建多级目录,进入官网获取最新版本地址链接,然后使用 wget 命令进行下载,如果 wget 命令下载速度慢,可以先下载到 Windows 系统,再使用工具上传到 Linux 下。
# 创建指定目录
mkdir -p /opt/nginx/core# 切换到目录
cd /opt/nginx/core# 下载nginx
wget http://nginx.org/download/nginx-1.26.2.tar.gz# 解压
tar -xzf nginx-1.26.2.tar.gz
- 配置编译安装
# 进入解压出的目录
cd nginx-1.26.2/# 配置安装的路径
./configure --prefix=/usr/local/nginx# 编译安装
make && make install
- 启动测试,访问服务器的IP地址http://192.168.119.161/
# 执行 nginx 文件
/usr/local/nginx/sbin/nginx
(2)源码简单安装卸载
- 将 Nginx 的进程关闭
/usr/local/nginx/sbin/nginx -s stop
- 将安装的 Nginx 进行删除
rm -rf /usr/local/nginx
- 删除解压的安装文件
rm -rf /opt/nginx
(3)yum安装
- 安装 yum-utils
sudo yum install -y yum-utils
- 添加 yum 源文件
vim /etc/yum.repos.d/nginx.repo
- 添加如下内容
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
- 使用 yum 安装 Nginx
sudo yum install -y nginx
- 查看是否安装成功
[root@localhost nginx-1.26.2]# yum list | grep nginx
nginx.x86_64 1:1.26.1-2.el7.ngx @nginx-stable
nginx-debug.x86_64 1:1.8.0-1.el7.ngx nginx-stable
nginx-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-geoip.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-geoip-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-image-filter.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-image-filter-debuginfo.x86_641:1.26.1-2.el7.ngx nginx-stable
nginx-module-njs.x86_64 1:1.26.1+0.8.5-2.el7.ngx nginx-stable
nginx-module-njs-debuginfo.x86_64 1:1.26.1+0.8.5-2.el7.ngx nginx-stable
nginx-module-perl.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-perl-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-xslt.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-xslt-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-nr-agent.noarch 2.0.0-12.el7.ngx nginx-stable
pcp-pmda-nginx.x86_64 4.3.2-13.el7_9 updates
- 查看nginx的安装位置
[root@localhost ~]# whereis nginx
nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx /usr/share/man/man8/nginx.8.gz
- 启动测试,访问服务器的IP地址http://192.168.119.161/
/usr/sbin/nginx
- 简单安装VSyum安装:yum安装会默认设设定一大堆参数,大部分是不需要贴别修改的,所以yum安装更简单。
(4)yum安装卸载
- 将 Nginx 的进程关闭
/usr/sbin/nginx -s stop
- yum移除nginx
yum remove nginx
(5)源码复杂安装
- 在
/opt
目录下创建nginx/core
目录,-p
代表允许创建多级目录,进入官网获取最新版本地址链接,然后使用 wget 命令进行下载,如果 wget 命令下载速度慢,可以先下载到 Windows 系统,再使用工具上传到 Linux 下。
# 创建指定目录
mkdir -p /opt/nginx/core# 切换到目录
cd /opt/nginx/core# 下载nginx
wget http://nginx.org/download/nginx-1.26.2.tar.gz# 解压
tar -xzf nginx-1.26.2.tar.gz
- 配置编译安装
# 进入解压出的目录
cd nginx-1.26.2/# 配置安装的路径
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--modules-path=/usr/local/nginx/modules \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--lock-path=/usr/local/nginx/logs/nginx.lock# 编译安装
make && make install
- 启动测试,访问服务器的IP地址http://192.168.119.161/
# 执行 nginx 文件
/usr/local/nginx/sbin/nginx
- 简答安装VS复杂安装:差异主要是/configure参数不同,说明如下
指令 | 作用 | 默认值 |
---|---|---|
–prefix=PATH | 指向 Nginx 的安装目录 | /usr/local/nginx |
–sbin-path=PATH | 指向(执行)程序文件(nginx)的路径 | <安装目录>/sbin/nginx |
–modules-path=PATH | 指向 Nginx 动态模块安装目录 | <安装目录>//modules |
–conf-path=PATH | 指向配置文件(nginx.conf)的路径 | <安装目录>/conf/nginx.conf |
–error-log-path=PATH | 指向错误日志文件的路径 | <安装目录>/logs/error.log |
–http-log-path=PATH | 指向访问日志文件的路径 | <安装目录>/logs/access.log |
–pid-path=PATH | 指向 Nginx 启动后进行ID的文件路径 | <安装目录>/logs/nginx.pid |
–lock-path=PATH | 指向 Nginx 锁文件的存放路径 | <安装目录>/logs/nginx.lock |
(6)源码复杂安装卸载
- 将 Nginx 的进程关闭
/usr/local/nginx/sbin/nginx -s stop
- 将安装的 Nginx 进行删除
rm -rf /usr/local/nginx
- 删除解压的安装文件
rm -rf /opt/nginx
7、Nginx目录结构
(1)安装tree
yum install -y tree
(2)目录结构
- CGI(Common Gateway Interface):通用网关【接口】,主要解决的问题是从客户端发送一个请求和数据,服务端获取到请求和数据后可以调用CGI【程序】处理及相应结果给客户端的。
- fastcgi scgi uwsgi等是一些速度比较快的协议
[root@localhost nginx-1.26.2]# tree /usr/local/nginx
/usr/local/nginx
├── client_body_temp
├── conf
│ ├── fastcgi.conf
│ ├── fastcgi.conf.default
│ ├── fastcgi_params
│ ├── fastcgi_params.default
│ ├── koi-utf
│ ├── koi-win
│ ├── mime.types
│ ├── mime.types.default
│ ├── nginx.conf
│ ├── nginx.conf.default
│ ├── scgi_params
│ ├── scgi_params.default
│ ├── uwsgi_params
│ ├── uwsgi_params.default
│ └── win-utf
├── fastcgi_temp
├── html
│ ├── 50x.html
│ └── index.html
├── logs
│ ├── access.log
│ ├── error.log
│ └── nginx.pid
├── proxy_temp
├── sbin
│ └── nginx
├── scgi_temp
└── uwsgi_temp9 directories, 21 files
(3)核心文件
- nginx 二进制可执行文件(启动、关闭、加载 Nginx)
- nginx.conf 配置文件
- error.log 错误的日志记录
- access.log 访问日志记录
(4)文件说明
- client_body_temp:存放客户端请求体的临时文件。
- conf:存放Nginx的配置文件。
fastcgi.conf
和fastcgi.conf.default
:FastCGI 配置文件及其默认配置。fastcgi_params
和fastcgi_params.default
:FastCGI 参数文件及其默认配置。koi-utf
和koi-win
:字符编码转换文件。mime.types
和mime.types.default
:定义MIME类型的文件及其默认配置。nginx.conf
和nginx.conf.default
:Nginx 主配置文件及其默认配置。scgi_params
和scgi_params.default
:SCGI 参数文件及其默认配置。uwsgi_params
和uwsgi_params.default
:uWSGI 参数文件及其默认配置。win-utf
:Windows 平台的字符编码转换文件。
- fastcgi_temp:存放FastCGI的临时文件。
- html:存放静态网页文件。
50x.html
:错误页面,通常用于显示服务器内部错误。index.html
:默认首页。
- logs:存放Nginx的日志文件。
access.log
:访问日志。error.log
:错误日志。nginx.pid
:Nginx 主进程的PID文件。
- proxy_temp:存放代理请求的临时文件。
- sbin:存放Nginx的可执行文件。
nginx
:Nginx 的主可执行文件。
scgi_temp
:存放SCGI的临时文件。uwsgi_temp
:存放uWSGI的临时文件。
相关文章:

Nginx02-安装
零、文章目录 Nginx02-安装 1、Nginx官网 Nginx官网地址:http://nginx.org/ 2、Nginx下载 (1)Nginx下载 下载页地址:http://nginx.org/en/download.html (2)更老版本下载 下载页地址:http…...
大模型基础架构
Transformer 设计者:Google 特点:最流行,几乎所有大模型都用它 代码:https://github.com/openai/finetune-transformer-lm/blob/master/train.py RWKV 设计者:PENG Bo 特点:可并行训练,推理性…...
MySQL 实验 10:数据查询(3)—— 聚合函数与分组查询
MySQL 实验 10:数据查询(3)—— 聚合函数与分组查询 目录 MySQL 实验 10:数据查询(3)—— 聚合函数与分组查询一、聚合函数1、计数函数(COUNT)2、求和函数(SUM࿰…...

感知机学习算法
感知机 一、感知机简介二、感知机模型2.1 感知机的基本组成2.2 求和函数2.2.1 时间总合2.2.2 空间总合 2.3 激活函数2.4 学习算法2.4.1 赫布学习规则2.4.2 Delta学习规则 三、 结论参考文献 一、感知机简介 M-P神经元模型因其对生物神经元激发过程的极大简化而成为神经网络研究…...

2024年双十一有什么好物推荐?双十一必买清单大汇总
随着科技的飞速发展,数码产品已成为我们生活中不可或缺的伙伴。2024年双十一购物狂欢节即将来临,众多消费者早已摩拳擦掌,准备在这个年度盛事中淘到心仪的数码好物。在这个信息爆炸的时代,如何从琳琅满目的商品中挑选出性价比高、…...

C语言贪吃蛇
#只讲逻辑不讲一些基础,基础大概过一遍就行# project-one: 无 (gitee.com)仓库里面有原代码 一、基础工作 1、先将你的编译器换成32位环境,也就是x86, 如果是控制台主机窗口则管,若不是需要改为控制台主机窗口 打开运行窗口后点…...
SpringBoot宠物咖啡馆平台:创新设计与高效实现
1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理基于Spring Boot的宠物咖啡馆平台的设计与…...

李宏毅深度学习-梯度下降和Batch Normalization批量归一化
Gradient Descent梯度下降 ▽ -> 梯度gradient -> vector向量 -> 下图中的红色箭头(loss等高线的法线方向) Tip1: Tuning your learning rates Adaptive Learning Rates自适应lr 通常lr会越来越小 Adaptive Learning Rates中每个参数都给它不…...

java集合框架都有哪些
Java集合框架(Java Collections Framework)是Java提供的一套设计良好的支持对一组对象进行操作的接口和类。这些接口和类定义了如何添加、删除、遍历和搜索集合中的元素。Java集合框架主要包括以下几个部分: 接口: Collection&…...
笔记整理—linux进程部分(8)线程与进程
前面用了高级IO去实现鼠标和键盘的读取,也说过要用多进程方式进行该操作: int mian(void) {int ret-1;int fd-1;char bug[100]{0};retfork();if(0ret){//子进程,读鼠标}if(0<ret){//父进程,读键盘}else{perror("fork&quo…...
使用 Python 实现遗传算法进行无人机路径规划
目录 使用 Python 实现遗传算法进行无人机路径规划引言1. 遗传算法概述1.1 定义1.2 基本步骤1.3 遗传算法的特点 2. 使用 Python 实现遗传算法2.1 安装必要的库2.2 定义类2.2.1 无人机模型类2.2.2 遗传算法类 2.3 示例程序 3. 遗传算法的优缺点3.1 优点3.2 缺点 4. 改进方向5. …...

JAVA基础: synchronized 和 lock的区别、synchronized锁机制与升级
1 synchronized 和 lock的区别 synchronized是一个关键字, lock是一个接口,实际使用的是实现类 synchronized通过触发的是系统级别的锁机制, lock是API级别的锁机制 synchronized自动获得锁,自动释放锁。 lock需要通过方法获得锁…...

自动驾驶 车道检测实用算法
自动驾驶 | 车道检测实用算法 车道识别是自动驾驶领域的一个重要问题,今天介绍一个利用摄像头图像进行车道识别的实用算法。该算法利用了OpenCV库和Udacity自动驾驶汽车数据库的相关内容。 该算法包含以下步骤: 摄像头校准,以移除镜头畸变&…...

22.第二阶段x86游戏实战2-背包遍历REP指令详解
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…...

java 的三种IO模型(BIO、NIO、AIO)
java 的三种IO模型(BIO、NIO、AIO) 一、BIO 阻塞式 IO(Blocking IO)1.1、BIO 工作机制1.2、BIO 实现单发单收1.3、BIO 实现多发多收1.4、BIO 实现客户端服务端多对一1.5、BIO 模式下的端口转发思想 二、NIO 同步非阻塞式 IO&#…...
低级语言和高级语言、大小写敏感、静态语言和动态语言、链接
低级语言和高级语言 一般而言,更接近硬件的语言被称为低级语言,反之,更远离硬件被称为高级语言。C语言既有低级语言的特点,又有高级语言的特点,又被称为系统语言。Java/Python一般被称为高级语言。 大小写敏感 DOS/Win…...

P3197 [HNOI2008] 越狱
题目传送门 题面 [HNOI2008] 越狱 题目描述 监狱有 n n n 个房间,每个房间关押一个犯人,有 m m m 种宗教,每个犯人会信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱。 …...

会声会影导出视频mp4格式哪个最高清,会声会影输出格式哪个清晰
调高分辨率后,mp4视频还是不清晰。哪怕全部使用4K级素材,仍然剪不出理想中的高画质作品。不是你的操作有问题,而是剪辑软件没选对。Corel公司拥有全球顶尖的图像处理技术,该公司研发的会声会影视频剪辑软件,在过去的20…...

Linux:进程调度算法和进程地址空间
✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一 进程调度算法 1.1 进程队列数据结构 1.2 优先级 编辑 1.3 活动队列 编辑 1.4 过期队列 1.5 active指针和expired指针 1.6 进程连接 二 进程地址空间 2.1 …...

TCP ---滑动窗口以及拥塞窗口
序言 在上一篇文章中我们介绍了 TCP 中的协议段格式,以及保证其可靠传输的重传机制,着重介绍了三次握手建立连接,四次挥手断开连接的过程(👉点击查看)。 这只是 TCP 保证通信可信策略的一部分,现在让我们继续深入吧&…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...

深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...

跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器
一、原理介绍 传统滑模观测器采用如下结构: 传统SMO中LPF会带来相位延迟和幅值衰减,并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF),可以去除高次谐波,并且不用相位补偿就可以获得一个误差较小的转子位…...

mac:大模型系列测试
0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何,是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试,是可以跑通文章里面的代码。训练速度也是很快的。 注意…...

2.3 物理层设备
在这个视频中,我们要学习工作在物理层的两种网络设备,分别是中继器和集线器。首先来看中继器。在计算机网络中两个节点之间,需要通过物理传输媒体或者说物理传输介质进行连接。像同轴电缆、双绞线就是典型的传输介质,假设A节点要给…...