• ADS中Image$$RO$$Limit的计算


    程序的源码如下:

    输出的Image Symbol Table内容如下:

        Global Symbols

        Symbol Name                              Value     Ov Type        Size  Object(Section)

        BuildAttributes$$ARM_ISAv4$M$PE$A:L22$X:L11$S22$~IW$~STKCKD$~SHL$OSPACE 0x00000000   Number         0  anon$$obj.o ABSOLUTE
        Image$$RO$$Base                          0x00000000   Number         0  anon$$obj.o ABSOLUTE
        Image$$RO$$Limit                         0x00000024   Number         0  anon$$obj.o ABSOLUTE
        Image$$RW$$Base                          0x00000024   Number         0  anon$$obj.o ABSOLUTE
        Image$$ZI$$Base                          0x0000002c   Number         0  anon$$obj.o ABSOLUTE
        Image$$ZI$$Limit                         0x0000002c   Number         0  anon$$obj.o ABSOLUTE

    各部分的大小:

          Code    RO Data    RW Data    ZI Data      Debug  

            36          0          8          0        236   Grand Totals

    ================================================================================

        Total RO  Size(Code + RO Data)                   36 (   0.04kB)
        Total RW  Size(RW Data + ZI Data)                 8 (   0.01kB)
        Total ROM Size(Code + RO Data + RW Data)         44 (   0.04kB)

    ================================================================================

    image中的分布为

    ZI

    RW

    RO

    RO base = 0

    RO limit = RO base + RO size + 1 = 0 + 0x24 - 1 + 1 = 0x24(RO部分后面一个字节的地址)

    RW base = RO limit

    ZI base = RW base + RW size = 0x24 + 8 - 1 + 1 = 0x2c

    由于没有ZI,所以ZI limit = ZI base

    这个工程似乎一切都与预料符合,但boot270工程好像不符合???

  • 相关阅读:
    逻辑学的基本运算
    第一性原理:First principle thinking是什么?
    人类认识的基本技能
    编程的本质:简化+抽象+再现
    区块链
    信号、系统、传递、树
    MVVM
    数据驱动 状态驱动
    事件与状态机 事件驱动编程
    数据一致性举例:登录系统
  • 原文地址:https://www.cnblogs.com/yanhc/p/2175243.html
Copyright © 2020-2023  润新知