假设我将一个 USB 驱动器或 NVMe SSD 插入计算机,计算机如何知道驱动器上有多少个扇区?我的意思是磁盘本身知道吗?如果它知道,那么它会告诉计算机吗?我正在编写的脚本需要这个,我无法将任何包导入到脚本中,所以我需要以原始方式执行此操作,我想到一种方法是尝试写入磁盘并记录由于超出限制而无法写入的扇区数。
james's questions
我正在编写一个程序来移动分区的位置,只是为了好玩。它基本上通过读取分区方案(例如 GPT 或 MBR)来找到分区,然后读取512B
分区的一个扇区(),然后将其写入新位置。但由于某种原因,这个过程非常慢,实际上这个驱动器的速度高达 2GB/s,但这个过程只以 700KB/s 的速度进行。是因为我应该一次读取/写入更大的原始数据吗?为什么?还有其他技巧可以加快速度吗?它正在测试HP P900 1TB Portable SSD
。我还编辑了代码,使其使用 1 个完整的 SSD 页面进行读写,即4096B
。性能确实提升到了8Mb/s
,但这仍然远远没有达到我期望的性能。然后我让它每轮移动 1 Gib,它能够达到 1Gib/S 的速度。但由于 SSD 的页面大小只有 4KB,为什么4kib
一次读写和一次1gib
读写之间的性能会有差异呢?
我有一台 Razer Blade 15 基本型号(2020 年初)- RZ09-0328,它上面有一个 4K OLED 显示屏。由于它是 OLED,所以我假设它支持 HDR,事实上 Windows 也建议它也支持 HDR。
但是一旦启用 Windows HDR,整个屏幕就会变暗,白色甚至不再是真正的白色,事实上它非常灰。
我甚至尝试使用NotebookCheck创建的ICC 颜色校准文件,但也没有太大帮助。HDR 视频和 SDR 视频似乎都不够亮,而且缺乏色彩。Windows 中用于在 HDR 内容和 SDR 内容之间切换的栏表现非常奇怪,当我移动栏时,亮度会随机上下移动,当我停止栏时,从一开始就没有任何变化。
请注意,当我应用时#force-color-profile
,铬的白色部分在 HDR 下会变得非常亮,但黑色部分会淡出(为什么会发生这种情况?我以为 OLED 可以控制单个像素)。
最后,Windows HDR 校准应用程序内置的也无济于事,当我在最大亮度下和在 50% 亮度下进行测试时,结果完全不同。
GDT
= Group Descriptor Table
; GD
= Group Descriptor
。我试图弄清楚在超级块之后我需要读取多少字节才能提取整个GDT
,因为我正在编写的程序需要它。众所周知,每个 都是GD
,64B
并且每个块组都应该有 GD
,但是由于存在特殊标志(例如flex_bg
或sparse_super
或meta_bg
),这将使 少于GD
应有的长度。在这种情况下,我应该如何知道 的长度GDT
?
我执行了这 2 个 PS 命令来获取磁盘的确切大小,但一个命令返回的大小小于10440 sector
另一个命令(512B sector size
)。我应该相信哪一个?为什么会有差异?
$ wmic diskdrive list brief
Caption DeviceID Model Partitions Size
KINGSTON SNV2S1000G \\.\PHYSICALDRIVE0 KINGSTON SNV2S1000G 3 1000202273280
USB SanDisk 3.2Gen1 USB Device \\.\PHYSICALDRIVE2 USB SanDisk 3.2Gen1 USB Device 1 61525094400
HP P900 1TB SCSI Disk Device \\.\PHYSICALDRIVE3 HP P900 1TB SCSI Disk Device 2 1024203640320
ACASIS EC-5351C SCSI Disk Device \\.\PHYSICALDRIVE1 ACASIS EC-5351C SCSI Disk Device 1 4000784417280
$ Get-Disk | Select-Object Number, Size
Number Size
------ ----
3 1024209543168
1 4000787030016
0 1000204886016
2 61530439680
你看第一个命令给了我大小61525094400
,但第二个命令给了61530439680
我有一个使用 GPT 的磁盘,上面只有 1 个分区(Ext4),根据UEFI,第一个16 Bytes
应该GPT Partition Entry Array
是Partition Type GUID
。所以我提取了我的分区Partition Type GUID
并读取了它的第一个32 Digits
,因为它是十六进制形式。然后我得到了 GUID ,在与维基百科af3dc60f838472478e793d69d8477de4
上的列表进行核对后,我发现这个特定的 GUID 没有任何意义。因此,这引发了一个问题:谁决定类型 GUID 及其对应的类型?是否有类型及其 GUID 的完整列表,或者我的列表根本不存在?以零结尾的列表被截断:GPT Partition Entry Array
af3dc60f838472478e793d69d8477de4e18058ef52250344ba2f0ae31c057fa60008000000000000ffb7c0d10100000000000000000000006500780074003400740062
我们知道,主引导记录(MBR) 以 440 字节的引导代码开始。据我所知,它启动引导过程并加载操作系统的引导加载程序。
但是对于一个仅用于文件存储并且完全不可启动的外部硬盘来说,为什么仍然有启动代码呢?
我有一块 1 TB 的HP P900 SSD,带有一个 MBR、一个ext4分区和一个exFAT分区。所有分区都仅用于文件存储,而且它们同样不可引导,但为什么在 MBR 原始字节中仍然有引导代码?以下是整个 MBR 的十六进制原始字节:
fab800108ed0bc00b0b800008ed88ec0fbbe007cbf0006b90002f3a4ea21060000bebe073804750b83c61081fefe0775f3eb16b402b001bb007cb2808a74018b4c02cd13ea007c0000ebfe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000069d0e83000000020210083fec2ff000800000060f62400fec2ff07fec2ff0068f62400684552000000000000000000000000000000000000000000000000000000000000000055aa
这些是启动代码:
fab800108ed0bc00b0b800008ed88ec0fbbe007cbf0006b90002f3a4ea21060000bebe073804750b83c61081fefe0775f3eb16b402b001bb007cb2808a74018b4c02cd13ea007c0000ebfe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
这些是字节形式的启动代码:
11111010 10111000 00000000 00010000 10001110 11010000 10111100 00000000 10110000 10111000 00000000 00000000 10001110 11011000 10001110 11000000 11111011 10111110 00000000 01111100 10111111 00000000 00000110 10111001 00000000 00000010 11110011 10100100 11101010 00100001 00000110 00000000 00000000 10111110 10111110 00000111 00111000 00000100 01110101 00001011 10000011 11000110 00010000 10000001 11111110 11111110 00000111 01110101 11110011 11101011 00010110 10110100 00000010 10110000 00000001 10111011 00000000 01111100 10110010 10000000 10001010 01110100 00000001 10001011 01001100 00000010 11001101 00010011 11101010 00000000 01111100 00000000 00000000 11101011 11111110 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
我有一个 512B 的标头,我知道它要么是 MBR,要么是像保护性 MBR 这样的假 MBR。通过查看它们的原始字节,我如何识别它们?例如
fab800108ed0bc00b0b800008ed88ec0fbbe007cbf0006b90002f3a4ea21060000bebe
073804750b83c61081fefe0775f3eb16b402b001bb007cb2808a74018b4c02cd13ea00
7c0000ebfe000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000069d0e83000000020210083fec2ff00
0800000060f62400fec2ff07fec2ff0068f62400684552000000000000000000000000
000000000000000000000000000000000000000055aa
在决定改用 Windows 11 之前,我一直在使用 Ubuntu,因此我对它很陌生。最近我安装了一个 VPN 应用程序,但后来我决定不再需要它,因此我点击了卸载。Windows 所做的就是在该应用程序的程序文件夹下执行 uninstall.exe,然后该应用程序基本上就自行删除了。
那天晚些时候,我发现该应用程序并没有被完全删除,这是由 DNS 服务器不断变回一些奇怪的 IP 地址所表明的(这是该 VPN 应用程序的工作的一部分,我很确定这一点)。
那么,在 Windows 11 上卸载 APP 是否有正确的方法,或者唯一正确的方法是让应用程序自行卸载?
我非常担心和沮丧,因为我意识到让应用程序自行卸载可能会造成潜在的危险,例如恶意软件可能会故意留下危险物品。此外,在很长一段时间内,可能会有大量未完全卸载的应用程序,这可能会给系统带来沉重的负担(如果有一千个应用程序未完全卸载,每个应用程序都可能留下一些不必要的操作/进程,最终会在一年内耗尽系统的资源,系统会变得非常“缓慢”)。
我的理论正确吗(如果正确,这是否也会发生在其他操作系统上,例如 MacOS?);有没有更好/正确的卸载方法?
我无法调和这个三星 RAM 页面和 RAM应该比任何 SSD 或 HDD 快得多的想法。
该页面显示,DDR4 RAM 的数据传输速度为 2666Mbps,这比 SSD 的数据传输速度要慢得多。
我误解了什么?
我的笔记本电脑已经运行了大约一年,电池循环使用超过 300 次,运行正常。昨天,它在启动过程中突然黑屏,特别是在启动网络服务的最后阶段。这让我认为这不是软件或 BIOS 问题。
我把它送到维修店,他们说可能是主板短路。为了找到短路,我触摸了主板以查找任何热点。我发现唯一发热的部分是电源管理单元。那里有一个小电容器,看起来可疑地坏了。
电源管理单元仅在连接充电器时才会发热,内部电池不会发热。但是,笔记本电脑仍然无法使用任何电源启动。该区域的所有单元都有点热,所以我不能确定可疑芯片是否是唯一过热的芯片。整个红色圆圈部分都在发热
我认为标签“PU702”旁边的橙色小电容器已经损坏:
更新编辑:显微镜确认电容已烧毁,导致一侧焊接材料烧坏,因此与主板断开
PCB 元件命名系统:
C: Capacitor
R: Resistor
L: Inductor
Q: Transistor
D: Diode
U: Integrated Circuit (IC)
J: Connector
TP: Test Point
SW: Switch
我的键盘或键盘附近有很多脏灰尘。我打开笔记本电脑并尝试取下键盘。但事实证明它是焊接在面板上的,所以我把面板拆下来,想知道是否可以用水洗?我的意思是问题是键盘和触摸板可能有芯片,所以我洗完后把它们擦干可以吗?我的意思是芯片应该是固体的,水不能进入其中,对吧?