RedHat9 | 磁盘管理

硬盘分区类型

MBR分区方案

MBR也被称为主引导记录,它存在0柱面0磁道0扇区内,在磁盘的第一个扇区内,大小为512字节

  • 512字节包含:446字节初始化程序加载器、64字节分区表、2字节校验码
  • 由于每个分区为16字节,所以MBR只能支持4个主分区,每个分区的最大硬盘空间支持2T

分区方案

  • 分区表:64字节
  • 1个分区=16字节
  • 4 x 16 = 64字节,所以只能分4个分区
  • 主分区最多4个,分别占用编号 1-4
    • 主分区:可以格式化使用
  • 分区不够用:将1个也只能将1个主分区设置为扩展分区
    • 扩展分区:不能使用
    • 将扩展分区划分为多个逻辑分区
    • 逻辑分区:可以格式化使用,逻辑分区的编号一定是从5开始
      在这里插入图片描述
GPT分区方案

GPT分区方案是一种较新的硬盘分区类型,与MBR分区方案相比,GPT具有较高的灵活性

  • 分区支持:支持最多128个分区
  • 会将分区表备份在磁盘的末尾
  • GPT采用64位地址,支持最大容量为18EB
    在这里插入图片描述

磁盘分区

查看所有分区信息

fdisk -l

在这里插入图片描述
在这里插入图片描述

MBR分区方案

5G的磁盘,划分5个1G分区

3个主分区,1个扩展分区(2个逻辑分区)

  • 分区
  • 格式化
  • 挂载
  • 使用
fdisk

fdisk交互式命令列表

DOS (MBR)	| DOS(MBR)相关的命令a   toggle a bootable flag				| 切换启动分区标记(通常用户设置哪些分区是活动的或可引导的)b   edit nested BSD disklabel			| 编辑BSD磁盘标签(通用用于BSD Unix系统)c   toggle the dos compatibility flag	| 切换DOS兼容性标准Generic	| 通用命令d   delete a partition					| 删除一个分区F   list free unpartitioned space		| 列出未分区的空闲空间l   list known partition types			| 列出已知的分区类型(如FAT32、NTFS、Linux等)n   add a new partition					| 添加一个新分区p   print the partition table			| 打印分区表t   change a partition type				| 更改分区类型(类似Windows的磁盘标识,给磁盘设置一个名称)v   verify the partition table			| 验证分区表i   print information about a partition	| 打印有关分区的信息Misc	2	| 其他命令m   print this menu						| 列出所有命令(帮助)u   change display/entry units			| 更改显示/输入单位x   extra functionality (experts only)	| 额外的功能Script	| 脚本相关的命令I   load disk layout from sfdisk script file				| 从`sfdisk`脚本文件中加载磁盘布局O   dump disk layout to sfdisk script file				| 将磁盘布局转储到`sfdisk`脚本文件Save & Exit	| 保存和退出w   write table to disk and exit							| 将分区表写入磁盘并退出q   quit without saving changes							| 不保存更改退出Create a new label	| 创建新分区表g   create a new empty GPT partition table				| 创建GUID分区表(GPT)G   create a new empty SGI (IRIX) partition table		| 创建新的SGI分区表(适用于SGI IRIX操作系统)o   create a new empty DOS partition table				| 创建一个新的DOS分区表(MBR)s   create a new empty Sun partition table				| 创建一个新的Sun分区表(适用于Sun系操作系统)

分区

fdisk /dev/vdbCommand (m for help): n		# 添加1个新分区
Partition type				# 磁盘类型p   primary (0 primary, 0 extended, 4 free)			# 主分区e   extended (container for logical partitions)		# 扩展分区
Select (default p): p		# 添加1个主分区(直接回车会默认添加1个主分区)
Partition number (1-4, default 1): 1		# 分区编号,默认为1
First sector (2048-10485759, default 2048): 		# 起始扇区,默认从2048开始,前面做保留给GPT分区表使用
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-10485759, default 10485759): +1G	# 结束扇区,也就是分区的大小。。。
重复上述操作,划分3个主分区
。。。Command (m for help): n		# 添加1个新分区
Partition typep   primary (3 primary, 0 extended, 1 free)e   extended (container for logical partitions)
Select (default e): e		# 添加1个扩展分区(直接回车会默认添加扩展分区,因为主分区已经使用完)Selected partition 4			# 分区编号为4
First sector (6293504-10485759, default 6293504): 		
Last sector, +/-sectors or +/-size{K,M,G,T,P} (6293504-10485759, default 10485759):   # 使用所有空间Created a new partition 4 of type 'Extended' and of size 2 GiB.

