Kernelnewbies Digest, Vol 107, Issue 9

CRISTIAN ANDRES VARGAS GONZALEZ vargascristian at americana.edu.co
Thu Oct 10 09:42:06 EDT 2019


Thank you very much, I understand better, I will continue checking the
links that happened to me

regards
att cristian vargas


El mié., 9 oct. 2019 a las 11:00, <kernelnewbies-request at kernelnewbies.org>
escribió:

> Send Kernelnewbies mailing list submissions to
>         kernelnewbies at kernelnewbies.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> or, via email, send a message with subject or body 'help' to
>         kernelnewbies-request at kernelnewbies.org
>
> You can reach the person managing the list at
>         kernelnewbies-owner at kernelnewbies.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Kernelnewbies digest..."
>
>
> Today's Topics:
>
>    1. Re: Are there global constructors in the Linux kernel?
>       (Konstantin Andreev)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 09 Oct 2019 11:54:26 +0300
> From: Konstantin Andreev <andreev at swemel.ru>
> To: CRISTIAN ANDRES VARGAS GONZALEZ <vargascristian at americana.edu.co>,
>         kernelnewbies at kernelnewbies.org
> Subject: Re: Are there global constructors in the Linux kernel?
> Message-ID: <5D9DA042.2090205 at swemel.ru>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> Hi, Cristian. There are, a kinda of ...
>
> kernel/taskstats.c:
> | late_initcall(taskstats_init);
>
> kernel/rcu/update.c:
> | early_initcall(check_cpu_stall_init);
>
> There is a whole set of macros STAGE_initcall() in include/linux/init.h
>
> Arguments to these macros invokations are accounted and called by kernel
> initialization code at strictly defined stages of initialization. See
> https://0xax.gitbooks.io/linux-insides/content/Concepts/linux-cpu-3.html
>
> The only thing that is run before kernel is <a series of>
> platform-specific boot loaders, maybe under hypervisor control. Compiler
> has no power to insert something in between.
>
> Regards, Konstantin.
>
> CRISTIAN ANDRES VARGAS GONZALEZ, 09 Oct 2019 06:44 MSK:
> >
> > Good day
> >
> >   I have been doing a little kernel following some repositories of
> GitHub, videos and wikis, and I have found a topic that leaves me with
> doubts, the theme is the global constructors.
> >
> > Suppose I write a program in c, for the user space, for my code to run I
> must have the main function
> > int main() { /*Code*/}
> >
> > The gcc compiler searches for this function to run my program, but
> before that happens, I can use the global constructors and write a code
> that runs before the main function, but in the case of writing a kernel,
> why do I need to run lines of code before the kernel is executed ?, I
> understand that when writing a kernel there is no main function and that it
> is disabled to indicate it to the compiler. In the Linux kernel are there
> global constructors? If so, what things are executed before starting the
> kernel?
> > att: cristian vargas.
>
>
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>
> ------------------------------
>
> End of Kernelnewbies Digest, Vol 107, Issue 9
> *********************************************
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20191010/6e11ac66/attachment.html>


More information about the Kernelnewbies mailing list