zoukankan      html  css  js  c++  java
  • 《嵌入式软件设计基础——基于ARM Cortex—M3》读书笔记

    此书有点深,记录点自己能够看懂的。
    1、内存管理一章:讲到变量的类型、生存周期、内存分配。
    auto static register 局部变量,全局变量
    malloc free
    内存碎片,消除内存池的一个常见的策略是可以使用分配池
    2、共享内存一章:讲到如何编写可重入函数,很多库函数都是设计为可重入函数的,函数体内不能有全局变量和静态变量,有的参数可以通过指针(或二级指针)实现。
    const类型限定符,使用方法有以下几种:
    const int p;
    const int p;
    int
    const p;
    const int* const p;
    volatile类型限定符,附加到对象当中,可以指示其值可以由某些机制异步修改。提醒编译器不能优化,比如一个内存映射的IO口设备状态端口的改变,或者直接由内存访问或中断例程进行的内存数据的修改。然而,将限定符增加到其声明中不会消除临界区问题。
    使用方法有:
    #define SHARED_MEMORY volatile
    extern SHARED_MEMORY long shared;
    volatile long *pv;
    volatile long * const pv = initial-value;
    const volatile long * const pv = initial-value;

  • 相关阅读:
    Eclipse中的Web项目自动部署到Tomcat
    Linux之grep命令
    Linux之sort
    Python 字典中一键对应多个值
    手动下载python更新后 换回以前版本
    N个降序数组,找到最大的K个数
    蓄水池抽样算法
    空瓶子换水问题
    rand()产生随机数 及其和clock()的不同
    C++复数运算 重载
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12007427.html
Copyright © 2011-2022 走看看