当前位置: 首页 > news >正文

爆改老旧笔记本---将笔记本改造为家用linux服务器

爆改老旧笔记本---将笔记本改造为家用linux服务器

  • linux启动盘制作
    • 镜像文件
    • 分区类型:MBR分区和GPT分区的定义
      • MBR分区(Master Boot Record)
      • GPT分区(GUID Partition Table)
      • 应用场景和优势
        • MBR的应用场景和优势
        • GPT的应用场景和优势
      • Linux中如何查看分区类型
      • 其他补充内容
        • 文件系统和分区的关系
        • 兼容性考虑
        • 转换分区表
        • UEFI与MBR/GPT的关系
      • MBR分区限制原因分析
    • 文件系统
      • 电脑文件系统概述
      • 什么是文件系统?
      • 常见文件系统类型
      • FAT32 文件系统
        • 1. 简介
          • 2. 特点
        • 3. 限制
        • 4. 应用场景
      • NTFS 文件系统
        • 1. 简介
        • 2. 特点
        • 3. 限制
        • 4. 应用场景
      • FAT32 与 NTFS 的对比
      • 总结
  • 安装linux
    • 电脑 Boot 模式区别
      • 1. **BIOS(基本输入输出系统)启动模式**
        • **定义**
        • **特点**
        • **使用场景**
      • 2. **UEFI(统一扩展固件接口)启动模式**
        • **定义**
        • **特点**
        • **使用场景**
      • 3. **Legacy Mode(传统模式)**
        • **定义**
        • **特点**
        • **使用场景**
      • 4. **UEFI + Secure Boot**
        • **定义**
        • **特点**
        • **使用场景**
      • 5. **网络启动(PXE Boot)**
        • **定义**
        • **特点**
        • **使用场景**
      • 6. **启动模式选择(双启动和多启动)**
        • **定义**
        • **特点**
        • **使用场景**
      • **总结**
  • 对服务器的一些操作
    • 关闭自动休眠
    • 设置合盖不休眠
    • 安装vscode远程工具,设置免密登录

有一些脚本或者定时任务需要托管,虽然可以上各种云服务器,但是毕竟一年下来也要不少RMB,本着节省的目的,将家中无用的笔记本电脑改成linux服务器,以下记录改造过程中遇到的各种问题以及解决方法。

linux启动盘制作

参考:https://blog.csdn.net/LL596214569/article/details/138290658
链接中的大佬描述的非常详细,下面记录一些常识性问题。

镜像文件

笔记本常用的CPU主要是AMD和Intel,虽然架构不同,但都是64位,需要安装对应的64位的linux系统镜像;链接中下载的linux镜像文件名是:ubuntu-xx.xx.xx-desktop-amd64.iso,这个amd64并不是说只能运行在amd架构的芯片,只要是64位的CPU,都可以运行;

分区类型:MBR分区和GPT分区的定义

MBR分区(Master Boot Record)

MBR是一种传统的分区表格式,最早出现在IBM PC DOS 2.0中,具有以下特点:

  • 分区限制:最多支持4个主分区(或3个主分区加一个扩展分区,扩展分区可以包含多个逻辑分区)。
  • 存储容量限制:支持的最大硬盘容量为2TB(使用512字节扇区)。
  • 启动机制:通过存储在第一个扇区的引导代码加载操作系统。

GPT分区(GUID Partition Table)

GPT是更现代的分区表格式,作为MBR的替代方案,与UEFI(统一可扩展固件接口)标准紧密相关,具有以下特点:

  • 分区限制:支持最多128个主分区(具体数量受操作系统限制)。
  • 存储容量限制:理论上支持最大18EB(Exabytes)。
  • 数据冗余:分区表和启动信息在磁盘开头和结尾都备份,增加数据安全性。
  • 分区标识:每个分区都有一个唯一的GUID标识。

应用场景和优势

MBR的应用场景和优势
  • 适用于小容量磁盘(≤2TB)。
  • 老旧系统或硬件中使用(如旧版Windows、BIOS固件设备)。
  • 安装需要MBR分区的操作系统(如32位系统)。
GPT的应用场景和优势
  • 大容量硬盘(>2TB)。
  • 支持多分区且需要更高安全性的场景。
  • UEFI模式下启动的新系统(如Windows 10、Linux现代发行版)。
  • 数据中心和服务器,因其稳定性和数据安全性更高。

Linux中如何查看分区类型

