• WINCE config.bib文件中的FSRAMPERCENT的意义


    在BSP/files文件夹下面关于FSRAMPERCENT的内容如下:

    CONFIG

        …………………

    FSRAMPERCENT=0x80808080

    下面我们来看看上面表达式的意义

    FSRAMPERCENT:

    格式:FSRAMPERCENT = number

      默认值为0x80808080。指定为存储内存和程序内存在整个可用内存(除去nk.nb0占用的RAM之外的可用内存)的百分比。number分为四个字节,由十六进制表示。

     

    byte0的值(单位为4KB)表示在第一个2MB中,其中每1MB包含的4KB的整数倍。

    byte1的值(单位为4KB)表示在第二个2MB中,其中每1MB包含的4KB的整数倍。

    byte2的值(单位为4KB)表示在第三个2MB中,其中每1MB包含的4KB的整数倍。

    byte3的值(单位为4KB)表示在剩下的内存中,每1MB包含的4KB的整数倍。

     

      计算一下默认值0x80808080表示的百分比:0x80*4K/1M = 0.5,因为每个字节都等于0.5,所以整个占用的百分比是50%。

     

    我们的NK.bin=16871KB,SDRAM的大小是128M(=131072KB),在FSRAMPERCENT=0x80808080时,WINCE的control panel -> system -> memory分配和占用情况如下:

     

     WINCE config.bib文件中的FSRAMPERCENT的意义 - 男儿当自强 - 男儿当自强的博客

    从上图的可以知道,分配存储内存(storage memory)大小是55632KB,分配程序内存(program memory)的大小是55636KB,根据上面的计算公式应该是存储内存和程序内存的大小都应该是55634才对啊?难道和字对齐有关吗?在此不甚明白,望知道的朋友可以告知,谢谢!

     

    我们的系统的SDRAM的大小是128M(=131072KB),而存储内存+程序内存=55632KB+55638KB=111268KB,那么说明NK.bin(在此大小为16871KB)对应的NK.nb0的大小=131072KB-111268KB=19804KB。

     

    当改为FSRAMPERCENT=0x40404040时,WINCE的control panel -> system -> memory分配和占用情况如下:

     

    WINCE config.bib文件中的FSRAMPERCENT的意义 - 男儿当自强 - 男儿当自强的博客

    说明改变FSRAMPERCENT的值就可以改变存储内存和程序内存的分配情况,但是存储内存+程序内存的和是不会改变的,这两者的和是和NK的大小相关的,如果NK的大小越大,那么存储内存+程序内存的和就越小。假如config.bib中没有FSRAMPERCENT的上面相关的表达式,WINCE系统就会默认为FSRAMPERCENT=0x80808080的情况。

     

  • 相关阅读:
    利用XAF中的FeatureCenter例子的,直接打开DetailView
    XAF 应用程序模型基础[转]
    XAF 如何给記錄增加版本控制?
    Simpler way to Create a Custom User Control
    建议将小川同志免费租借给欧洲用30年[转]文/端宏斌
    第六集 MSF构思阶段项目团队的组建
    MS_HotFix
    C#域内远程机文件信息注册表访问。
    访问 远程机 盘符 设置
    Silk_ 运行时_控件_属性_捕捉.
  • 原文地址:https://www.cnblogs.com/LoongEmbedded/p/5298875.html
Copyright © 2020-2023  润新知