zoukankan      html  css  js  c++  java
  • 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.

  • 相关阅读:
    java 环境变量配置
    框架分成介绍
    Net 新特性
    一 设计模式六大原则
    web api 配置
    Visual Studio检查内存泄露方法
    深度比较对象的不同
    reportview 安装使用
    Nuget 常用命令
    freeswitch学习笔记
  • 原文地址:https://www.cnblogs.com/beanmoon/p/2735582.html
Copyright © 2011-2022 走看看