在Linux中可以使用以下方法查看分区类型:

  • 使用fdisk命令
sudo fdisk -l

输出中会显示磁盘分区信息,其中包括MBR或GPT标识。

  • 使用parted命令
sudo parted /dev/sdX print

输出中的 Partition Table 项会显示分区表类型(msdos表示MBR,gpt表示GPT)。

  • 使用lsblk命令
lsblk -f

显示块设备的文件系统信息,辅助查看磁盘分区类型。

使用blkid命令

sudo blkid

显示设备UUID等信息,可判断是否为GPT(GUID格式)。

其他补充内容

文件系统和分区的关系
  • 分区表(如MBR、GPT)决定了磁盘的分区方式,而分区内部可以选择不同的文件系统(如ext4、NTFS、FAT32)。
兼容性考虑
  • Windows不支持在MBR分区的磁盘上创建超过2TB的卷。
  • 一些UEFI固件可能要求磁盘必须使用GPT分区表才能正常启动。
转换分区表
  • 从MBR转为GPT:可以使用gdisk或parted工具(需注意转换会清空数据)。
  • 从GPT转为MBR:也需要类似工具,且通常会丢失超过2TB的空间。
UEFI与MBR/GPT的关系
  • 传统BIOS通常使用MBR。
  • UEFI通常要求GPT,但一些实现支持MBR。

MBR分区限制原因分析

MBR(Master Boot Record)只能有4个主分区的限制,源自其分区表的设计方式。以下是原因的详细分析:

  1. 分区表结构限制
  • MBR分区表设计在磁盘的第一个扇区(512字节,或称0号扇区)。
  • 分区表的主要部分只有64字节(每个分区占16字节,共4个分区条目),因此只能记录最多4个主分区的信息。
  • 每个分区条目包含起始扇区、结束扇区等信息,但因空间限制无法记录更多分区。
  1. 主分区与扩展分区
  • 为了突破4个分区的限制,设计了“扩展分区”的概念:
  • 在4个分区条目中,可以用其中一个条目指向一个特殊的分区(扩展分区)。
  • 扩展分区本质上是一个容器,里面可以包含多个逻辑分区。
  • 逻辑分区的信息存储在扩展分区的链式结构中,不直接记录在MBR的64字节区域。
  1. 历史与兼容性
  • MBR诞生于上世纪80年代,当时的硬件能力和磁盘容量远低于今天,最多4个主分区已经足够。
  • 为了兼容早期操作系统和硬件,MBR的分区表格式被沿用下来,分区数量限制也随之保留。
  1. 为什么不能直接扩展主分区数量
  • 增加主分区数量需要更改MBR分区表的格式(例如增加分区条目空间)。
  • 修改分区表格式会导致与现有系统和工具的不兼容性,因此行业选择通过扩展分区和逻辑分区的方式解决问题,而不是直接改变标准。

文件系统

电脑文件系统概述

文件系统是操作系统用来组织、存储和管理数据的一种方法。它为数据在存储设备(如硬盘、SSD、U盘)上的存储和访问提供结构化的方式。本节以 FAT32NTFS 为主,介绍文件系统的概念、特点以及应用场景。


什么是文件系统?

文件系统定义了如何在存储设备上组织文件和目录,并管理文件的元数据(如文件名、大小、权限等)。
常见功能包括:

  • 数据组织(文件与目录结构)。
  • 存储空间分配与回收。
  • 文件访问与管理。

一个文件系统通常包括以下组成部分:

  1. 引导区:包含文件系统标识和启动信息。
  2. 文件元数据:描述文件的属性(如权限、大小)。
  3. 数据区:存储文件的实际内容。

常见文件系统类型

文件系统支持平台单文件最大大小分区最大大小特点与应用
FAT32Windows、Linux、macOS、嵌入式设备4GB2TB跨平台兼容性强,限制较多。
NTFSWindows、部分支持macOS/Linux无上限(2^64字节)256TB高效、功能丰富,兼容性较弱。
exFATWindows、macOS、部分Linux无上限128PB支持大文件,兼容性介于 FAT32 和 NTFS 之间。
ext4Linux16TB1EBLinux 默认文件系统。

FAT32 文件系统

1. 简介

FAT32(File Allocation Table 32)是 FAT 文件系统的升级版本,由微软推出,广泛应用于小型存储设备。

2. 特点
  • 跨平台兼容性强:支持 Windows、macOS、Linux 以及嵌入式设备。
  • 简单易用:结构简单,容易实现和维护。
  • 性能良好:适合小型存储设备,读写效率较高。