在这里插入图片描述

Command (m for help): n		# 添加1个新分区
All primary partitions are in use.		# 提示所有主分区都已使用
Adding logical partition 5				# 分区编号为5
First sector (6295552-10485759, default 6295552): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (6295552-10485759, default 10485759): +1GCreated a new partition 5 of type 'Linux' and of size 1 GiB.Command (m for help): n		# 添加1个新分区
All primary partitions are in use.
Adding logical partition 6				# 分区编号为6
First sector (8394752-10485759, default 8394752): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (8394752-10485759, default 10485759): Created a new partition 6 of type 'Linux' and of size 1021 MiB.

在这里插入图片描述

Command (m for help): w					# 将分区表写入磁盘并退出
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

在这里插入图片描述

修改某个分区的分区类型

Command (m for help): t						# 更改分区类型
Partition number (1-6, default 6): 1		# 选择分区,当前选择第一个分区
Hex code or alias (type L to list all): l	# 列出所有类型	
Hex code or alias (type L to list all): 82	# 更改为82,也就是`Linux swap / Solaris`Changed type of partition 'Linux' to 'Linux swap / Solaris'.

在这里插入图片描述

Command (m for help): w					# 写入退出
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
parted

parted是一款强大的磁盘分区和分区大小调整工具,与fdisk区别

  • 能够调整分区的大小
  • 可以处理常见的分区格式:ext2、ext3、fat16、fat32、NTFS、ReiserFS、JFS、XFS、UFS、HFS以及Linux交换分区
  • 还提供非交互的分区方式

parted交互式命令列表

  • align-check TYPE N:检查分区是否符合Type的要求
  • help [COMMAND] :输出帮助信息
  • mklabel,mktable LABEL-TYPE:创建一个新的磁盘标签(分区表)
    • LABEL-TYPE:可以是msdos(MBR)、gpt(GUID)
  • mkpart PART-TYPE [FS-TYPE] START END :创建一个新的分区
    • PART-TYPE:分区类型,如primary‘extended、logical等
    • FS-TYPE:文件系统类型
    • START:分区起始位置
    • END:分区结束位置
  • name NUMBER NAME :将分区NUMBER命名为NAME
  • print [devices|free|list,all|NUMBER]:显示分区表、可用设备、空闲空间、所有找到的分区或特定分区的信息
  • quit:退出
  • rescue START END:在 START 和 END 附近恢复一个丢失的分区
  • rm NUMBER:删除分区 NUMBER
  • select DEVICE :选择设置
  • disk_set FLAG STATE:更改选定设备的 FLAG 状态
  • disk_toggle [FLAG]:切换选定设备上的 FLAG 状态
  • set NUMBER FLAG STATE:更改分区 NUMBER 上 FLAG的状态
  • toggle [NUMBER [FLAG]] :切换分区 NUMBER 上 FLAG 的状态。如果未指定 FLAG 则切换所有标志
  • unit UNIT:设置默认单位为 UNIT(如 MB、GB等)
  • version:显示 GNU parted 的版本号和版权信息

分区

parted /dev/vdc			# 指定设备
(parted) mklabel 		# 定义分区方案
New disk label type? msdos		# 选择MBR分区方案
(parted) mkpart                 # 分区    		                                      
Partition type?  primary/extended? primary		# 分区类型,这里选择主分区
File system type?  [ext2]? ext2                 # 文件系统类型,不管设置什么都无效,所以保持默认即可
Start? 2048s					# 分区起始位置
End? 1000MB						# 分区结束位置,1000MB、1G,或者是百分比(10G硬盘,划分1G也就是10%)

在这里插入图片描述

(parted) q              # 保存退出            		                                      
Information: You may need to update /etc/fstab.
udevadm settle			# 刷新内核信息

非交互式分区方式

