logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

ARM嵌入式编译之循环操作(LOOP)优化

取决于循环的迭代次数,完成循环可能需要花费大量时间,此外,每次迭代时,需要判断循环条件是否成立,这一操作也会降低循环的性能。

文章图片
#c语言#arm开发#嵌入式
ARM嵌入式编译器控制诊断信息(warning/error)

ARM编译器以警告(warning)和错误(error)的形式来提供编译诊断信息,并且用户可以通过一些命令行选项,来控制这些warnings和errors的打开或者关闭。编译器会在程序编译和链接过程中将遇到的warnings和errors在控制终端打印出来,如果用户有多个源代码文件,当errors被发现时,编译器只会报告的诊断信息。

文章图片
#arm
ARM嵌入式编译器-volatile关键字对编译器优化的影响

智能的(进行优化的)编译器可能会把变量的值临时储存在寄存器上,便于下次读取,以节约时间,这个过程被称为高速缓存。但是有一些agent在内存上改变了变量的值,寄存器上的还是旧数据,这样就出错了。如果被volatile 关键字修饰,编译器不会进行高速缓存,直接去内存中读取该变量的数据。编译器会优化什么将内存变量缓存到寄存器中。调整指令顺序,充分利用CPU指令流水线,进行指令重新排序读写指令。

文章图片
#arm开发
Qt消息机制:事件分发和事件过滤

目录图形界面应用程序的消息处理模型Qt中的事件处理(1)在Qt中,事件被封装成一个个对象,所有的事件均继承自抽象类QEvent.(2)Qt平台将系统产生的消息转变成Qt事件(3) event()函数-事件分发(3)GUI应用程序的事件处理流程(4)事件(QEvent)和信号(SIGNAL)的不同图形界面应用程序的消息处理模型特点:基于操作系统才能运行GUI应用程序提供的功能必须由用户触发用户操作界

#c++
C/C++自动化编译工具Makefile的基本使用

本文主要为陈皓的《跟我一起写Makefile》读书笔记。一,前言笔者在初学C语言时使用的开发工具是VC++6.0,后来学习C++时,使用的是DEV-C++,再后来使用Visual Studio做软件开发。

使用Gitee用作图片床写博客(Picgo+typora+Gitee)

使用Gitee用作图片床写博客(Picgo+typora+Gitee):第一步:安装PicGo并在Typora中配置.第二步,在Gitee中创建图片仓库.在PicGo中配置Gitee图床

文章图片
#github#编辑器#git
ARMv8基础架构之内存屏障(Memory Barriers)

memory-barriers.txt « Documentation - kernel/git/torvalds/linux.git - Linux kernel source tree

文章图片
ARM架构Generic Interrupt Controller(GIC)详解之术语介绍

GIC的作用中断分组 interrupt grouping安全性扩展 Security Extensions中断处理模型 Models for handling interrupts虚假中断 Spurious interrupts中断复用 Banking。

文章图片
#arm#单片机#嵌入式硬件
ARM架构Generic Interrupt Controller(GIC)之Distributor和CPU interface功能介绍

GIC由Distributor和CPU interface两部分组成,如果支持虚拟化扩展,还有virtual CPU interface。本文主要介绍Distributor和CPU interface的基本功能。

文章图片
#架构#单片机#嵌入式硬件
ARMv8-A架构下的外部debug模型之外部调试事件(external debug events)概述

嵌入式交叉触发器(Embedded Cross Trigger,ECT)是Armv8- A系统中的外部调试器用于生成调试事件的一种机制。ECT还支持将调试事件从一个代理路由到系统中的另一个代理。外部调试器可以使用ECT来生成debug request或restart request。这些事件会触发处理器之间的路由事件。例如,这些事件可以将一个debug request 事件从一个处理器路由到其他处

文章图片
#架构
    共 123 条
  • 1
  • 2
  • 3
  • 13
  • 请选择