RHCE9学习指南 第13章 硬盘管理

新的硬盘首先需要对硬盘进行分区和格式化,首先了解一下硬盘的结构,如图13-1所示。
file
图13-1 磁盘上的磁道和扇区
硬盘的磁盘上有一个个的圈,每两个圈组成一个磁道。从中间往外发射线,把每个磁道分成一个个的扇区,每个扇区的大小是512B。为了更好理解咱们把所有磁盘拼接起来,如图13-2所示。
file
图13-2 分区是以扇区划分的
假设磁盘有10000个扇区,第一个分区从2048开始到6000,第二个分区从6001到8000,第三个分区从8001到10000。
每个扇区只能属于一个分区,不能同时属于多个分区。
第一个扇区比较特殊,叫作MBR(主引导记录)
分区的类型包括:主分区,扩展分区和逻辑分区,如图13-3所示。
file
图13-3 了解分区类型
一套房子出租,李四和王五从房东手中直接各租一间自住,这个属于主分区。
赵六从房东手中租过来一大间,但自己不住做起了二房东(扩展分区),然后隔成很多隔间。赵六租的那一大间就是扩展分区,大间里隔开的一些隔间,就是逻辑分区。
主分区:直接从硬盘上划分并可以直接格式化使用的分区。
扩展分区:直接从硬盘上划分,但是不直接使用的分区,需要在其上面划分更多个小分区。
逻辑分区:在扩展分区上划分的分区。
分区表记录主分区和扩展分区的信息,如同房东从李四、王五、赵六中收房租一样,但是收不到tom、bob等的房租,tom、bob等的房租由赵六来收,因为赵六是二房东。
每记录一个分区(主分区或扩展分区)则要消耗16B,所以分区表最多只能 记录4个分区,所以硬盘最多只能划分出来4个分区,且最多只能有一个扩展分区。
请关闭虚拟机server并自行为虚拟机添加一块scsi格式的硬盘,然后开机进入系统。

13.1 对磁盘进行分区

使用fdisk -l查看所有分区信息,命令如下所示。

[root@server ~]# fdisk -l
Disk /dev/sdb:20 GiB,21474836480 字节,41943040 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

Disk /dev/sda:100 GiB,107374182400 字节,209715200 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xaa4e4e08

设备       启动      起点      末尾      扇区 大小 Id 类型
/dev/sda1  *         2048 104859647 104857600  50G 83 Linux
/dev/sda2       104859648 113248255   8388608   4G 82 Linux swap / Solaris
[root@server ~]#

此命令可以查看系统所有硬盘的信息,从这里可以看到/dev/sda有两个分区/de/sda1和/dev/sda2,/dev/sdb没任何分区。如果想单独某硬盘的分区信息可以用fdisk -l /dev/硬盘即可,例如,想单独查看/dev/sda的信息,则用fdisk -l /dev/sda,命令如下所示。

[root@server ~]# fdisk -l /dev/sda
Disk /dev/sda:100 GiB,107374182400 字节,209715200 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xaa4e4e08

设备       启动      起点      末尾      扇区 大小 Id 类型
/dev/sda1  *         2048 104859647 104857600  50G 83 Linux
/dev/sda2       104859648 113248255   8388608   4G 82 Linux swap / Solaris
[root@server ~]# 

这里可以获取到很多信息,例如,整个sda有多少个扇区,每个分区从哪个扇区开始到哪个扇区结束等。
下面开始练习分区,自行添加一个类型为SCSI大小为20G的分区。
分区的语法为fdisk /dev/硬盘,这里是对硬盘进行分区不是对分区再分区。

[root@server ~]# fdisk /dev/sdb