# 如果要使用非交互式分区,需要先定义分区方案
parted /dev/vdc			# 指定设备
(parted) mklabel 		# 定义分区方案
New disk label type? msdos		# 选择MBR分区方案# 才可以使用非交互式命令
parted /dev/vdc mkpart primary ext2 1000MB 2000MB

在这里插入图片描述

GPT分区方案

5G的磁盘,划分5个1G分区

  • 分区
  • 格式化
  • 挂载
  • 使用
parted /dev/vdc
(parted) mklabel 			# 定义分区方案
New disk label type? gpt    # 选择GPT            	                                  
Warning: The existing disk label on /dev/vdc will be destroyed and all data on
this disk will be lost. Do you want to continue?
Yes/No? yes                 # 因为我们之前使用的分区方案是MBR,现在修改了分区方案,所以提示:数据将会别清空                                              
(parted) mkpart 			# 分区
Partition name?  []? first       	# 给分区定义一个名字                                         
File system type?  [ext2]?          # 文件系统类型,不管设置什么都无效,所以保持默认即可
Start? 0%					# 分区的起始位置
End? 1000M					# 分区的结束位置
(parted) q            		# 保存退出                                                    
Information: You may need to update /etc/fstab.

在这里插入图片描述

非交互式

parted /dev/vdc mkpart second ext2 1000M 2000M
parted /dev/vdc mkpart third ext2 2000M 3000M

在这里插入图片描述

删除分区third

parted /dev/vdc rm 3
parted /dev/vcd print

在这里插入图片描述

格式化

常见的文件系统类型

  • Windows:fat32、NTFS、exfat
  • Linux:exfat、ext2、ext3、ext4、xfs、vfat
  • MacOS:exfat
lsblk常见参数

查看系统的磁盘使用情况

参数作用
-a显示所有设备信息
-f显示文件系统信息
-m显示磁盘归属以及权限信息
-S显示有SCSI类型的磁盘信息
blkid常见参数

可以查看Linux系统中的全部块设备(硬盘或光盘)信息

参数作用
blkid -s UUID显示指定设备的UUID
blkid -s TYPE显示指定设备的文件系统
blkid显示当前系统的中全部块设备的信息
mkfs常见参数

用于格式化设备

参数作用
-c检查指定设备是否损坏
-t设置文件系统类型

查看磁盘的当前分区

lsblk

在这里插入图片描述

显示文件系统信息,没有显示文件系统则代表还未格式化

lsblk -f /dev/vdb

在这里插入图片描述

格式化分区

mkfs -t ext4 /dev/vdb1		# 将vdb硬盘的第一个分区格式化为ext4
mkfs.ext4 /dev/vdb1			# 可以忽略-t选项,直接使用.代替

在这里插入图片描述
在这里插入图片描述

临时挂载与永久挂载

df常见参数
参数作用
-a显示所有文件系统
-h显示当前系统的全部硬盘使用情况
-t显示指定文件系统的硬盘使用情况
-T显示文件系统的类型
mount常见参数
参数作用
mount查看当前系统已有文件系统信息
-r将文件系统设置为只读模式
-w将文件系统设置为读写模式
-o设置权限
-a加载/etc/fstab文件中记录的所有挂载
mount临时挂载

临时挂载,重启后失效

mkdir /mnt/vdb1		# 创建挂载点
mount /dev/vdb1 /mnt/vdb1

在这里插入图片描述

为挂载设置只读权限

mkfs.ext4 /dev/vdb2		# 格式化
mkfs.ext4 /dev/vdb3		# 格式化

在这里插入图片描述

mkdir /mnt/vdb2			# 创建挂载点目录
mkdir /mnt/vdb3			# 创建挂载点目录
mount -o ro /dev/vdb2 /mnt/vdb2		# 方法1:以只读方式挂载
mount -r /dev/vdb3 /mnt/vdb3		# 方法2:以只读方式挂载

在这里插入图片描述

echo hhhh > /mnt/vdb2/h.txt		# 测试只读权限
echo hhhh > /mnt/vdb3/h.txt		# 测试只读权限

在这里插入图片描述

不卸载的基础上重新挂载

mount -o remount,rw /dev/vdb2		# 重新以读写方式挂载

