腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
ARM
-为什么gcc要为单个字符分配12个
字节
?
c
、
assembly
、
stack
、
arm
我有以下代码:{} 当我用
arm
-
linux
-gnueabihf-gcc -o align.txt -O0现在,我知道
ARM
EABI要求堆栈是8
字节
对齐
的,这就解释了gcc分配了比a所需的单
字节
更多的空间。然而,我原以为它会分配4个
字节
来为a和3个填充
字节
腾出空间。看起来它分配了4个
字节
来使推送的r7
对齐
,然后再分配8
浏览 2
提问于2015-12-10
得票数 1
1
回答
内存
对齐
与Cpu利用率
c
、
linux
、
arm
我有一个运行
Linux
的
ARM
平台,其中L1行是64
字节
长。 我决定用另一个malloc替换malloc (通过LD_PRELOAD),无论malloc的大小是多少,内存都必须是64
字节
对齐
的。
浏览 3
提问于2019-04-02
得票数 2
1
回答
OpenSSL FIPS模块Incore脚本签名界
openssl
、
fips
但是,当我交叉编译for
arm
(
linux
_armv4)并使用提供的incore脚本生成库指纹时,"FIPS_mode_set(1)“调用失败,指纹无效。FIPS_incore_fingerprint { my $p2 = $FIPS_text_end->{st_offset}-1; 当加载到
arm
浏览 0
提问于2018-03-15
得票数 0
3
回答
Linux
中的结构分配在
ARM
中失败,但在x86中成功
c
、
linux
、
arm
、
memory-alignment
、
sigbus
下面的代码在x86中工作,但我收到了
ARM
上的SIGBUS。在
ARM
中搜索SIGBUS,我发现这与内存
对齐
有关。 有人能解释一下发生了什么事吗?
浏览 4
提问于2013-10-01
得票数 4
回答已采纳
2
回答
为什么相同结构的尺寸在X86和
arm
中计算的结果与类似版本的gcc不同?
c
、
linux
、
gcc
、
arm
、
visual-c++
struct test char m1;}正如答案所说,
arm
linux
需要AAPCS定义的8
字节
对齐
,但是为什么x86中的VC6.0得到的结果是“16”?有
浏览 2
提问于2013-05-26
得票数 1
5
回答
在
ARM
程序集中将堆栈指针从4
字节
对齐
到8
字节
c
、
memory
、
arm
如果堆栈指针指向0x4 ,0x8,0x12和0x16等地址,那么我如何将堆栈指针
对齐
到8
字节
,这在
ARM
.As中是4
字节
对齐
的。因此,将堆栈指针
对齐
到8
字节
意味着它应该指向0x8、0x16、0x24和0x32等地址。 现在如何将4
字节
堆栈指针
对齐
到8
字节
对齐
指针?
浏览 1
提问于2013-11-19
得票数 2
2
回答
ARM
Linux
页面表布局
memory-management
、
linux-kernel
、
operating-system
、
arm
、
virtual-memory
我读过多篇关于这个主题的文章,包括下面的文章,但我仍然不太清楚:
ARM
硬件在L1转换表中有4
字节
的4096个条目。每个条目在内存中转换一个1MB的区域。但是在32位
ARM
linux
方面,这个部门是11-9-12。其中,L1转换表由2048个条目组成,每个条目为8个
字节
。在这里,两个4个
字节
的条目被合并在一起,并且在内存中一个一个地排列出指向的第二级转换表,这样在第二级而不是256个级别上就有512个条目。此外,由于
Linux
内存管理期望各种非本机标志
AR
浏览 0
提问于2016-07-13
得票数 3
回答已采纳
2
回答
未
对齐
的访问在
ARM
Cortex-M4上导致错误
c++
、
c
、
arm
、
memory-alignment
、
cortex-m
我有一个对象,其地址不是4
字节
对齐
的。当存在保存2个寄存器的STR指令时,这会在中央处理器中导致HardFault错误。2FCC R11 0 R5 20007630 R13 2000CB38 如图所示,STR指令的目标寄存器未在4
字节
上
对齐
如何让对象在4
字节
上
对齐
?有人有其他的解决方案吗?
浏览 5
提问于2013-08-16
得票数 9
回答已采纳
1
回答
具有自定义架构的
Linux
linux
、
gcc
、
glibc
、
qemu
不同尺寸(Int) 等等。
浏览 3
提问于2015-06-06
得票数 1
回答已采纳
1
回答
为什么-Wcast-align没有警告x86上从char*到int*的转换?
c
、
memory-alignment
、
gcc-warning
、
typecasting-operator
我知道gcc有一个选项-Wcast-align,每当投射指针时发出警告,以增加所需的目标
对齐
。下面是我的程序:int ptr = *((int *)data);为什么我得不到警告呢?
浏览 2
提问于2014-09-10
得票数 12
回答已采纳
1
回答
在铸造过程中更改对中要求
gcc
、
casting
、
arm
、
memory-alignment
我得到警告“强制转换增加需要
对齐
目标类型”,同时为
ARM
编译以下代码。char data[2] = "aa";我知道char的
对齐
要求是1
字节
,int的
对齐
要求是4
字节
,因此需要警告。我试图使用
对齐
属性来更改char的
对齐
方式。当
ARM
为错误
对齐
的访问生成硬件异常时,我希望确保不会出现
对齐
问题。有没有其他方法来编写这段代码,这
浏览 2
提问于2014-09-15
得票数 2
2
回答
平台之间的C枚举大小不匹配存在潜在危险
c
、
gcc
、
enums
、
arm
、
sizeof
我正在将net-snmp移植到
ARM
平台(ThreadX OS,而不是
linux
),这是从在
Linux
x86机器上进行编译开始的这种不匹配是否可能对内存分配造成严重破坏?在尝试将字符串写入内存时,程序崩溃。我如何强制枚举在
ARM
上也是4
字节
大? 我
浏览 2
提问于2016-08-26
得票数 3
1
回答
栈
对齐
与ISR
c
、
arm
、
interrupt-handling
、
cortex-m
如何确保ISR内部的堆栈
对齐
?
arm
C编译器在ISR中强制堆栈
对齐
吗?
ARM
编译器是修复了它还是坏了? 我提出这个问题的动机是,我在ISR中遇到了fprintf问题,我认为这可能是堆栈
对齐
问题。
浏览 18
提问于2022-01-09
得票数 0
回答已采纳
1
回答
如何解释数据类型大小及其
对齐
方式?
c
、
linux
、
types
、
memory-alignment
关于
linux
/gcc中double类型的大小/
对齐
,我有一个问题。在上,它写着: 例如: i
浏览 5
提问于2017-07-01
得票数 0
回答已采纳
3
回答
为什么没有使用32位
ARM
指令地址的2位LSB
arm
、
embedded
、
memory-alignment
、
instructions
我正在研究
ARM
指令体系结构,我读过指令是存储字
对齐
的,所以最不重要的两个指令地址在
ARM
状态下总是为零。拇指和拇指-2条指令有16位或32位长.指令被存储为半字
对齐
,所以最不重要的指令地址在拇指状态下总是为零。在我使用不同的微控制器(如AVR )访问程序内存的一些研究中,我使用最不重要的位来区分要访问的较高
字节
或较低
字节
。但那是关于数据内存访问的。在
ARM
中,指令无论如何是32位,因此应该一次获取所有
字节
。 那么,为什么最后两位要取一个特定
字
浏览 8
提问于2014-04-26
得票数 3
回答已采纳
1
回答
Java如何有效地解释大于一位
字节
的
字节
码常量?
java
、
jvm
、
vm-implementation
虽然所有的java
字节
代码都是1
字节
宽的,但在某些点上有可变大小的常量,可以从1
字节
到8
字节
不等。java如何以大于一个
字节
的操作数有效地获取这些指令,因为这种数据访问是不
对齐
的。最后,java虚拟机是如何在不支持非
对齐
数据访问(如
ARM
、Alpha)的平台上实现这一操作的?
浏览 3
提问于2014-06-03
得票数 0
回答已采纳
2
回答
对齐
Vs未
对齐
的澄清
assembly
我正在上一门嵌入式系统的入门课,我很难理解
对齐
内存和非
对齐
内存的概念。好的,这是我目前所理解的: Aligned用于指定汇编程序将使用的指令,所有数据都具有相同的长度。未
对齐
意味着数据未定义为任何特定长度。我为这个新手问题道歉。
浏览 1
提问于2013-03-25
得票数 3
回答已采纳
1
回答
GCC矢量扩展与
ARM
霓虹灯的内存
对齐
问题
c++
、
gcc
、
simd
、
memory-alignment
、
neon
使用gdb进行的检查总是显示,在所有这些崩溃情况下,至少有一个变量只对8
字节
,而不是16
字节
。然而,当我使用优化选项"-O2“编译时,这些崩溃的情况发生得更少。有没有gcc/g++编译器的选项,它总是保证GCC向量的16位
对齐
?既然"-O2“支持整束优化,那么有谁知道哪种特定的优化会导致总线错误的频率低得多呢?**argv) { CSimdNumericTest test; return 0;我把所有东西都编好了 <e
浏览 0
提问于2020-10-09
得票数 0
2
回答
为什么IAR
ARM
Cortex-M编译器不
对齐
8
字节
边界上的堆栈?
c
、
arm
、
embedded
、
callstack
、
abi
ARM
ABI说堆栈应该是8
字节
对齐
的,但是我看到堆栈只对4
字节
边界的情况。int volatile counter = 0; ++counter;}BX LR为什么会发生这种情况?这是否符合臂ABI?是否有任何编译
浏览 27
提问于2022-09-18
得票数 1
1
回答
arm
的
字节
对齐
数?
c
、
gcc
、
arm
、
alignment
我正在用gcc-
arm
-none-eabi在手臂皮质cpu上编程C。我知道这是4
字节
对齐
测试和谷歌。 但是,是否有任何宏或变量来定义它是多少
字节
对齐
?
浏览 1
提问于2016-05-30
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
结构体对齐,字节对齐
ARM 架构的Linux-Armbian Linux 23.02 发布
Python 字节码介绍 Linux 中国
ARM与嵌入式Linux的入门建议
谷歌 Linux 内核开发者使用 macOS 编译 ARM64 Linux 内核
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券