欢迎使用 fdisk (util-linux 2.32.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

设备不包含可识别的分区表。
创建了一个磁盘标识符为 0x737fabb4 的新 DOS 磁盘标签。

命令(输入 m 获取帮助)

此处进入分区的界面,按提示输入m可以获取到帮助,常见的命令如下。

(1)p:打印分区表。
(2)n:添加一个分区。
(3)d:删除一个分区。
(4)l:列出分区类型。
(5)t:转发分区的类型。
(6)q:不保存直接退出。
(7)w:保存并退出。

查看现有分区信息,此处输入p,命令如下所示。

命令(输入 m 获取帮助):p #此处输入p用于打印分区表
Disk /dev/sdb:20 GiB,21474836480 字节,41943040 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x737fabb4
命令(输入 m 获取帮助)

此处并没有看到/dev/sdb1, /dev/sdb2等内容,说明并不存在任何分区。
按n创建一个分区,命令如下所示。

命令(输入 m 获取帮助):n
分区类型
   p   主分区 (0个主分区,0个扩展分区,4空闲)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p)

直接在硬盘上划分的分区有主分区(标记为p)和扩展分区(标记为e),逻辑分区(标记为字母l)只能在扩展分区上创建,且扩展分区最多只能创建一个扩展分区。
所以,在硬盘中没有扩展分区时,只能所以选择分区类型时只能选择p和e这两种。如果已经存在了扩展分区,就不能再创建第二个扩展分区了,但可以在扩展分区上创建逻辑分区,所以选择可选择的分区类型有p和l。
先创建主分区或创建扩展分区都可以,这里先创建主分区,输入p,按【Enter】键。主分区加扩展分区最多只能创建出来4个,所以给分配的编号只能是1-4,这里选择默认的1,然后按【Enter】键。
命令(输入 m 获取帮助):n

分区类型
   p   主分区 (0个主分区,0个扩展分区,4空闲)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认  1):此处直接回车,使用默认的编号1

硬盘总共有41943039个扇区,第一个分区从哪个柱面开始,默认为2048,直接按【Enter】键,我们就从2048开始。

第一个扇区 (2048-41943039, 默认 2048): 按【Enter】键
上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-41943039, 默认 41943039): N

这里N的位置得写一个结束点,假设我要创建2G的分区,从2048号柱面开始算,到哪个柱面结束能使得分区大小是2G呢?如图13-4所示。
file
图13-4 计算分区大小
我们现在算一下:2G=21024M=210241024K=2102410242扇区 (1扇区=0.5K),所以一共需要210241024*2=4194304个扇区,从2048开始算,所以最后一个扇区应该落在2048+4194304-1=4196351的位置,这样创建出来的分区就是2G,所以上图填写4196351。

第一个扇区 (2048-41943039, 默认 2048): 
上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-41943039, 默认 41943039): 4196351

创建了一个新分区 1,类型为“Linux”,大小为 2 GiB。

命令(输入 m 获取帮助)

创建2G分区后,输入p查看分区信息,命令如下所示。

命令(输入 m 获取帮助):p
	...输出...
设备       启动  起点    末尾    扇区     大小 Id 类型
/dev/sdb1        2048   4196351 4194304   2G   83 Linux

命令(输入 m 获取帮助)

可以看出,从2048开始,共4194304个扇区,在4196351这个位置结束,大小为2G。
但是这种创建分区的方法比较麻烦,可以先输入d,按【Enter】键,删除此分区,命令如下所示。

命令(输入 m 获取帮助):d 此处输入d表示删除分区
已选择分区 1
分区 1 已删除。

命令(输入 m 获取帮助)

因为sdb1是唯一的分区,直接就删除的是sdb1,然后重复上面的方法重新创建分区,命令如下所示。

命令(输入 m 获取帮助):n
分区类型
   p   主分区 (0个主分区,0个扩展分区,4空闲)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p):

将使用默认回应 p。
分区号 (1-4, 默认  1): 
第一个扇区 (2048-41943039, 默认 2048): 
上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-41943039, 默认 41943039): 

因为并不需要关心分区到哪个柱面结束,只关心分区大小,所以这里可以写+2G,意思是从2048柱面开始划分一个2G大小的分区,命令如下所示。

第一个扇区 (2048-41943039, 默认 2048): 
上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-41943039, 默认 41943039): +2G

创建了一个新分区 1,类型为“Linux”,大小为 2 GiB。

命令(输入 m 获取帮助)

然后输入p查看分区信息,命令如下所示。
命令(输入 m 获取帮助):p

	...输出...
设备       启动  起点    末尾    扇区    大小 Id 类型
/dev/sdb1        2048   4196351 4194304   2G  83 Linux