在这里插入图片描述

卸载文件系统,取消挂载

umount /dev/vdb3
fstab永久挂载

查看当前挂载信息

lsblk -f /dev/vdb

在这里插入图片描述

/etc/fstab配置文件解析
UUID=5e75a2b9-1367-4cc8-bb38-4d6abc3964b8       /boot   xfs     defaults        0       0
  • UUID:设备名称或设备ID
  • /boot:挂载点/挂载目录
  • xfs:文件系统类型
  • defaults:选项(权限、认证设定、其它)
  • 0:内核日志检测机制(0:不检测,1:检测,2:检测,1比2优先级高)
  • 0:硬盘检测机制(0:不检测)

修改配置文件,实现开机自动挂载

vim /etc/fstab# 追加一行
/dev/vdb2	/mnt/vdb2	ext4	defaults	0 0

加载配置文件系统

mount -a		# 重新加载配置/etc/fstab文件中的挂载

在这里插入图片描述

重启系统,以验证自动挂载

reboot

在这里插入图片描述

验证修改挂载点后是否影响内容

新建两个挂载点

mkdir /mnt/vdc11
mkdir /mnt/vdc12
mount /dev/vdc1 /mnt/vdc11		# 先挂载到vdc11文件夹中
dd if=/dev/zero of=/mnt/vdc11/file bs=1M count=1000		# 在vdc11中创建1个1G的文件

在这里插入图片描述

取消挂载后重新挂载,可以看到内容仍然存在,其实挂载点只是分区的一个入口,不影响内容

umount /dev/vdc1
mount /dev/vdc1 /mnt/vdc12

在这里插入图片描述

验证重复挂载在同一目录是否影响原有数据

创建挂载点

mkdir /mnt/vdb56

格式化vdb5、vdb6

mkfs.xfs /dev/vdb5
mkfs.xfs /dev/vdb6

挂载vdb5到vdb56并写入文件

mount /dev/vdb5 /mnt/vdb56
dd if=/dev/zero of=/mnt/vdb56/file bs=1M count=1000

在这里插入图片描述

将vdb6挂载到vdb56并写入文件

mount /dev/vdb6 /mnt/vdb56
dd if=/dev/zero of=/mnt/vdb56/file1 bs=1M count=1000

在这里插入图片描述

我们重复挂载,可以看到不影响内容

mount /dev/vdb5 /mnt/vdb56
ll /mnt/vdb56
mount /dev/vdb6 /mnt/vdb56
ll /mnt/vdb56

在这里插入图片描述

如何根据磁盘使用情况判断分区的类型

我们首先查看当前系统的vdb的磁盘使用情况

lsblk /dev/vdb

根据显示我们可以得出这是一个使用MBR分区方案的磁盘

  • 主分区的编号一定是从1-4的,可以看到vdb1、vdb2、vdb3均为主分区
  • vdb4为什么不是主分区呢,以为主分区不可能是1K,这很明显是1个扩展分区,扩展分区的大小通常为1K
  • 因为vdb4是扩展分区,所以vdb5是逻辑分区
    在这里插入图片描述

接着我们查看当前系统的vdc的磁盘使用情况

lsblk /dev/vdc

在这里插入图片描述

根据显示情况,我们可以判断这是一个使用GPT分区方案的磁盘

  • 首先主分区的编号一定是从1-4的,根据磁盘容量我们可以得出vdc1、vdc2、vdc3、vdc4均为主分区
  • 根据vdc5的磁盘容量,我们也同样可以得出它为主分区
  • 能出现超过4个主分区的分区方案只有GPT

管理交换分区

free常见参数
参数作用
-b设置显示单位为B
-m设置显示单位为MB
-k设置显示单位为KB
-h自动调整合适的显示单位
swapon常见参数

用于激活交换分区,让SWAP交换分区内存可以立即被使用

参数作用
-s显示交换分区的使用情况
-a激活所有/etc/fstab文件中的交换分区
swapoff常见参数

用于关闭SWAP交换分区

参数作用
-a关闭/etc/fstab文件中的全部swap设备
管理交换分区

查看当前交换分区的大小

free -m

在这里插入图片描述

找一块空的分区

lsblk -f

在这里插入图片描述

建立交换分区