3. 限制
  • 单文件最大限制 4GB:无法存储超大文件。
  • 分区最大限制 2TB:不适合现代大容量硬盘。
  • 无文件权限支持:无法实现高级文件保护功能。
4. 应用场景
  • U盘与SD卡:由于其兼容性高,适合在多种设备之间传输文件。
  • 嵌入式设备:如相机、MP3 播放器等小型设备常使用 FAT32。

NTFS 文件系统

1. 简介

NTFS(New Technology File System)是微软为 Windows 系统开发的文件系统,提供了更高的性能和更多的功能。

2. 特点
  • 支持大文件和大容量分区:单文件大小和分区容量几乎无上限。
  • 文件权限和加密:支持访问控制列表(ACL),提供更强的数据保护。
  • 日志功能:通过记录文件操作日志,增强文件系统的可靠性。
  • 压缩与快照:支持文件压缩和快照功能,提升存储效率和数据恢复能力。
3. 限制
  • 跨平台兼容性差:macOS 默认只读 NTFS,Linux 需安装第三方驱动(如 NTFS-3G)。
  • 复杂性较高:相比 FAT32,NTFS 的实现和维护更复杂。
4. 应用场景
  • Windows 系统磁盘:NTFS 是现代 Windows 系统的默认文件系统。
  • 大文件存储:适合存储高清视频、虚拟机镜像文件等。
  • 安全需求场景:需要文件权限管理或加密的环境。

FAT32 与 NTFS 的对比

特性FAT32NTFS
跨平台兼容性优秀一般(需安装额外驱动)。
单文件大小限制最大 4GB无限制
分区大小限制最大 2TB256TB
文件权限支持不支持支持
数据可靠性无日志支持支持日志记录与崩溃恢复。
性能简单场景性能较好复杂场景更高效

总结

  • FAT32:适用于小型存储设备和跨平台文件传输,适合无需存储大文件的场景。
  • NTFS:更适合 Windows 环境,提供强大的功能支持,适用于大容量存储和高安全性需求的场景。

根据使用需求和设备兼容性,选择合适的文件系统可以提升数据管理效率和可靠性。

安装linux

电脑 Boot 模式区别

在电脑启动过程中,boot 模式指的是计算机在开机时根据不同的硬件配置、启动介质或操作系统要求,选择的不同启动流程。常见的启动模式包括 BIOS 启动模式和 UEFI 启动模式,此外,还可以选择不同的启动方式,如 Legacy ModeUEFI Mode。这些启动模式的区别主要体现在硬件兼容性、启动速度、安全性等方面。


1. BIOS(基本输入输出系统)启动模式

定义
  • BIOS 是传统的计算机启动固件,它负责初始化硬件设备并启动操作系统。它通常存储在主板上的一个非易失性存储器芯片中。
  • BIOS 启动模式采用传统的 MBR(Master Boot Record)分区表来识别启动设备。
特点
  • 使用 MBR 分区表:支持最多四个主分区,且最大支持 2TB 的磁盘。
  • 启动流程较慢,因为它在启动时执行硬件初始化过程,且引导操作系统的方式较为简单。
  • 不支持现代安全功能,如安全启动(Secure Boot)和大容量硬盘支持。
使用场景
  • 较老的计算机和操作系统(如 Windows XP、Windows 7 等)。
  • 需要兼容旧硬件和操作系统的环境。

2. UEFI(统一扩展固件接口)启动模式

定义
  • UEFI 是替代传统 BIOS 的新一代固件标准,设计上更现代化,支持更大的硬盘、更快的启动过程,并增加了许多新的功能,如图形界面支持和安全启动等。
  • UEFI 启动模式使用 GPT(GUID Partition Table)分区表来替代传统的 MBR 分区表,支持更大容量的磁盘和更多的分区。
特点
  • 使用 GPT 分区表:支持超过 2TB 的硬盘和最多 128 个分区。
  • 启动速度更快:由于 UEFI 采用了更先进的启动流程,初始化硬件的速度更快。
  • 安全启动(Secure Boot):可以验证启动的操作系统是否经过认证,防止恶意软件(如 rootkit)在启动过程中运行。
  • 支持图形界面和网络启动(PXE)。
使用场景
  • 现代计算机和操作系统(如 Windows 10、Windows 11、Linux 等)。
  • 对于 2TB 以上硬盘或需要多个分区的设备。

