Debian系统详解
以下是关于 Debian 操作系统 的超详细深度解析,涵盖历史、架构、功能特性、管理细节及应用场景等方面,帮助你全面掌握这一经典 Linux 发行版:
一、Debian 概述:开源社区的基石
1. 历史与定位
• 诞生:1993 年由 Ian Murdock 创立,名称源自他妻子 Debra 和自己名字组合。
• 理念:坚持 自由软件原则(基于 Debian 自由软件指导方针 DFSG),强调稳定性、安全性和社区驱动。
• 地位:被称为 “Linux 发行版之母”,许多主流发行版(如 Ubuntu、Linux Mint)均基于 Debian 开发。
2. 社区与开发模式
• 治理结构:由 Debian 项目团队(Debian Project) 管理,核心决策通过民主投票(如 Debian 社会契约)。
• 志愿者主导:全球数千名开发者自愿贡献,分为 核心团队(Core Team) 和 普通贡献者。
• 开放透明:所有决策、代码和讨论公开,遵循 BTS(错误追踪系统) 和邮件列表协作。
二、Debian 版本体系:稳定性优先
1. 版本分类
版本类型 特点 适用场景
稳定版(Stable) 经过严格测试,更新周期长(约 2-3 年),软件版本保守但兼容性极佳。 服务器、生产环境、桌面
测试版(Testing) 包含较新软件包,稳定性介于稳定版和不稳定版之间,最终会晋升为稳定版。 开发环境、过渡性部署
不稳定版(Unstable/ Sid) 滚动更新,软件包最新但可能存在 bug,用于开发者或极客。 前沿技术尝鲜、开发测试
2. 命名规则
• 以 电影《玩具总动员》角色 命名:
◦ 稳定版:如 Bullseye(11)(2021 年)、Bookworm(12)(2023 年)、Trixie(13)(预计 2025 年)。
◦ 测试版:开发期间代号为 Trixie(最终发布后,新测试版代号变为下一个角色,如 Ulysses)。
3. 长期支持(LTS)
• 稳定版默认支持 5 年,LTS 版本(如 Debian 11 LTS)通过安全团队延长支持至 10 年,适合无法频繁升级的关键系统。
三、系统架构与技术特性
1. 支持的硬件架构
• 主流架构:
◦ x86-64(amd64)、x86(i386)、ARM64(aarch64)、ARMhf(armhf,用于树莓派等)。
◦ 小众架构:PowerPC(ppc64el)、RISC-V(riscv64,实验性支持)等。
• 兼容性:可运行在物理机、虚拟机(VMware/VirtualBox)、容器(Docker)及云平台(AWS/GCP)。
2. 软件包管理:APT 与 DPKG
Debian 的核心优势之一是其成熟的包管理系统:
• DPKG:底层包格式工具,用于安装/卸载 .deb 文件,处理依赖关系(但不自动解决依赖)。
dpkg -i package.deb # 安装.deb包
dpkg -r package # 移除包(保留配置文件)
dpkg -P package # 彻底移除包(删除配置)
• APT(Advanced Package Tool):上层管理工具,基于软件源自动解决依赖:
apt update # 更新软件源索引
apt upgrade # 升级已安装包
apt install package # 安装包(自动处理依赖)
apt remove package # 移除包
• 软件源配置:
◦ 配置文件:/etc/apt/sources.list,可添加官方源或第三方源(如 Debian 官方源、阿里云/腾讯云镜像源)。
◦ 示例源条目:
deb http://mirrors.aliyun.com/debian/ bookworm main contrib non-free
deb-src http://mirrors.aliyun.com/debian/ bookworm main contrib non-free # 源码源(可选)
◦ 软件源分类:
◦ main:符合 DFSG 的自由软件。
◦ contrib:依赖非自由软件的自由软件。
◦ non-free:非自由软件(如闭源驱动、多媒体插件)。
3. 初始化系统:Systemd 与传统模式
• 默认初始化系统:从 Debian 8(Jessie)开始默认使用 Systemd,但仍兼容传统 SysVinit 脚本。
• Systemd 管理命令:
systemctl start|stop|restart service # 控制服务
systemctl enable|disable service # 设置开机自启
systemctl status service # 查看服务状态
systemctl list-units --type=service # 列出所有服务
• 传统 SysVinit 兼容:服务脚本存于 /etc/init.d/,可通过 service 命令操作(如 service ssh restart)。
四、系统安装与配置
1. 安装方式
• 官方镜像:
◦ 标准安装镜像(debian-installer):支持文本界面安装,适合服务器和定制化需求。
◦ 桌面版镜像(如 GNOME/KDE 版本):带图形安装程序,适合桌面用户。
◦ 下载地址:Debian 官方下载页。
• 云镜像:适用于 AWS、Azure 等云平台,预配置轻量级系统(如 debian-cloud 镜像)。
2. 安装步骤(以服务器为例)
1. 选择语言/地区:默认英语,可选中文(简体)。
2. 网络配置:设置 IP 地址、DNS,连接互联网(确保软件源可用)。
3. 磁盘分区:
◦ 传统分区: /(根目录)、/boot(可选)、swap 交换分区。
◦ 推荐方案:使用 LVM(逻辑卷管理),方便后续扩容。
4. 用户设置:创建管理员用户(非 root 登录,通过 sudo 提权)。
5. 软件选择:默认安装基础系统,可勾选 SSH 服务器、Web 服务器等组件。
6. 完成安装:重启后通过用户名密码登录。
3. 基础配置命令
• 网络配置:
◦ 静态 IP:编辑 /etc/network/interfaces(传统方式)或使用 netplan(推荐,适用于 Systemd)。
◦ 示例 netplan 配置(/etc/netplan/01-netcfg.yaml):
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
• 时区设置:
dpkg-reconfigure tzdata # 图形化工具选择时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 直接设置为上海时区
• SSH 服务:
apt install openssh-server # 安装SSH服务器
systemctl enable --now ssh # 启用并启动服务
五、桌面环境与用户体验
1. 默认桌面:GNOME
• Debian 桌面版默认搭载 GNOME 4X,简洁现代,支持触控和手势操作。
• 特色功能:活动概览(Activities Overview)、动态工作区、原生 Flatpak 支持。
2. 可选桌面环境
• KDE Plasma:高度可定制,适合喜欢丰富功能和美观界面的用户。
• XFCE:轻量级,资源占用低,适合旧硬件或追求效率的用户。
• LXQt/LXDE:极简主义,内存占用仅数百 MB,适合低端设备。
• 安装方式:
apt install tasksel # 安装任务选择工具
tasksel install desktop # 选择桌面环境(如 xfce-desktop、kde-plasma-desktop)
3. 软件中心
• GNOME 软件:官方图形化应用商店,集成 Flathub(通用应用仓库)。
• 命令行替代:使用 apt 或 aptitude 命令行工具安装软件,更高效可控。
六、系统管理与运维
1. 用户与权限管理
• 用户组:
◦ sudo 组:成员可通过 sudo 命令获取 root 权限(安装系统时创建的用户默认加入)。
◦ admin 组:传统管理员组(部分桌面环境使用)。
• 创建用户:
useradd -m -s /bin/bash username # 创建用户并分配家目录
passwd username # 设置密码
usermod -aG sudo username # 添加到sudo组
2. 服务与进程管理
• 查看进程:
ps aux # 查看所有进程
top/bashtop # 动态监控进程和资源使用
• 端口监听:
ss -tuln # 查看监听端口
lsof -i :端口号 # 查看占用端口的进程
3. 存储管理
• 磁盘空间查看:
df -h # 查看分区使用情况
du -sh /目录 # 查看目录大小
• LVM 扩容:
# 扩展逻辑卷(假设已有空闲物理卷)
lvextend -L +5G /dev/mapper/vg0-lv_root
resize2fs /dev/mapper/vg0-lv_root # 调整文件系统大小(ext4/xfs需对应工具)
4. 系统更新策略
• 稳定版更新:仅包含安全更新和关键 bug 修复,不会升级软件主版本(如从 Python 3.9 到 3.10)。
• 测试版/不稳定版升级:使用 apt full-upgrade 命令,可能涉及软件版本大幅更新(需谨慎)。
• 禁止自动更新:默认不开启自动更新,可通过 unattended-upgrades 包配置自动安全更新:
apt install unattended-upgrades
dpkg-reconfigure unattended-upgrades # 配置更新策略
七、安全性与最佳实践
1. 安全特性
• 默认配置:
◦ 禁用 root 直接登录(需通过 sudo 或密钥认证)。
◦ 启用 AppArmor 强制访问控制(部分服务默认启用)。
◦ 软件包通过 GPG 签名验证,确保来源可信。
• 防火墙设置:
◦ 使用 UFW(Uncomplicated Firewall):
apt install ufw
ufw allow ssh # 允许SSH连接
ufw allow 80/tcp # 允许HTTP端口
ufw enable # 启用防火墙
◦ 高级配置:使用 iptables 或 nftables(Debian 11+ 推荐)。
2. 安全更新
• 定期运行 apt update && apt upgrade 安装安全补丁。
• 关注 Debian 安全公告(Security Advisories),及时响应高危漏洞。
3. 强化措施
• SSH 密钥认证:生成密钥对并将公钥存入 ~/.ssh/authorized_keys,禁用密码登录(修改 /etc/ssh/sshd_config 中的 PasswordAuthentication no)。
• 禁用不必要服务:关闭未使用的服务(如 systemctl disable --now httpd)。
• 文件权限管理:确保敏感文件(如 /etc/shadow)权限为 rw-------,仅 root 可访问。
八、Debian 的应用场景
1. 服务器与基础设施
• 优势:稳定性极强,资源占用低,支持长周期 LTS 版本。
• 典型应用:
◦ Web 服务器(Nginx/Apache)、数据库服务器(MySQL/PostgreSQL)。
◦ 云主机、容器服务(Docker/Kubernetes)、VPN 服务器(OpenVPN/WireGuard)。
2. 桌面与开发环境
• 优势:可定制性高,兼容大量开发工具,适合程序员和开源爱好者。
• 开发场景:
◦ 编程语言环境(Python/Java/Go 等,通过 apt 直接安装)。
◦ 图形设计(GIMP、Inkscape)、视频编辑(Shotcut)。
◦ 虚拟机管理(VirtualBox/KVM)。
3. 嵌入式与物联网
• 支持设备:树莓派、Odroid 等 ARM 开发板,可安装 Raspbian(基于 Debian) 或官方 ARM 镜像。
• 应用案例:智能家居中枢、工业控制设备、边缘计算节点。
九、高级进阶:从使用到贡献
1. 参与 Debian 项目
• 方式:
◦ 报告 bug:通过 Debian BTS 提交问题。
◦ 打包软件:学习创建 .deb 包,提交至 Debian 软件仓库。
◦ 翻译文档:参与本地化团队,翻译官网或手册。
• 资源:Debian 新手指南、开发者指南。
2. 自定义 Debian 发行版
• 使用 Debootstrap 工具创建最小化系统:
debootstrap --arch=amd64 bookworm /mnt/debian http://mirrors.aliyun.com/debian/
• 通过 Live Build 制作自定义 Live CD/USB。
3. 性能优化技巧
• 减少启动时间:
systemd-analyze blame # 查看启动耗时最长的服务
systemctl mask systemd-resolved.service # 禁用非必要服务(如 DNS 解析服务,若使用外部 DNS)
• 内存优化:
◦ 禁用透明大页(针对数据库服务器):
echo never > /sys/kernel/mm/transparent_hugepage/enabled
◦ 使用轻量级服务(如用 s6 替代 Systemd,需手动配置)。
十、常见问题与解决方案
1. 软件包依赖问题
• 现象:安装时提示 “无法满足依赖”。
• 解决:
◦ 尝试更新软件源:apt update && apt upgrade。
◦ 使用 aptitude 交互式解决依赖:
apt install aptitude
aptitude install package # 按键盘左右键选择解决方案
◦ 添加第三方源(如 Docker 官方源、Node.js 源)。
2. 忘记 root 密码
• 步骤:
1. 重启系统,在 GRUB 菜单按 e 键进入编辑模式。
2. 在内核启动参数行末尾添加 init=/bin/bash,按 Ctrl+X 启动。
3. 挂载根目录为可写:mount -o remount,rw /。
4. 重置密码:passwd root,重启后生效。
3. 图形界面崩溃
• 解决:
◦ 切换至 TTY 终端(按 Ctrl+Alt+F2),登录后重启显示管理器:
systemctl restart gdm3 # 若为 GNOME
systemctl restart sddm # 若为 KDE
◦ 重装桌面环境:apt --reinstall install gnome-shell(以 GNOME 为例)。
十一、对比其他发行版:Debian 的核心竞争力
维度 Debian Ubuntu CentOS/RHEL
稳定性 ★★★★★(稳定版) ★★★★☆(LTS 版) ★★★★★(企业级)
软件更新 保守(稳定版),适合生产环境 中等(LTS 版),适合桌面和云 极保守(需手动更新或 EPEL)
包管理 APT/DPKG(原生支持) APT/DPKG(基于 Debian) YUM/DNF
开源合规 严格遵循 DFSG,自由软件优先 允许非自由驱动(如 NVIDIA) 混合模式(部分闭源组件)
学习曲线 较高(需手动配置较多) 较低(图形工具完善) 中等(适合系统管理员)
十二、总结:为什么选择 Debian?
• 如果你需要稳定可靠的服务器:Debian 稳定版是行业标杆,金融、电信等领域大量使用。
• 如果你追求自由软件精神:Debian 对开源合规的坚持远超其他发行版。
• 如果你是开发者或极客:测试版/不稳定版提供最新技术,适合探索和定制。
• 如果你需要长期支持:LTS 版本可减少维护成本,适合不频繁升级的系统。
通过以上内容,你已掌握 Debian 的核心知识。无论是作为系统管理员部署服务器,还是作为用户打造个性化桌面,Debian 都能提供强大而灵活的支持。如需进一步探讨某一细节(如 Docker 部署、Kubernetes 集群等),可随时提出!
相关文章:
Debian系统详解
以下是关于 Debian 操作系统 的超详细深度解析,涵盖历史、架构、功能特性、管理细节及应用场景等方面,帮助你全面掌握这一经典 Linux 发行版: 一、Debian 概述:开源社区的基石 1. 历史与定位 • 诞生:1993 年由 Ian…...
Dify X 奇墨科技,让AI大模型从“巨头专属”变为“触手可及”
AI大模型和AI Agent蓬勃发展,企业比拼的已不仅是AI技术储备,更是AI应用落地的实战能力。奇墨科技正式成为 AI 应用开发平台Dify中国大陆区企业版合作伙伴,帮助企业更便捷地接触到Dify并使用其开发AI应用。 Dify 是一款简单易用的 LLM 应用开…...
CSS相对定位与绝对定位
在网页设计里,相对定位(Relative Positioning)和绝对定位(Absolute Positioning)是 CSS(层叠样式表)里控制元素位置的关键手段。下面为你详细讲解它们的概念、特点与应用场景。 相对定位 概念…...
正则表达式(Regular Expression)详解
正则表达式(简称"regex"或"regexp")是一种强大的文本模式匹配工具,它使用特定语法来描述、匹配和操作字符串。 基本概念 正则表达式是由普通字符(如字母a到z)和特殊字符(称为"元…...
OpenCV-Python (官方)中文教程(部分一)_Day22
22.3 2D直方图 在前面的部分我们介绍了如何绘制一维直方图,之所以称为一维,是因为我们只考虑了图像的一个特征:灰度值。但是在 2D 直方图中我们就要考虑 两个图像特征。对于彩色图像的直方图通常情况下我们需要考虑每个的颜色(Hue)和饱和度&…...
【软考-高级】【信息系统项目管理师】【论文基础】采购管理过程输入输出及工具技术的使用方法
采购管理概念 项目采购管理包括从项目团队外部采购或获取所需产品、服务或成果的各个过程。项目采购管理包括编制和管理协议所需的管理和控制过程,例如合同、订购单、协议备忘录(MOA)和服务水平协议(SLA)。 采购管理…...
基于STM32、HAL库的CP2102-GMR USB转UART收发器 驱动程序设计
一、简介: CP2102-GMR是Silicon Labs公司生产的一款USB转UART桥接芯片,主要特点包括: 集成USB 2.0全速功能控制器 内置USB收发器,无需外部电阻 工作电压:3.0V至3.6V 支持的数据格式:数据位8,停止位1,无校验 最高支持1Mbps的波特率 内置512字节接收缓冲区和512字节发送…...
信息系统项目管理工程师备考计算类真题讲解十四
一、最小生成树问题 此问题采用破圈法来解决, 1)以1节点为例,找到路径最小 点:1--5:距离为3 2)找1--5最短的节点,选择4:1--5--4:距离为:5 3)找…...
二叉树的基本操作
二叉树的基本操作(C 语言版) 1 二叉树的定义 二叉树的图长这样: 二叉树是每个结点最多有两个子树的树结构,常被用于实现二叉查找树和二叉堆。二叉树是链式存储结构,用的是二叉链,本质上是链表。二叉树通常以结构体的形式定义,如下,结构体内容包括三部分:本节点所存储…...
网络基础入门第6-7集(抓包技术)
前言: 来自小迪安全v2023 内容: 第六集: 大致内容:burpsuit、茶杯、fiddler的抓包流程 1、安装抓包软件的相关证书 2、各大抓包软件的测试 注意用burp抓模拟器的数据包,需要将ip地址设置为本地的ip地址ÿ…...
自定义Widget开发:自定义布局实现
自定义Widget开发:自定义布局实现 一、Flutter布局系统基础 1. 布局约束(Constraints) 在Flutter中,布局系统基于约束(Constraints)的概念。每个widget都会接收来自其父widget的约束,并根据这…...
MyBatis(进阶)(xml标签)
本节⽬标 1. 学习MyBatis的动态SQL查询 2. 掌握MyBatis在项⽬中的应⽤, 可以使⽤Spring MVC完成⼀些基础的功能 1. 动态SQL(XML) 动态 SQL 是Mybatis的强⼤特性之⼀,能够完成不同条件下不同的 sql 拼接 可以参考官⽅⽂档: M…...
英皇娱乐X乐华娱乐携手造星!“英皇乐华青少年艺人培训班”正式启动!
2025年5月8日,英皇娱乐集团与乐华娱乐集团联合宣布,双方将在北京市燕京实验中学合作开设“英皇乐华青少年艺人培训班”,为8至18岁的青少年提供专业的演艺及才艺学习平台。此次合作旨在集合两大娱乐公司在演艺行业的资源与优势,共同…...
Linux云计算训练营笔记day04(Rocky Linux中的命令)
mv 移动(剪切) 源数据会消失 格式: mv 源文件 目标路径 touch /opt/a.txt 创建文件 mv /opt/a.txt /root 移动文件,没有改名 mkdir gongli 创建目录 mv gongli /opt/ 移动目录,没有改名 mv /opt/gongli tedu 移动目录,改名了 …...
枚举 · 例13-【模板】双指针
登录—专业IT笔试面试备考平台_牛客网 代码区: #include<algorithm> #include<iostream> #include<vector> #include<unordered_set> using namespace std;struct INTER{int left,right; }; bool compare(const INTER&a,const INTER&a…...
Linux网络编程day7 线程池and UDP
线程池 typedef struct{void*(*function)(void*); //函数指针,回调函数void*arg; //上面函数的参数 }threadpool_task_t; //各子线程任务的结构体/*描述线程池相关信息*/struct threadpool_t{pthread_mutex_t lock; …...
WHAT - ahooks vs swr 请求
文章目录 ahooks特点常用 Hooks 示例1. useRequest — 封装网络请求逻辑(比 SWR / React Query 更轻量)2. useDebounce — 防抖值3. useLocalStorageState — 本地存储的状态4. useBoolean — 快速管理布尔状态5. useEventListener — 添加事件监听 ahoo…...
算法训练营第十一天|150. 逆波兰表达式求值、239. 滑动窗口最大值、347.前 K 个高频元素
150. 逆波兰表达式求值 题目 思路与解法 第一思路: 比较简单 class Solution:def evalRPN(self, tokens: List[str]) -> int:stack []for item in tokens:if item ! and item ! - and item ! * and item ! / :stack.append(item)else:b int(stack.pop())a …...
可视化图解算法35:在二叉树中找到两个节点的最近公共祖先(二叉树的最近公共祖先)
1. 题目 描述 给定一棵二叉树(保证非空)以及这棵树上的两个节点对应的val值 o1 和 o2,请找到 o1 和 o2 的最近公共祖先节点。 数据范围:树上节点数满足 1≤n≤105 , 节点值val满足区间 [0,n) 要求:时间复杂度 O(n) 注:本题保…...
如果说开启的TIM3定时器有ccr1,ccr2,ccr3,我想要关闭ccr2的PWM输出,怎么通过代码实现
目录 作用概述: 具体原理: 代码的操作细节: 实际效果: 示意全文: 小结: TIM3->CCER & ~TIM_CCER_CC2E; 作用概述: 作用是禁用 TIM3 的通道 2(CCR2)的捕获…...
高能数造全固态电池干法电极高品质原纤化技术:驱动干法和全固态电池制造新进程
技术背景 传统湿法电极制备工艺的局限:传统的湿法电极制备工艺需要使用大量的溶剂来溶解粘结剂和分散活性物质,后续还需要复杂的干燥工序来去除溶剂。这不仅增加了生产成本和能源消耗,溶剂的使用和处理还会带来环境污染和安全隐患。 新能源产业发展的需…...
AI驱动的制造工艺:系统化探索与创新
DeepSeek 技术全景 在当今 AI 技术蓬勃发展的时代,DeepSeek 已成为该领域中一颗耀眼的明星。自 2023 年 7 月 17 日成立以来,这家由知名私募巨头幻方量化孕育而生的公司,迅速在 AI 领域崭露头角 。DeepSeek 的目标是开发顶尖的大语言模型(LLM),并利用数据蒸馏技术打造更精…...
Mac 平台获取地区标识符号
以下是添加了详细中文注释的代码版本,解释每一行代码的作用: #include <CoreFoundation/CoreFoundation.h> #include <vector> #include <string> #include <iostream>// 将 Core Foundation 的字符串(CFStringRef)转换为标准 …...
PyTorch 实战:从 0 开始搭建 Transformer
导入必要的库 python import math import torch import torch.nn as nn from LabmL_helpers.module import Module from labml_n.utils import clone_module_List from typing import Optional, List from torch.utils.data import DataLoader, TensorDataset from torch imp…...
Java 显式锁与 Condition 的使用详解
Java 显式锁与 Condition 的使用详解 在多线程编程中,线程间的协作与同步是核心问题。Java 提供了多种机制来实现线程同步,除了传统的 synchronized 关键字外,ReentrantLock 和 Condition 是更灵活且功能强大的替代方案。本文将详细介绍显式…...
【MySQL】存储引擎 - CSV详解
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
LeetCode算法题(Go语言实现)_62
题目 有两种形状的瓷砖:一种是 2 x 1 的多米诺形,另一种是形如 “L” 的托米诺形。两种形状都可以旋转。 给定整数 n ,返回可以平铺 2 x n 的面板的方法的数量。返回对 109 7 取模 的值。 平铺指的是每个正方形都必须有瓷砖覆盖。两个平铺不…...
矿井设备通信破局:ModbusTCP转DeviceNet网关应用实践
矿井设备通信破局:ModbusTCP转DeviceNet网关应用实践 在500米深的金属矿井中,传统人工操控采掘设备存在高风险、低效率问题。某矿业集团引入海希无线遥控器远程控制掘进机,却因通信协议冲突陷入困局:海希遥控器采用DeviceNet协议…...
GrassRoot备份项目
Windows服务项目 Grass.cs using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http.Headers; using System.Net.Http; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Time…...
多级路由器如何避免IP冲突
在多级路由器架构中,避免IP冲突的核心在于合理规划子网、正确配置路由器角色与功能。以下是综合多个搜索结果的解决方案及操作步骤: 一、划分不同子网段 修改LAN口IP地址 主路由器默认LAN口IP为192.168.1.1,次级路由器需更改为不同网段&#…...
VGGNet详解
VGGNet 由牛津大学视觉几何组(Visual Geometry Group)在2014年提出,凭借极简的 33卷积核堆叠设计 成为经典模型,影响了后续大量网络架构。 1. 网络结构 VGGNet 的核心思想是 通过多层小卷积核(33)替代大卷…...
TDengine 在新能源行业应用
简介 在当前可再生能源迅速发展的浪潮中,分布式光伏和可再生能源的装机容量已经达到相当可观的规模。尽管新能源的发展得到政策的鼎力扶持,但其并网后对电网的运行调度、供电可靠性以及系统的安全稳定带来诸多新挑战。 分布式光伏,即分布式…...
[人机交互]设计,原型建立和构造
一.建立和构造原型 1.1理解用户需要和技术之间的关系 用户需要和技术之间是一个鸡和蛋的问题 • 用户对产品的理解建立在 与该产品交互 的基础上 • 用户只有在熟悉后,才能 评价 是否需要,及 进一步 的需要 • 构造最终产品需要大量资源 • 原型化 是 …...
C#生成二维码和条形码
C# 实现二维码和条形码生成:从入门到实战 文章目录 C# 实现二维码和条形码生成:从入门到实战一、引言二、准备工作2.1 开发环境搭建2.2 引入相关库 三、生成条形码3.1 条形码基本概念3.2 使用[ZXing.Net](https://ZXing.Net)生成条形码3.2.1 核心代码实现…...
2025.5.8总结(中期审视)
今日记录: 晚上,主管找我聊了关于中期绩效审视的问题。 首先就是让我汇报上半年的工作进展,汇报完后,感觉体现不出自己的工作量,这确实考验个人的汇报能力。 汇报完工作后,主管开始给我提了一些建设性的…...
Pyinstaller编译EXE及反编译
文章目录 适用范围示例文件编译EXE反编译EXE准备工具编译pycdc反编译 反编译得到的文件相关资源下载 适用范围 实测 python3.9可以反编译。从pycdc源代码看,似乎支持到python 3.13。 示例文件 demo.py import sys from PyQt5 import QtWidgets, QtCore, QtGui c…...
3.2.3 掌握RDD转换算子 - 3. 扁平映射算子 - flatMap()
在本节课中,我们深入学习了Spark RDD的flatMap()算子。flatMap()与map()类似,但每个元素可以返回0到多个元素,最终将所有结果合并为一个RDD。通过案例演示,我们首先对单词文件进行了统计,通过map()将每行文本转换为单词…...
深入解析 C# 常用数据结构:特点、区别与优缺点分析
在软件开发中,选择合适的数据结构是提高代码效率和性能的关键。在 C# 中,我们常用的数据结构包括 List、Array、Dictionary<TKey, TValue>、HashSet、Queue、Stack 和 LinkedList。每种数据结构有不同的特点、优缺点和适用场景。本文将结合代码&am…...
LeetCode第284题 - 窥视迭代器
题目 解答一 package leetcode.editor.cn; //leetcode submit region begin(Prohibit modification and deletion) // Java Iterator interface reference: // https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.htmlimport java.util.Iterator; import java.ut…...
克里金模型+多目标优化+多属性决策!Kriging+NSGAII+熵权TOPSIS!
目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 克里金模型多目标优化多属性决策!KrigingNSGAII熵权TOPSIS!!matlab2023b语言运行! 1.克里金模型(Kriging Model)是一种基于空间统计学的插值方法…...
驱动开发硬核特训 · Day 30(下篇): 深入解析 lm48100q I2C 音频编解码器驱动模型(基于 i.MX8MP)
作者:嵌入式Jerry 视频教程请关注 B 站:“嵌入式Jerry” 一、背景与目标 在本篇中,我们围绕 TI 的 lm48100q 音频编解码器 展开,深入讲解其作为 I2C 外设如何集成至 Linux 内核音频子系统(ASoC)࿰…...
【RAG】indexing 中的 Hierarchical Indexing(分层索引)
Hierarchical Indexing(分层索引) 关键词解析: Splits (分割): 原始文档被分割成较小的块。Cluster (聚类): 将语义上相似的文档块分组在一起。Summaries (摘要): 为每个聚类或更高层次的节点生成摘要。RAPTOR (Recursive Abstractive Proc…...
【LeetCode 42】接雨水(单调栈、DP、双指针)
题面: 思路: 能接雨水的点,必然是比两边都低(小)的点。有两种思路,一种是直接计算每个点的最大贡献(也就是每个点在纵向上最多能接多少水),另一种就是计算每个点在横向上…...
【软件设计师:数据库】13.数据库控制与安全
一、数据库语言SQL SQL是结构化查询语言(Structured Query Language)的缩写,其功能包括数据查询、数据操纵、数据定义和数据控制四个部分。 SQL 语言简洁、方便实用、功能齐全,已成为目前应用最广的关系数据库语言。SQL既是自含式语言(联机交互),又是嵌入式语言(宿主语…...
PWN基础-ROP技术-ret2syscall-64位程序栈溢出利用
前置 ret2syscall 的基础我们就不做过多讲解了 利用思路与 32 位类似,只是传参的寄存器是: rdi -> rsi -> rdx -> rcx -> r8 -> r9 我们这里只用到前三个就可以了,以及 rax 还有一个区别就是: 32 位系统调用最…...
基于大模型预测的产钳助产分娩全方位研究报告
目录 一、引言 1.1 研究背景与意义 1.2 研究目的与方法 二、产钳助产分娩概述 2.1 产钳助产定义与历史 2.2 适用情况与临床意义 三、大模型预测原理与数据基础 3.1 大模型技术原理 3.2 数据收集与处理 3.3 模型训练与验证 四、术前预测与准备 4.1 大模型术前风险预…...
二叉树结构的深入学习
目录 1. 节点结构 1.1.值(val) 1.2.左右孩子节点 2.本质 3.类型 4.遍历方式 树是一种递归的数据结构。具有一个根节点和多个子节点,形成邻接关系,每个节点可以有零个或多个子节点。 树的定义是递归的,由根节点的…...
SVT-AV1源码学习-EbMotionEstimation.h 学习
#ifndef EbMotionEstimation_h //防止文件呗重复包含的宏定义开始标记 #define EbMotionEstimation_h 定义头文件标识符 #include "definitions.h" //包含定义文件 #include "coding_unit.h" //包含编码单元相关文件 #include "me_process.h" //…...
代理服务器
1.准备3台虚拟机 1台当做代理服务器;2台当做真实访问服务器;可以再来一台虚拟机当客户机,也可以使用主机来当客户机。 依次配置服务器 真实服务器(配置文件无需更改): 代理服务器: 35 ups…...
数值分析——条件数
1. 条件数的定义与计算 条件数(Condition Number)用于量化矩阵或函数对输入误差的敏感程度,反映问题的“良态”或“病态”特性。 矩阵条件数的定义 对于一个非奇异方阵 A,其条件数定义为: κ(A)∥A∥⋅∥A−1∥ 其…...