mkswap /dev/vdc2

激活交换分区,SWAP交换分区内存可以立即被使用

swapon /dev/vdc2

在这里插入图片描述

永久挂载

vim /etc/fstab# 追加下列内容
/dev/vdc2	swap	swap	defaults	0 0
# 或
/dev/vdc2	none	swap	defaults	0 0

激活所有/etc/fstab文件中的交换分区,相当于重载fstab文件

swapon -a

关闭交换分区

swapoff /dev/vdc2
使用本地存储创建交换分区

首先创建一个文件

dd if=/dev/zero of=/swapfile bs=100M count=1			# 在根目录创建一个100M的文件

格式化刚刚创建的文件

mkswap /swapfile

设置权限保证安全

chmod 0600 /swapfile

激活交换分区

swapon /swapfile

查看交换分区

swapon -s

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/14368.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用智能插件(Fitten Code: Faster and Better AI Assistant)修改好了可以持久保存的vue3留言板

天际 第一修改是选项式&#xff1a; <!-- 模板结构 --> <template><div><textarea placeholder"请输入备注内容" v-model"newItem"></textarea><button click"addItem">添加</button><hr><…

TypeScript-搭建编译环境

搭建编译环境 TypeScript 编写的代码是无法直接在js引擎( 浏览器 / Nodejs )中运行的&#xff0c;最终还需要经过编译成js代码才可以正常运行 搭建手动编译环境 1️⃣ 全局安装 typescript 包&#xff08;编译引擎&#xff09; -> 注册 tsc 命令 npm i -g typescript 2…

下拉框操作/键鼠操作/文件上传

在我们做UI自动化测试的时候&#xff0c;会有一些元素需要特殊操作&#xff0c;比如下拉框操作/键鼠操作/文件上传。 下拉框操作 在我们很多页面里有下拉框的选择&#xff0c;这种元素怎么定位呢&#xff1f;下拉框分为两种类型&#xff1a;我们分别针对这两种元素进行定位和…

2024最新 Jenkins + Docker 实战教程(五)- 配置Gitee Webhooks实现自动构建部署

&#x1f604; 19年之后由于某些原因断更了三年&#xff0c;23年重新扬帆起航&#xff0c;推出更多优质博文&#xff0c;希望大家多多支持&#xff5e; &#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Mi…

Packet Tracer-HSRP+DHCPv4+VLAN间路由+以太通道综合实验

实验拓扑&#xff1a; 实验内容&#xff1a; VLAN及VLAN间路由的配置&#xff0c;以太通道的配置&#xff0c;STP的根调整&#xff0c;DHCPv4的配置&#xff0c;首跳冗余HSRP的配置。 实验最终结果&#xff1a; PC可以自动获取到DHCP-Server分配的IP地址&#xff0c;实现首跳…

Web3革命:探索科技与物联网的无限可能

引言 Web3时代正在悄然而至&#xff0c;带来了对互联网的彻底颠覆和改变。作为互联网的下一代&#xff0c;Web3不仅是技术革新的延续&#xff0c;更是对传统互联网模式的重新构想。在这个新时代&#xff0c;科技与物联网的结合将迎来无限的可能性&#xff0c;将探索到一片全新…

iOS系统故障怎么办?这三种苹果手机系统修复方法你一定要知道

随着苹果手机使用时间越长&#xff0c;苹果手机有时也会出现系统问题&#xff0c;如卡顿、崩溃、无法启动等。这些问题不仅影响用户的使用体验&#xff0c;还可能导致数据丢失。因此&#xff0c;掌握苹果手机系统修复方法显得尤为重要。本文将详细介绍苹果手机系统修复的常见方…

大模型之Ollama:在本地机器上释放大型语言模型的强大功能

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;一&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;二&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;三&#xff09; 基于 LlaMA…

实战Java虚拟机-实战篇

一、内存调优 1.内存溢出和内存泄漏 内存泄漏&#xff08;memory leak&#xff09;&#xff1a;在Java中如果不再使用一个对象&#xff0c;但是该对象依然在GC ROOT的引用链上&#xff0c;这个对象就不会被垃圾回收器回收&#xff0c;这种情况就称之为内存泄漏。内存泄漏绝大…