3. Legacy Mode(传统模式)

定义
  • Legacy Mode 是指在 UEFI 启动模式下启用的一个兼容模式,允许计算机模拟传统 BIOS 的启动方式。Legacy Mode 基本上是让 UEFI 固件兼容旧的 MBR 分区系统。
  • 启用 Legacy Mode 后,UEFI 固件将表现得像传统的 BIOS,支持 MBR 分区和其他旧硬件接口。
特点
  • 使用 MBR 分区表,支持最多 2TB 的硬盘。
  • 启动速度较慢,且不支持现代的安全启动功能。
  • 主要用于旧操作系统或不支持 UEFI 的操作系统。
使用场景
  • 需要兼容旧操作系统或硬件的环境,或者在不支持 UEFI 的操作系统上进行启动(如一些老版本的 Windows 或 Linux)。

4. UEFI + Secure Boot

定义
  • Secure Boot 是 UEFI 的一项安全功能,确保计算机启动时只有经过认证的操作系统和引导程序才能加载。这一机制可以有效地防止恶意软件通过篡改启动程序来攻击系统。
  • 在启用了 Secure Boot 的 UEFI 模式下,操作系统的启动加载器会被验证,如果其签名不合法或被篡改,计算机将拒绝启动。
特点
  • 防止恶意软件或未授权的操作系统篡改启动过程。
  • 仅允许具有有效数字签名的操作系统启动,如 Windows、受信任的 Linux 发行版等。
  • 防止 rootkit、bootkit 等恶意软件在启动时感染系统。
使用场景
  • 用于加强计算机的安全性,特别是在防止引导区病毒或恶意软件入侵的环境中。
  • 现代操作系统通常启用此功能,但用户也可以根据需要禁用它。

5. 网络启动(PXE Boot)

定义
  • 网络启动(PXE,Preboot Execution Environment)是一种允许计算机通过网络加载操作系统的启动方式。在启动过程中,计算机会从网络服务器上获取启动文件,并通过网络加载操作系统镜像。
  • 通常用于无硬盘计算机或需要在大量设备中进行快速部署的环境。
特点
  • 无需本地存储介质(硬盘或 SSD),可以通过网络加载操作系统。
  • 通常用于大型企业环境中批量部署操作系统或进行远程恢复。
使用场景
  • 系统管理员批量安装操作系统或进行远程维护。
  • 需要在没有本地存储设备的情况下启动计算机。

6. 启动模式选择(双启动和多启动)

定义
  • 双启动(Dual Boot)或多启动(Multi-Boot)是指在一台计算机上安装多个操作系统,启动时可以选择要加载的操作系统。计算机会根据用户选择的操作系统从相应的引导分区启动。
特点
  • 可以安装多个操作系统(如 Windows 和 Linux),在开机时通过启动菜单选择操作系统。
  • 需要特别配置的引导加载程序,如 GRUB(Linux)或 Windows Boot Manager。
使用场景
  • 同时使用多个操作系统进行开发、测试或个人使用。
  • 需要在同一硬件上运行不同版本的操作系统。

总结

启动模式启动方式支持的分区表主要特点适用场景
BIOS传统 BIOS 启动MBR(最大支持 2TB 硬盘)较慢的启动流程,缺乏现代安全性功能旧设备,兼容旧操作系统
UEFI现代 UEFI 启动GPT(支持更大硬盘)更快的启动速度,支持安全启动(Secure Boot)等现代操作系统,2TB 以上硬盘
Legacy ModeUEFI 中的兼容 BIOS 模式MBR模拟 BIOS 启动,兼容旧系统需要兼容旧操作系统或硬件的情况
Secure Boot仅 UEFI 启动时启用的安全功能GPT防止未经授权的操作系统启动,增强安全性增强计算机安全,防止恶意软件
PXE Boot网络启动N/A(通过网络加载)通过网络加载操作系统无硬盘计算机或远程操作系统部署
双启动选择多个操作系统启动MBR 或 GPT同时支持多个操作系统,在启动时选择需要同时运行多个操作系统的环境

对服务器的一些操作

关闭自动休眠

https://blog.csdn.net/reno_yuan/article/details/136293399

设置合盖不休眠

https://blog.csdn.net/qq_41830158/article/details/142259904

安装vscode远程工具,设置免密登录

设置免密登录

  • 生成 SSH 密钥对:
    在本地设备终端中运行以下命令:
ssh-keygen -t rsa -b 4096