命令(输入 m 获取帮助)

可以看到,与手动算出来的一样,通过这种方式划分分区就容易多了。
依次再创建一个主分区/dev/sda2大小为2G,命令如下所示。

命令(输入 m 获取帮助):p
	...输出...
设备       启动    起点    末尾    扇区 大小 Id 类型
/dev/sdb1          2048 4196351 4194304   2G 83 Linux
/dev/sdb2       4196352 8390655 4194304   2G 83 Linux

命令(输入 m 获取帮助)

创建一个扩展分区/dev/sda4,把剩余所有空间全部给它(这里故意没有创建/dev/sda3),命令如下所示。

命令(输入 m 获取帮助):n
分区类型
   p   主分区 (2个主分区,0个扩展分区,2空闲)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p):e 这里输入e表示创建一个扩展分区
分区号 (3,4, 默认  3): 4
第一个扇区 (8390656-41943039, 默认 8390656): 按【Enter】键
上个扇区,+sectors 或 +size{K,M,G,T,P} (8390656-41943039, 默认 41943039): 按【Enter】键

创建了一个新分区 4,类型为“Extended”,大小为 16 GiB。

命令(输入 m 获取帮助)

查看分区信息,命令如下所示。

命令(输入 m 获取帮助):p
	...输出...
设备       启动    起点     末尾     扇区 大小 Id 类型
/dev/sdb1          2048  4196351  4194304   2G 83 Linux
/dev/sdb2       4196352  8390655  4194304   2G 83 Linux
/dev/sdb4       8390656 41943039 33552384  16G  5 扩展

命令(输入 m 获取帮助)

创建扩展分区后,就可以创建逻辑分区了,但我们看到了编号3并使用,所以现在还可以创建一个主分区,但是硬盘已经没有多余的空间,所以不能再创建主分区只能创建逻辑分区。逻辑分区的编号总是从5开始,命令如下所示。

添加逻辑分区 5
第一个扇区 (8392704-41943039, 默认 8392704): 按【Enter】键
上个扇区,+sectors 或 +size{K,M,G,T,P} (8392704-41943039, 默认 41943039): +2G

创建了一个新分区 5,类型为“Linux”,大小为 2 GiB。

命令(输入 m 获取帮助)

依照此方法再创建几个分区,命令如下所示。

设备       启动     起点     末尾     扇区 大小 Id 类型
/dev/sdb1           2048  4196351  4194304   2G 83 Linux
/dev/sdb2        4196352  8390655  4194304   2G 83 Linux
/dev/sdb4        8390656 41943039 33552384  16G  5 扩展
/dev/sdb5        8392704 12587007  4194304   2G 83 Linux
/dev/sdb6       12589056 16783359  4194304   2G 83 Linux
/dev/sdb7       16785408 20979711  4194304   2G 83 Linux

看上面最右侧两列id和类型,这两个是对应的。因为分区的作用不一样,有的可以直接格式化使用,有的用于做swap,有的用于做逻辑卷等。这些类型是可以转换的,输入字母l可以看到所有类型,如图13-5所示。
file
图13-5 分区类型代码
常见的分区类型如下。

(1)Linux:对应的Id为83,直接格式化使用的分区。
(2)swap:对应的Id为82,用于创建swap。
(3)lvm:对应的Id为8e,用于创建lv。
(4)raid:对应的Id为fd,用于创建fd。

例如,准备把/dev/sdb5配置成逻辑卷,先把/dev/sdb5的类型改成8e,操作如下。
先按t开始进行转换,命令如下所示。
命令(输入 m 获取帮助):t
分区号 (1,2,4-7, 默认 7):
然后输入要转换的分区好,这里输入5,然后按【Enter】键后输入要转换的类型8e,命令如下所示。

命令(输入 m 获取帮助):t
分区号 (1,2,4-7, 默认  7): 5
Hex 代码(输入 L 列出所有代码):8e

已将分区“Linux”的类型更改为“Linux LVM”。

命令(输入 m 获取帮助)

然后输入p查看分区信息,命令如下所示。
命令(输入 m 获取帮助):p

	...输出...
