A installed boot loader typically boots vmlinuz, a.k.a kernel. In Puppy like systems that kernel tends to hand over control to init. For frugal type Puppy bootups that init setups up a environment that is like a chroot environment that it switch-roots into. Different systems do things different ways, but again for what you're looking at it will be something like /etc/inittab that is used as part of startup. If you look in that file you'll see various tty's get set up, perhaps tty1, tty2, tty3 ... could be more, could be less. On each of those, again typically - but by no means fixed, it will present a login prompt, where you can ctrl-alt-Fn to and login using root, or spot (or whatever userid the system support). One or more of those could alternatively be set to autologin at startup. Also in /etc/inittab there maybe something like a execution of /etc/rc.d/rc.sysinit - that in turn starts a load of things such as a bunch of scripts to setup wifi, bluetooth, whatever.
When X (gui) is started it also takes up its own ctrl-alt-Fn position, somewhat like a separate login. Which in your case is on ctrl-alt-F3. If in the main desktop/gui system you for instance opened a terminal and ran
startx -- :1
then another X/grahical session (might, not sure in your case) start on ctrl-alt-F4
Whilst the default root password in Puppy is woofwoof, its good practice to change that. i.e. when logged in as root, in a terminal window type 'passwd' and it will prompt you (twice) for the new password. To change the password for userid 'spot' (whatever) you use 'passwd spot'.
That's all complicated by variations. Different systems might run the same/similar or completely different approaches to bootup.
Fundamentally the kernel can't do much once loaded in respect to user interaction, it hands over to userland (such as init) for such interaction. As part of that Puppy uses a program called busybox ... which contains a wide range of 'commands' that can be run. If you type 'busybox' in a terminal window the it will reveal all of the commands supported. If 'whoami' for instance is included then running 'busybox whoami' ... will show your userid. In *nix type systems such commands tend to be individual programs, busybox in effect merges many commands into a single program (called busybox). In /bin and elsewhere ls -l will reveal how individual commands link to that busybox program. ls -l /bin/whoami will typically be a symbolic link to busybox. In other *nix systems that instead would be a actual individual binary (executable) file.
So basically Ctrl-Alt-Fn will switch to other terminals, or into a running gui desktop, or to nothing if not that many tty's have been defined/configured.
*nix systems provide a very broad range of choices in many areas. Different choices of boot methods such as SysV, runit, systemD ...etc. that do their 'initialisation' different ways; A range of shells (command line commands) such as sh, bash, ash, dash, csh, zsh ...etc. All similar in some ways, but different in other ways. If for instance a system uses standard/basic sh then running a bash script on that may very well not work as intended, even though much of the syntax/content of the script may look very familiar to either someone who prefers sh or bash. Same for 'distros' ... all different, but similar in functionality. Way too much divergence some might say - as fundamentally a gui desktop is pretty much just a program launcher. Some might click a desktop icon to launch firefox, others might use a menu type layout, or a choice of either to launch firefox ... etc. If for instance a gui is running and you ctrl-alt-F2 and login as root and then run DISPLAY=:0 firefox ... then that equally might have firefox start within the gui desktop (i.e. started from the command line interface).