zoukankan      html  css  js  c++  java
  • 【转载】Keil中的USE MicroLib说明

    在keil建立ARM的工程时

    其中有一项是选 use MicroLIB

     UseMicroLib

    由于对KEIL不是很熟悉,于是就查了查,得到了以下信息:

    microlib 是缺省 C 库的备选库。 它旨在与需要装入到极少量内存中的深层嵌入式应用程序配合使用。 这些应用程序不在操作系统中运行。

    microlib 进行了高度优化以使代码变得很小。 它的功能比缺省 C 库少,并且根本不具备某些 ISO C 特性。 某些库函数的运行速度也比较慢,例如,memcpy()

    与缺省 C 库之间的差异

    microlib 与缺省 C 库之间的主要差异是:

    • microlib 不符合 ISO C 库标准。 不支持某些 ISO 特性,并且其他特性具有的功能也较少。

    • microlib 不符合 IEEE 754 二进制浮点算法标准。

    • microlib 进行了高度优化以使代码变得很小。

    • 无法对区域设置进行配置。 缺省 C 区域设置是唯一可用的区域设置。

    • 不能将 main() 声明为使用参数,并且不能返回内容。

    • 不支持 stdio,但未缓冲的 stdinstdoutstderr 除外。

    • microlib 对 C99 函数提供有限的支持。

    • microlib 不支持操作系统函数。

    • microlib 不支持与位置无关的代码。

    • microlib 不提供互斥锁来防止非线程安全的代码。

    • microlib 不支持宽字符或多字节字符串。

    • 与 stdlib 不同,microlib 不支持可选择的单或双区内存模型。 microlib 只提供双区内存模型,即单独的堆栈和堆区。

    • 可以合理地将 microlib 与 --fpmode=std--fpmode=fast 配合使用。

    microlib 中的函数负责:

    • 创建一个可在其中执行 C 程序的环境。 这包括:

      • 创建一个堆栈

      • 创建一个堆(如果需要)

      • 初始化程序所用的库的部分组成内容。

    • 调用 main() 以开始执行程序。

    要使用 microlib 构建程序,必须使用命令行选项 :library_type=microlib。 根据需要,编译器、汇编程序或链接器可使用此选项处理不同的文件。 将此选项与链接器配合使用时,将覆盖所有其他选项。

    转自:http://blog.sina.com.cn/s/blog_7142d7da01013gub.html

  • 相关阅读:
    laravel-excel maatwebsite/excel 新版中文文档
    laravel-excel.com官网英文站
    composer查看镜像地址
    Navicat Premium 通过ssh 连接服务器
    Centos7 yum 出现could not retrieve mirrorlist 最终解决方案
    php 获取随机字符串算法
    apache 配置多域名访问的方法
    laravel 配置多域名最简单的方法
    es6知识点
    如何判断浏览器为ie10以上
  • 原文地址:https://www.cnblogs.com/zyqgold/p/6114637.html
Copyright © 2011-2022 走看看