按提示保存密钥文件(默认路径为 ~/.ssh/id_rsa)。

  • 将公钥复制到服务器:
ssh-copy-id username@server-ip

测试免密登录:

  • 运行以下命令,检查是否无需输入密码即可登录:
ssh username@server-ip
  • 如果没有 ssh-copy-id,可手动添加:
    将公钥内容追加到服务器的 ~/.ssh/authorized_keys 文件:
cat ~/.ssh/id_rsa.pub | ssh username@server-ip 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

相关文章:

爆改老旧笔记本---将笔记本改造为家用linux服务器

爆改老旧笔记本---将笔记本改造为家用linux服务器 linux启动盘制作镜像文件分区类型:MBR分区和GPT分区的定义MBR分区(Master Boot Record)GPT分区(GUID Partition Table)应用场景和优势MBR的应用场景和优势GPT的应用场景和优势 Li…...

RocketMQ MQTT Windows10 环境启动

RocketMQ MQTT Windows10 环境启动 参考环境和软件版本下载资源启动RocketMQ启动RocketMQ MQTT 参考 https://blog.csdn.net/weixin_43114058/article/details/140043257 https://blog.csdn.net/yangxiaovip/article/details/138355443 环境和软件版本 操作系统&#xff1a…...

sd webui整合包怎么安装comfyui

环境: sd webui整合包 comfyui 问题描述: sd webui整合包怎么安装comfyui 扩展安装不成功 解决方案: 1.直接下载 ,解压到SD文件夹里(或者git拉一下) 2.ComfyUI模型共享:如果本机部署过Webui,那么ComfyUI可以与WebUI公用一套模型,防止复制大量模型浪费空间 将…...

Edify 3D: Scalable High-Quality 3D Asset Generation

Deep Imagination Research | NVIDIA 目录 一、Abstract 二、核心内容 1、多视图扩散模型 3、重建模型: 4、数据处理模块: 三、结果 1、文本到 3D 生成结果 2、图像到 3D 生成结果 3、四边形网格拓扑结构 一、Abstract NVIDIA 开发的用于高质量…...

鸿蒙HarmonyOS学习笔记(6)

定义扩展组件样式:Extend装饰器 在前文的示例中,可以使用Styles用于样式的重用,在Styles的基础上,我们提供了Extend,用于扩展原生组件样式。 说明 从API version 9开始,该装饰器支持在ArkTS卡片中使用。 从…...

蓝桥杯备赛笔记(一)

这里的笔记是关于蓝桥杯关键知识点的记录,有别于基础语法,很多内容只要求会用就行,无需深入掌握。 文章目录 前言一、编程基础1.1 C基础格式和版本选择1.2 输入输出cin和cout: 1.3 string以下是字符串的一些简介:字符串…...

在Java中使用Apache POI导入导出Excel(二)

