• 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工程好像不符合???

  • 相关阅读:
    网页加载进度条
    BFC
    Java — 基础语法
    Python — 多进程
    Python — 进程和线程
    Python — 面向对象进阶2
    Python — 面向对象编程基础
    Linnux 05
    Linnux 04
    Linnux 03
  • 原文地址:https://www.cnblogs.com/yanhc/p/2175243.html
Copyright © 2020-2023  润新知