设备       启动     起点     末尾     扇区 大小 Id 类型
/dev/sdb1           2048  4196351  4194304   2G 83 Linux
/dev/sdb2        4196352  8390655  4194304   2G 83 Linux
/dev/sdb4        8390656 41943039 33552384  16G  5 扩展
/dev/sdb5        8392704 12587007  4194304   2G 8e Linux LVM
/dev/sdb6       12589056 16783359  4194304   2G 83 Linux
/dev/sdb7       16785408 20979711  4194304   2G 83 Linux

命令(输入 m 获取帮助)

使用相同的方式把/dev/sdb6, /dev/sdb7的类型也转变为8e。
为了下一节做准备,把/dev/sdb2的类型改为swap类型,输入t,命令如下所示。

命令(输入 m 获取帮助):t
分区号 (1,2,4-7, 默认  7): 2
Hex 代码(输入 L 列出所有代码):82

已将分区“Linux”的类型更改为“Linux swap / Solaris”。

然后输入p查看分区信息,命令如下所示。

命令(输入 m 获取帮助):p
	...输出...
设备       启动     起点     末尾     扇区 大小 Id 类型
/dev/sdb1           2048  4196351  4194304   2G 83 Linux
/dev/sdb2        4196352  8390655  4194304   2G 82 Linux swap / Solaris
	...输出...
命令(输入 m 获取帮助)
现在所做的一切并没有真的保存,如果不想保存直接退出,可以输入q并按【Enter】键,如果想保存并退出,可以输入w并按【Enter】键,命令如下所示。
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioCtrl() 来重新读分区表。
正在同步磁盘。

[root@server ~]# 

有时,需要执行partprobe /dev/sdb来刷新一下分区表。然后使用fdisk进行查看,命令如下所示。
[root@server ~]# fdisk -l /dev/sdb

	...输出...
设备       启动     起点     末尾     扇区 大小 Id 类型
/dev/sdb1           2048  4196351  4194304   2G 83 Linux
/dev/sdb2        4196352  8390655  4194304   2G 82 Linux swap / Solaris
/dev/sdb4        8390656 41943039 33552384  16G  5 扩展
/dev/sdb5        8392704 12587007  4194304   2G 8e Linux LVM
/dev/sdb6       12589056 16783359  4194304   2G 8e Linux LVM
/dev/sdb7       16785408 20979711  4194304   2G 8e Linux LVM
[root@server ~]# 

13.2 交换分区

在物理内存不够用的情况下,系统会把物理内存中的那些长时间没操作的数据释放出来,保存在交换分区(swap)中,这样物理内存中就有多余的空间,用于存放新的数据。
如果物理内存不够了可以使用swap分区,那么如果swap分区也不够了呢?我们就可以添加swap分区。下面就来讲讲如何管理swap分区。
查看当前系统中所有的swap分区,命令如下所示。

[root@server ~]# swapon -s
文件名				                类型		 大小	  已用	权限
/dev/sda2                           partition	4194300	   0	-2
[root@server ~]#

可以看到,当前/dev/sda2是交换分区,大小是4G。这里权限的是,如果有多个swap分区,优先使用哪个,数值越大越优先。查看swap分区也可以用命令cat /proc/swaps 。
下面准备把/dev/sdb2创建为swap分区。步骤如下。
第1步:把/dev/sdb2创建为swap分区,命令如下所示。
[root@server ~]# mkswap /dev/sdb2

正在设置交换空间版本 1,大小 = 2 GiB (2147479552  个字节)
无标签,UUID=96b078f8-6ca3-4aac-9af7-b37234b03a6c
[root@server ~]#

第2步:激活新创建的swap分区,命令如下所示。

[root@server ~]# swapon /dev/sdb2
[root@server ~]# swapon -s
文件名				         类型		大小	  已用	权限
/dev/sda2                    partition	4194300  	0	-2
/dev/sdb2                    partition	2097148		0	-3
[root@server ~]#

可以看到,此时已经有了两个交换分区了。其中/dev/sdb2的权限为-3,说明/dev/sda2更优先使用。如果想设置让/dev/sdb2更优先使用,可以调整/dev/sdb2的优先级。
第3步:关闭新创建的swap分区,命令如下所示。