一番赏小程序开发,为玩家带来线上抽赏魅力

随着人们对娱乐消费的增加&#xff0c;以及二次元文化的快速发展&#xff0c;以动漫IP为主的一番赏受到了越来越多的年轻人关注&#xff0c;一番赏市场迎来了黄金发展期&#xff01; 一番赏的运营模式是以“限量”为主&#xff0c;不管什么商品数量都是有限的&#xff0c;因此…

微软刚发布的Copilot+PC为什么让Intel和AMD尴尬?2024 AI PC元年——产业布局及前景展望

美国东部时间5月20日在微软位于华盛顿的新园区举行的发布会上&#xff0c;宣布将旗下AI助手Copilot全面融入Windows系统&#xff0c;能够在不调用云数据中心的情况下处理更多人工智能任务。 “将世界作为一个提示词就从Windows系统开始”。微软的新PC将是“CopilotPC”&#xf…

[Algorithm][回溯][记忆化搜索][最长递增子序列][猜数字大小Ⅱ][矩阵中的最长递增路径]详细讲解

目录 1.最长递增子序列1.题目链接2.算法原理详解3.代码实现 2.猜数字大小 II1.题目链接2.算法原理详解3.代码实现 3.矩阵中的最长递增路径1.题目链接2.算法原理详解3.代码实现 1.最长递增子序列 1.题目链接 最长递增子序列 2.算法原理详解 题目解析&#xff1a;从每个位置&am…

内部类知识点

什么是内部类&#xff1f; 内部类何时出现&#xff1f;B类是A类的一部分&#xff0c;且B单独存在无意义 内部类分类 成员内部类&#xff1a; 当内部类被private修饰后&#xff0c;不能用方法2 调用外部类成员变量 内部类里面有隐藏的outer this来记录 静态内部类 创建对象&…

水电集中抄表是什么?

1.定义分析&#xff1a;水电集中抄表 水电集中抄表是一种现代化能源管理体系方法&#xff0c;它利用先进的信息科技&#xff0c;如物联网技术、云计算等&#xff0c;完成对水电表数据的远程智能采集与处理。这种方法改变了传统的人工上门服务抄表方式&#xff0c;提高了效率&a…

Biome-BGC生态系统模型与Python融合技术实践应用

Biome-BGC是利用站点描述数据、气象数据和植被生理生态参数&#xff0c;模拟日尺度碳、水和氮通量的有效模型&#xff0c;其研究的空间尺度可以从点尺度扩展到陆地生态系统。 在Biome-BGC模型中&#xff0c;对于碳的生物量积累&#xff0c;采用光合酶促反应机理模型计算出每天…

ECharts实现地图飞线

echarts版本&#xff1a;https://echarts.apache.org/zh/changelog.html v5.x.x版本&#xff1a;不提供china.js和china.json文件 v4.x.x版本&#xff1a;使用npm安装echarts&#xff0c;默认包含china.js和china.json文件 目录 一、Html工程 二、vue工程 三、vue工程 四、矢…

c/c++ 编译过程

C的编译过程通常可以分为四个阶段&#xff1a;预处理、编译、汇编和链接。下面是这四个阶段的详细说明&#xff1a; 预处理&#xff08;Preprocessing&#xff09;&#xff1a;在这个阶段&#xff0c;预处理器&#xff08;cpp&#xff09;会处理源代码文件中的预处理指令&#…

【科普知识】伺服电机中的内置制动器

在工业自动化和机器人技术快速发展的今天&#xff0c;伺服电机作为核心驱动元件&#xff0c;其性能与功能直接影响整个系统的运行效率与稳定性。 近年来&#xff0c;一体化伺服电机技术不断融合创新&#xff0c;并逐步加入了许多新的硬件和软件的功能&#xff0c;为工业自动化领…

【施磊】C++语言基础提高:深入学习C++语言先要练好的内功

课程总目录 文章目录 一、进程的虚拟地址空间内存划分和布局二、函数的调用堆栈详细过程三、程序编译链接原理1. 编译过程2. 链接过程 一、进程的虚拟地址空间内存划分和布局 任何的编程语言 → \to → 产生两种东西&#xff1a;指令和数据 编译链接完成之后会产生一个可执行…