• Startup routine


    When a C program is executed by the kernelby one of the exec functions, which we describe inSection 8.10.a special start-up routine is called before the main function is called. The executable program file specifies this routine as the starting address for the program; this is set up by the link editor when it is invoked by the C compiler. This start-up routine takes values from the kernel, the command-line arguments and the environmentand sets things up so that the main function is called as shown earlier.

    Because C has no concept of "plug in". So if you want to use, say, malloc() someone has to initialize the necessary data structures. The C programmers were lazy and didn't want to have to write code like this all the time:

    main() {
        initialize_malloc
    ();
        initialize_stdio
    ();
        initialize_
    ...();
        initialize_
    ...();
        initialize_
    ...();
        initialize_
    ...();
        initialize_
    ...();

        
    ... oh wow, can we start already? ...
    }

    So the C compiler figures out what needs to be done, generates the necessary code and sets up everything so you can start with your code right away.

  • 相关阅读:
    mysql导出某张表的部分数据
    linux命令行实用快捷键
    mysql导出数据库某些表的数据
    二进制日志过期时间设置expire_logs_days
    进程信息
    安装mysql-workbench
    create user
    系统io统计
    mysqldump与mydumper
    系统负载监控
  • 原文地址:https://www.cnblogs.com/beanmoon/p/2735582.html
Copyright © 2020-2023  润新知