[root@server ~]# swapoff /dev/sdb2
[root@server ~]#

第4步:激活swap分区,并指定优先级,命令如下所示。

[root@server ~]# swapon -s
文件名				类型		大小		已用	权限
/dev/sda2           partition	4194300		0		-2
/dev/sdb2           partition	2097148		0		2
[root@server ~]#

可以看到,/dev/sdb2的优先级是2,这个交换分区会优先使用。
上面设置的这个交换分区也只时临时生效,如果要让其重启系统之后仍然生效,就需要写入/etc/fstab中。
第5步:编辑/etc/fstab,在最后一行添加,命令如下所示。

[root@server ~]# tail -1 /etc/fstab
/dev/sdb1	none	swap	defaults,pri=2		0 	0
[root@server ~]#

上面每个字段用空格或tab隔开均可,第四列defaults后面的逗号两边没有空格。
如果不需要指定优先级,第四列直接写defaults即可。
如果/dev/sdb2当前没有激活,则在写入/etc/fstab之后,执行swapon -a即可。

作业

作业题在server2上完成。
准备工作:自行在server2上新添加一块类型为SCSI大小为20G的硬盘/dev/sdb。
作业1:在/dev/sdb上创建2个主分区,大小分别是2G。

作业2:在/dev/sdb上创建1个扩展分区,使用/dev/sdb剩余所有空间。

作业3:在/dev/sdb上创建3个逻辑分区,大小分别为2G。

作业4:把/dev/sdb2创建为交换分区,要求重启系统后继续生效,并要求当物理内存不够时优先使用/dev/sdb2。

作业5:把/dev/sdb5、/dev/sdb6、/dev/sdb7的分区类型转变为LVM类型的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

