In a kernel, what are "global constructors"?
The link you provided has a clear definition:


  This tutorial discusses how to correctly invoke global constructors, such as those on global C++ objects. These are supposed to have run before your main function, which is why the program entry point is normally a function called _start.


In most OSs, there is a step where the process' memory is filled with its initial values.  For C code, that is typically sufficient.  However, sometimes you want to execute some code before main(), which is your official entry point.  For example, in C++, you need to be able to call the constructor of all global objects before main() is invoked.

To resolve this, and any other run-time activities which must be done before main(), each system provides some way to execute a function before main.  The article mentions that some treat it as a simple array of function pointers, but some compilers will obscure it and hide it.

The key takeaway is that these are handled before the entry point of your program.