You are missing that Unix tradition is that normal computers:
a: /
b: swap
c: whole disk
d,e,f,h,h: /var /usr (and so on)
and that generally there is just a disklabel, which fits inside a which
is first.
As a exception on PCs, and hence i386/amd64, instead there is often a
MBR partition table, and within that a "*BSD partition", with the
convention:
a: /
b: swap
c: entire NetBSD partition as specified in MBR
d: entire disk
e: /var
f: /usr
g: /home
h: /foo
One can also make a partition table entry that covers blocks not in (c), for
other MBR partitions.
(With GPT this is all different.)
So on a RPI4, which is not a PC, you will find rsd0c as the whole disk.
Just like on a pdp11 with 2.11BSD :-), vax, and pretty much everything
not-PC.
But, I recommend a practice of looking at tables and understanding
first.
gpt show sd0
disklabel sd0
and beware "Fictitious" which means there is no label.
I expect that if you run disklabel on that drive on an amd64, the fake
disklabel will show a/d and on RPI, a/c.
As an example, here's what an old 500G disk that has been zeroed (well,
written with zeroes and block counters) shows, on amd64:
# /dev/rsd0:
type: SCSI
disk: Disk Device
label: fictitious
flags:
bytes/sector: 512
sectors/track: 32
tracks/cylinder: 64
sectors/cylinder: 2048
cylinders: 477102
total sectors: 977105060
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
4 partitions:
# size offset fstype [fsize bsize cpg/sgs]
a: 977105060 0 4.2BSD 0 0 0 # (Cyl. 0 - 477102*)
d: 977105060 0 unused 0 0 # (Cyl. 0 - 477102*)
disklabel: boot block size 0
disklabel: super block size 0