QT上位机开发(第一个应用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 不管是软件,还是硬件,如果我们能够顺利启动第一个应用,点亮第一个电路的话,这对我们的信心来说会有…

【MySQL】主从异步复制配置

您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦。 💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精…

Spring Boot快速搭建一个简易商城项目【完成登录功能且优化】

完成登录且优化: 未优化做简单的判断: 全部异常抓捕 优化:返回的是json的格式 BusinessException:所有的错误放到这个容器中,全局异常从这个类中调用 BusinessException: package com.lya.lyaspshop.exce…

unity学习笔记----游戏练习03

一、修复植物种植的问题 1.当手上存在植物时,再次点击卡片上的植物就会在手上添加新的植物,需要修改成只有手上没有植物时才能再次获取到植物。需要修改AddPlant方法。 public bool AddPlant(PlantType plantType) { //防止手上出现多个植…

《深入理解C++11:C++11新特性解析与应用》笔记五

第五章 提高类型安全 5.1 强类型枚举 5.1.1 枚举:分门别类与数值的名字 具名枚举类型一般声明类似:enum Gender { Male, Female }。 匿名枚举类型可以使用三种方式实现: 第一种方式时宏,比如 #define Male 0 #define Femal…

安全生产知识竞赛活动方案

为进一步普及安全生产法律法规知识,增强安全意识,提高安全技能,经研究,决定举办以“加强安全法治、保障安全生产”为主题的新修订《安全生产法》知识竞赛活动,现将有关事项通知如下: 一、活动时间&#xf…

机器学习(二) -- 数据预处理(3)

系列文章目录 机器学习(一) -- 概述 机器学习(二) -- 数据预处理(1-3) 未完待续…… 目录 前言 tips:这里只是总结,不是教程哈。本章开始会用到numpy,pandas以及matpl…

【Kubernetes】什么是 kubectl ?

什么是 kubectl ? 1.什么是 kubectl ?2.Kubernetes 内部结构3.Kubernetes API 的作用 1.什么是 kubectl ? 在学习如何更有效地使用 kubectl 之前,您应该对它是什么以及它如何工作有一个基本的了解。从用户的角度来看,…

助力打造智慧数字课堂,基于YOLOv8全系列【n/s/m/l/x】不同参数量级模型开发构建教学课堂场景下学生课堂行为检测识别分析系统

近年来,随着行为检测技术的发展,分析学生在课堂视频中的行为,以获取他们的课堂状态和学习表现信息已经成为可能。这项技术对学校的教师、管理人员、学生和家长都非常重要。使用深度学习方法自动检测学生的课堂行为是分析学生课堂表现和提高教…

计算机视觉技术-目标检测数据集

目标检测领域没有像MNIST和Fashion-MNIST那样的小数据集。 为了快速测试目标检测模型,我们收集并标记了一个小型数据集。 首先,我们拍摄了一组香蕉的照片,并生成了1000张不同角度和大小的香蕉图像。 然后,我们在一些背景图片的随机…

分享好用稳定快递查询api接口(对接简单)

提供实时查询和自动识别单号信息。稳定高效,调用简单方便,性价比高,一条链接即可对接成功。 使用数据平台该API接口需要先注册后申请此API接口。申请成功后赠送免费次数,可直接在线请求接口数据。 接口地址:https://…

ArkUI中自定义组件的生命周期

文章概叙 本文主要是介绍下在作为page以及component的时候的生命周期,以及调用API等应该在哪个生命周期使用。 书接上回 之前的博客已经结束了对底部栏的操作,现在开始需要关注到具体内容的对接了。 而开发的第一步,我们对页面的生命周期…

你了解螺杆螺纹吗?

螺杆的螺纹部分是其核心部分之一,主要作用是传递旋转运动和力矩,丝杆的螺纹形状和参数对其性能和使用寿命有着重要影响;常用的螺杆螺纹可以分为:三角牙螺纹、梯形牙螺纹、矩形牙螺纹、锯齿牙螺纹、滚珠螺纹。 1、三角牙&#xff1…

Tomcat与Servlet是什么关系

Tomcat与Servlet是什么关系 Apache Tomcat和Servlet之间存在密切的关系,可以说它们是一对密切合作的组件。下面是它们的关系: Tomcat是Servlet容器: Tomcat是一个开源的、轻量级的Servlet容器。Servlet容器是一个Web服务器扩展,用…

【YOLOV8实例分割——详细记录环境配置、自定义数据处理到模型训练与部署】

前言 Ultralytics YOLOv8是一种前沿的、最先进的(SOTA)模型,它在前代YOLO版本的成功基础上进行了进一步的创新,引入了全新的特性和改进,以进一步提升性能和灵活性。作为一个高速、精准且易于操作的设计,YOL…

LOAM: Lidar Odometry and Mapping in Real-time 论文阅读

论文链接 LOAM: Lidar Odometry and Mapping in Real-time 0. Abstract 提出了一种使用二维激光雷达在6自由度运动中的距离测量进行即时测距和建图的方法 距离测量是在不同的时间接收到的,并且运动估计中的误差可能导致生成的点云的错误配准 本文的方法在不需要高…

软件工程期末复习习题

知识点总结 第一章:软件工程概述 1、软件的定义:在运行中能提供所希望的功能与性能的程序使程序能够正确运行的数据及其结构描述软件研制过程和方法所用的文档。 2、软件危机:软件开发的生产率远远不能满足客观需要。开发的软件产品往往不能…

MyBatis-config.xml配置文件

1、基本介绍: mybatis的核心配置文件(mybatis-config.xml),比如配置jdbc连接信息,注册mapper等等,我们需要对这个配置文件有详细的了解。 官网地址有详细介绍 mybatis – MyBatis 3 | 配置 2、properties属性 在通常的情况下&am…

【Apache Doris】自定义函数之 JAVA UDF 详解

【Apache Doris】自定义函数之 JAVA UDF 详解 一、背景说明二、原理简介三、环境信息3.1 硬件信息3.2 软件信息 四、IDE准备五、JAVA UDF开发流程5.1 源码准备5.1.1 pom.xml5.1.2 JAVA代码 5.2 mvn打包5.2.1 clean5.2.2 package 5.3 函数使用5.3.1 upload5.3.2 使用 六、注意事…

TV端Web页面性能优化实践

01 背景 随着互联网技术的持续创新和电视行业的高速发展,通过电视观看在线视频已经逐渐成为大众的重要娱乐方式。奇异果App作为在TV设备上用户活跃度最高的应用之一,为广大用户提供了丰富的内容播放服务,除此之外,同样有会员运营、…