草庐IT

armed_at

全部标签

linux - at&t汇编中的 'push'和 'pushq'有什么区别

我最近开始寻求更深入地了解我的计算机的工作原理。我的问题是关于push和pushq之间的区别。我知道push向堆栈写入一个值,我的假设是pushq做类似的事情。q在那里的事实让我认为应该存在细微的差异,但我似乎无法理解差异。我声明在使用gdb和命令“layoutasm”调试文件/lib/udev/iphone-set-info时思考这个问题。有问题的代码是:pushq$0x0push%r9我知道$0x0是NULL的十六进制,而%r9是通用寄存器之一。这是否仅仅意味着将Nullus写入堆栈并在其上方写入寄存器%r9? 最佳答案 我不确

linux - at&t汇编中的 'push'和 'pushq'有什么区别

我最近开始寻求更深入地了解我的计算机的工作原理。我的问题是关于push和pushq之间的区别。我知道push向堆栈写入一个值,我的假设是pushq做类似的事情。q在那里的事实让我认为应该存在细微的差异,但我似乎无法理解差异。我声明在使用gdb和命令“layoutasm”调试文件/lib/udev/iphone-set-info时思考这个问题。有问题的代码是:pushq$0x0push%r9我知道$0x0是NULL的十六进制,而%r9是通用寄存器之一。这是否仅仅意味着将Nullus写入堆栈并在其上方写入寄存器%r9? 最佳答案 我不确

android - arm-linux-androideabi编译器使用方法

我想知道如何使用arm-linux-androideabi编译器。该编译器在android-ndk工具上。android-ndk工具上有ndk-build工具。要编译ethercat堆栈,我只需要arm-linux-androideabi编译器。但是,我看到了这条消息。root@ubuntu:/opt/android/android-ndk-r9c/jni#arm-linux-androideabi-gcc-otesttest.c/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linu

android - arm-linux-androideabi编译器使用方法

我想知道如何使用arm-linux-androideabi编译器。该编译器在android-ndk工具上。android-ndk工具上有ndk-build工具。要编译ethercat堆栈,我只需要arm-linux-androideabi编译器。但是,我看到了这条消息。root@ubuntu:/opt/android/android-ndk-r9c/jni#arm-linux-androideabi-gcc-otesttest.c/opt/android/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linu

EC20/25 4G模块AT指令开发总结

一.EC20/254G模块简介二.AT指令总结1.通用AT指令2.建立TCP/UDP连接相关AT指令三.TCP传输数据流程四.UDP传输数据流程五.总结一.EC25/204G模块简介EC25/20是一系列带分集接收功能的LTE-FDD/LTE-TDD/WCDMA/GSM无线通信模块。1.供电:VBAT供电电压范围:3.3V~4.3V典型供电电压:3.8V2.网络协议特性:支持TCP/UDP/PPP/FTP/FTPS/HTTP/HTTPS/NTP/PING/QMI/NITZ/SMTP/SSL/MQTT/CMUX/SMTPS/MMS*/FILE*协议支持PAP(PasswordAuthentica

elasticsearch-7.11.2集群报错java.io.CharConversionException: Invalid UTF-8 start byte 0xbc (at char #757

目录elasticsearch版本:7.11.2问题:集群启动后,报错原因分析:解决方案:elasticsearch版本:7.11.2问题:集群启动后,报错 PleaseuseanewerversionofJavaorsetMaxDirectMemorySizeexplicitly.Exceptioninthread"main"2022-11-1621:43:33,252mainERRORNoLog4j2configurationfilefound.Usingdefaultconfiguration(loggingonlyerrorstotheconsole),oruserprogrammat

c - 为什么在编译 Linux 内核和 uBoot 时使用 arm-linux-gnueabi-gcc 而不是 arm-none-eabi-gcc?

我在为ARMcortex-m设备以及Linux内核、uBoot和BeagleboneBlack(BBB)的应用程序编译裸机代码方面有一些经验(更多功能的ARM和MMU,适合那些生活在岩石下的人)。对我来说,应该使用arm-none-eabi-gcc编译cortex-m代码(因为没有操作系统)并且BBB的应用程序代码应该使用arm-linux-gnueabi-gcc编译(因为有是一个操作系统,可以对其进行系统调用,并可以使用程序加载器和共享对象。我不明白的是为什么uBoot和内核也应该用arm-linux-gnueabi-gcc编译。在我看来,uBoot至少是一个裸机程序,没有花哨的操作

c - 为什么在编译 Linux 内核和 uBoot 时使用 arm-linux-gnueabi-gcc 而不是 arm-none-eabi-gcc?

我在为ARMcortex-m设备以及Linux内核、uBoot和BeagleboneBlack(BBB)的应用程序编译裸机代码方面有一些经验(更多功能的ARM和MMU,适合那些生活在岩石下的人)。对我来说,应该使用arm-none-eabi-gcc编译cortex-m代码(因为没有操作系统)并且BBB的应用程序代码应该使用arm-linux-gnueabi-gcc编译(因为有是一个操作系统,可以对其进行系统调用,并可以使用程序加载器和共享对象。我不明白的是为什么uBoot和内核也应该用arm-linux-gnueabi-gcc编译。在我看来,uBoot至少是一个裸机程序,没有花哨的操作

linux - ARM汇编 "retne"指令

我目前正在了解Linux内核启动需要什么。我正在浏览Linux内核源代码树,特别是ARM架构,直到我在arch/arm/kernel/hyp-stub.S中偶然发现这条汇编指令retnelr从概念上讲,很容易理解,如果Z标志为0,则指令应该返回存储在链接寄存器中的地址。我正在寻找的是实际记录此ARM汇编指令的位置。我在ARMArchitectureReferenceManualARMv7-AandARMv7-Redition中搜索sectionA8.8找不到指令的描述。Grep源并查看它是否是ARMspecificGNUASextension没有发现任何特别的东西。谷歌搜索查询“arm

linux - ARM汇编 "retne"指令

我目前正在了解Linux内核启动需要什么。我正在浏览Linux内核源代码树,特别是ARM架构,直到我在arch/arm/kernel/hyp-stub.S中偶然发现这条汇编指令retnelr从概念上讲,很容易理解,如果Z标志为0,则指令应该返回存储在链接寄存器中的地址。我正在寻找的是实际记录此ARM汇编指令的位置。我在ARMArchitectureReferenceManualARMv7-AandARMv7-Redition中搜索sectionA8.8找不到指令的描述。Grep源并查看它是否是ARMspecificGNUASextension没有发现任何特别的东西。谷歌搜索查询“arm