本文将继续介绍POI的使用,上接在Java中使用Apache POI导入导出Excel(一) 使用Apache POI组件操作Excel(二) 14、读取和重写工作簿 try (InputStream inp new FileInputStream("workbook.xls")) { //Inpu…...

linux 中后端jar包启动不起来怎么回事 -bash: java: 未找到命令

一、用以下命令检查jdk版本 输入:java -version,如果JDK 环境变量没有配置,你会看到如下提示 二、配置jdk环境 1.先找到/etc/profile文件,然后在该文件最后面加上以下配置 export JAVA_HOME/usr/local/jdk-21.0.1 export PATH$…...

六大排序算法:插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序

本章讲述数据结构中的六大排序算法 欢迎大佬们踊跃讨论,感谢大家支持! 我的博客主页链接 六大排序算法 一.插入排序1.1 直接插入排序1.2 希尔排序 二.选择排序2.1 单向选择排序2.2双向选择排序2.3 堆排序 三.交换排序3.1 冒泡排序3.2 快速排序3.2.1 Hoa…...

快速排序(C++实现)

基本思想 任取一个元素为中心,所有比它小的元素一律前放,比他大的元素一律后放,形成左右两个子表;对各子表重新选择中心元素并依此规则调整,直到每个子表的元素只剩一个。 通过一趟排序,将待排序记录分割成…...

【数据库知识】数据库关系代数表达式

文章目录 概述一、关系代数表达式的基本组成部分二、关系代数运算符及其使用样例三、关系代数表达式的优化四、总结 概述 数据库关系代数表达式是关系数据库系统查询语言的理论基础,它使用一系列符号和运算符来描述从一个或多个关系(即表)中…...

linux系统清理全部python环境并重装

提问 centos系统清理全部python环境并重装,并且使用宝塔。 解答 要在CentOS系统中彻底清理Python3环境,可以遵循以下步骤: 卸载Python3 使用rpm命令卸载所有与Python3相关的包。这个命令会查询所有已安装的与python3相关的rpm包&#xf…...

Servlet的介绍

Servlet是Java Web的核心组件,它是一个运行在服务器端的Java程序,用于接收客户端的请求、处理请求并返回响应。Servlet遵循特定的生命周期,包括初始化、服务、销毁等阶段。 生命周期: init():初始化Servlet实例&#x…...

DICOM医学影像应用篇——伪彩色映射 在DICOM医学影像中的应用详解

目录 引言 伪彩色映射的概念 基本原理 查找表(Look-Up Table, LUT) 步骤 示例映射方案 实现伪彩色映射的C代码 代码详解 伪彩色处理效果展示 总结 扩展知识 LUT 的基本概念 LUT 在伪彩色映射中的应用 示例 引言 在医学影像处理中&#xff0c…...

(超详细图文详情)Navicat 配置连接 Oracle

1、下载依赖文件 Oracle官网下载直链:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html 夸克网盘下载(oracle19c版本):https://pan.quark.cn/s/5061e690debc 官网下载选择对应 Oracle 版…...

PyTorch:神经网络的基本骨架 nn.Module的使用

神经网络的基本骨架 nn.Module的使用 为了更全面地展示如何使用 nn.Module 构建一个适用于现代图像处理任务的卷积神经网络(CNN),我们将设计一个针对手写数字识别(如MNIST数据集)的简单CNN模型。CNN非常适合处理图像数…...

学习threejs,使用CubeCamera相机创建反光效果

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️CubeCamera 立方体相机 二、…...

Linux网络——IO模型和多路转接

通常所谓的IO,其本质就是等待通信和进行通信,即IO 等 拷贝。 那么想要做到高效的IO,就要在单位时间内,减少“等”的比重。 一.五种IO模型 阻塞 IO: 在内核将数据准备好之前, 系统调用会一直等待. 所有的套接字, 默认都是阻塞方…...

【计网】自定义序列化反序列化(二) —— 实现网络版计算器【上】

🌎 实现网络版计算器【上】 文章目录: 实现网络版计算器【上】 自定义协议       制定自定义协议 Jsoncpp序列化反序列化       Json::Value类       Jsoncpp序列化       Jsoncpp反序列化 自定义协议序列化反序列化      …...

数据结构2:顺序表

目录 1.线性表 2.顺序表 2.1概念及结构 2.2接口实现 1.线性表 线性表是n个具有相同特性的数据元素的有限序列。线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串 线性表在逻辑上是线性结构,也就说…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

【JVM】- 内存结构

引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...

ESP32读取DHT11温湿度数据

芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

【C++进阶篇】智能指针

C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...

go 里面的指针

指针 在 Go 中,指针(pointer)是一个变量的内存地址,就像 C 语言那样: a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10,通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...

32单片机——基本定时器

STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...

Element-Plus:popconfirm与tooltip一起使用不生效?

你们好&#xff0c;我是金金金。 场景 我正在使用Element-plus组件库当中的el-popconfirm和el-tooltip&#xff0c;产品要求是两个需要结合一起使用&#xff0c;也就是鼠标悬浮上去有提示文字&#xff0c;并且点击之后需要出现气泡确认框 代码 <el-popconfirm title"是…...

TMC2226超静音步进电机驱动控制模块

目前已经使用TMC2226量产超过20K,发现在静音方面做的还是很不错。 一、TMC2226管脚定义说明 二、原理图及下载地址 一、TMC2226管脚定义说明 引脚编号类型功能OB11电机线圈 B 输出 1BRB2线圈 B 的检测电阻连接端。将检测电阻靠近该引脚连接到地。使用内部检测电阻时,将此引…...

qt 双缓冲案例对比

双缓冲 1.双缓冲原理 单缓冲&#xff1a;在paintEvent中直接绘制到屏幕&#xff0c;绘制过程被用户看到 双缓冲&#xff1a;先在redrawBuffer绘制到缓冲区&#xff0c;然后一次性显示完整结果 代码结构 单缓冲&#xff1a;所有绘制逻辑在paintEvent中 双缓冲&#xff1a;绘制…...