Questions tagged «arm»

在许多嵌入式应用程序,网络和其他设备以及几乎所有智能手机中使用的一系列处理器体系结构。

4
/ proc / cpuinfo中的标志是什么意思?
如何判断我的处理器是否具有特定功能?(64位指令集,硬件辅助虚拟化,密码加速器等),我知道文件中/proc/cpuinfo包含此信息flags,但是所有这些密码缩写是什么意思? 例如,从给出的以下摘录中/proc/cpuinfo,我是否有64位CPU?我有硬件虚拟化吗? model name : Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz … flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts …
212 linux  cpu  arm  x86 

6
我的Linux ARM是32位还是64位?
我知道我可以在intel下查看结果,uname -m以了解我的操作系统是32位还是64位,但是在ARM下,这样做可以: armv7l 我从 file /usr/bin/ls 我使用的是32位操作系统,但是如何以更简单的方式知道这一点?
60 arm  64bit  32bit 

3
将Linux移植到另一个平台要求
我知道Linux可用并且已经移植到许多不同的平台,例如X86,ARM,PowerPC等。 但是,在移植方面,究竟需要什么? 我的理解是Linux是用C语言编写的软件。因此,例如,当最初将Linux从X86移植到ARM或其他操作系统时,不仅仅是针对特定目标体系结构用编译器重新编译代码吗? 撇开用于不同外围设备的设备驱动程序,将Linux移植到新架构时还需要做其他事情。编译器会不会为我们处理所有事情?

5
如何从用户空间将/ dev / fb0用作控制台,或向其输出文本
因此,我有一个启用了开发人员模式的Palm Pre(原始P100EWW)模型,并安装了Debian Squeeze chroot。效果很好。我已经计划将其用于任何东西(bittorrent对等方,Web服务器),而不是电话。 我注意到,如果这样做,cat /dev/urandom > /dev/fb0它实际上会将随机像素写入屏幕,直到产生No space left on device错误为止。太好了,现在我可以使用显示器了。 因此,有什么样的工具可以使用:A)让我使用/ dev / fb0作为控制台,我可以将文本输出到其中;或者B)从命令行在/ dev / fb0上呈现文本。 我还不知道为此重新编译内核(我很想最终将WebOS完全剥离,并将其转变为最小的ARM服务器),所以我要的是用户空间工具(如果存在)。也希望直接渲染到/ dev / fb0而不使用X。

1
如何在基于ARM的系统上测试RAM的数据损坏?
我有一个嵌入式设备。它基于ARM,具有Linux 2.6.31,并具有256 MB RAM。 我想了解一些什么/最有效的方法来测试设备RAM的数据损坏。是否有某人可以建议的测试/软件? 注意: 我现在有个中期。我是从Ulrich Dangel(如下)的建议中得到的。 我现在也已经mtest从uboot进行了设置。 我可以使用其他测试/方法吗?
20 linux  boot  memory  arm 

2
是否可以使用正在运行的内核的/ sys获取设备树的信息?
通常对于手臂系统,设备树将硬件信息提供给内核(Linux)。这些设备树作为dts(设备树源)文件存在,这些文件已编译并加载到内核中。问题是我无权访问此类dts文件,甚至无法访问dtb文件。 我有机会获得/sys和/proc机器,我想问问,让我来“猜测正确的价值观”在DTS中使用? 如果这个问题的答案还取决于是否首先使用了设备树接口(即a dtb已创建并提供给内核),而不是更多的黑客攻击,那么潜在的答案可能会进一步突出方面。并修补内核,以便仅针对我们的内核“解决方案”解决设备信息问题?

5
列出Linux中ARM计算机的所有组件?
我有一台基于ARM的计算机,在运行Ubuntu Linux(非GU​​I)时似乎可以正常工作。如何获得此计算机上所有组件的列表?例如以太网芯片,Wifi芯片,蓝牙,CPU,电源管理芯片等类型。
18 debian  hardware  arm 

2
fstab安装等待网络
我尝试在系统引导后挂载CIF设备。 但是系统会在网络建立之前尝试挂载系统,因此它会失败。 登录系统后,我可以使用以下方法挂载它: sudo mount -a 如何告诉我的Arch(手臂)等待网络可用? 编辑: 我用systemd

3
为什么内核不能运行init?
我已经在此页面上下载了Raspbian图像。我正在尝试编译可用于在qemu中引导映像的内核。 我从kernel.org下载了Linux内核源代码并运行: make versatile_defconfig make menuconfig 然后,我向内核添加了以下功能: PCI支持(CONFIG_PCI) SCSI设备支持(CONFIG_SCSI) SCSI磁盘支持(CONFIG_BLK_DEV_SD) SYM53C8XX版本2 SCSI支持(CONFIG_SCSI_SYM53C8XX_2) 扩展3(ext3)文件系统(CONFIG_EXT3_FS) 扩展4(ext4)文件系统(CONFIG_EXT4_FS) 我还循环挂载了磁盘映像,并: 注释掉 /etc/ld.so.preload 调整/etc/fstab使用/dev/sda1和/dev/sda2 然后,我卸载映像并尝试使用以下方法启动计算机: qemu-system-arm \ -M versatilepb \ -m 256 \ -kernel linux-4.3/arch/arm/boot/zImage \ -hda 2015-09-24-raspbian-jessie.img \ -serial stdio \ -append "root=/dev/sda2 rootfstype=ext4 rw console=ttyAMA0" 内核能够挂载文件系统,但立即遇到了一些麻烦: Kernel panic - not syncing: Attempted to kill …
14 linux-kernel  arm  qemu  init 

2
在Linux的四核处理器上禁用cpu核
我想禁用3个CPU内核,并在单个内核上运行我的处理器。我使用了命令:maxcpus=1。但是之后我执行了这个命令ls /sys/devices/system/cpu。它仍然显示cpu0,cpu1,cpu2,cpu3。 我也尝试过:echo 0 > /sys/devices/system/cpu3/online但出现以下错误:no such file or directory。
14 linux  cpu  arm 

1
为我的ARM SoC交叉编译GLIBC
我看到在chroot版本的Debian armel环境中确实有些奇怪。 但是首先,要有一些背景知识……虽然很长,但是问题很复杂,任何潜在的帮助都取决于了解全文。 我有一个运行Linux的嵌入式ARM SoC,更具体地说,armel是2.6.17内核上的Debian Lenny。Debian发行版本身可以很容易地升级到更高版本(sudo apt-get dist-upgrade),因此可以加快速度,达到甚至的armel版本 。squeezewheezy 问题在于内核是自定义内核...有问题的ARM SoC并不是主线内核的一部分,因此在2.6.17时已被废弃。 如果您知道Linux和GLIBC是如何工作的,那么您已经可以看到问题-使用最低支持的内核版本来编译GLIBC版本...已经超过2.6.17。因此,如果我们尝试将chroot压缩为Debian ... $ # From inside the little ARM machine running Debian Lenny $ sudo debootstrap --arch armel squeeze /squeeze \ http://ftp.whateverCountry.debian.org/debian $ sudo -i # mount -t proc none /squeeze/proc # mount -t sysfs none /squeeze/sys # mount …

1
如何交叉编译Chromium for ARM?
目标 我需要在mini210s运行Linux 3.0.8 armv7l的 FriendlyARM 上安装Chromium 环境 Ubuntu Precise64的无家可归盒 depot_tools按照以下准则进行安装获得代码和 Linux Chromium ARM 工具链depot_tools 得到后depot_tools: vagrant@vagrant:~/depot_tools$ fetch chromium 环境变量 export GYP_CROSSCOMPILE=1 export GYP_DEFINES="target_arch=arm arm_float_abi=hard" 依存关系 vagrant@vagrant:~/depot_tools/src$ ./chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py --arch=arm Installing Debian Wheezy arm root image: /home/vagrant/depot_tools/src/chrome/installer/linux/debian_wheezy_arm-sysroot Downloading http://storage.googleapis.com/chrome-linux-sysroot/toolchain/285950/debian_wheezy_arm_sysroot.tgz build/install-build-deps.sh --arm build/install-build-deps-android.sh gclient sync 编译 build/gyp_chromium -Goutput_dir=out_arm ninja -C out_arm/Debug chrome 失误 …

2
在armv7上运行X86二进制文件
我正在尝试在Raspberry Pi2上运行SNBC USB打印机。 为此,我需要将SNBC USB打印机的过滤器二进制文件复制到/usr/lib/cups/filter。但是过滤器二进制文件是使用x86处理器编译的(制造商对支持arm没有兴趣)在我使用的地方armv7。我知道这不会奏效,但出于好奇,我尝试过,杯子说/usr/lib/cups/filter/rasterorp3150 failed。 我在互联网上寻找解决方案,人们建议使用Qemu。但这是一个完整的x86武装平台。有没有一种方法可以轻松简便地将x86二进制文件转换为arm二进制文件? 顺便说一句,使用hexedit工具将x86二进制文件转换为等效armv7二进制文件是个好主意吗?(opcode转换) 如果是这样,任何人都可以提出一些想法吗?
11 arm  qemu  x86 

2
如何禁用处理器的L1和L2缓存?
是否可以在Ubuntu 14.04上禁用L1和/或L2缓存(最好使用Python之类的高级语言)?如果是这样,怎么办? 另外,禁用缓存是否会在不同体系结构之间显着不同?如果是这样,我对ARM Cortex-A15更感兴趣。 编辑 在研究如何禁用缓存时,我确实从kernel.org文档中找到了/ proc / sys / vm /中的“ drop_caches”文件。 “这样做会导致内核丢弃干净的缓存,以及可回收的平板对象(如dentries和inode)。一旦删除,它们的内存就会释放。” ... “此文件不是控制各种内核高速缓存(inodes,dentries,页面高速缓存等)增长的方式。当系统上其他地方需要内存时,内核会自动回收这些对象。” 这似乎不像我正在寻找的那样,因为这不仅不似乎会禁用缓存,而且我认为虚拟内存位于操作系统内,而不位于硬件上。我的目标是禁用缓存,因此必须在其他地方(例如RAM内)寻找所需的内存。 编辑 澄清一下,我了解禁用缓存会对系统造成什么影响。但是,这是在太空应用中提高安全性关键应用可靠性的一种常用技术。以下是一些记录此现象的资源: 通过高速缓存减少嵌入式软件辐射引起的故障 在空间辐射环境中对微处理器进行地面辐射测试的指南 甚至有关于该主题的书籍: 电子中的电离辐射效应:从记忆到成像仪
10 linux  ubuntu  python  arm  cache 

1
如何为Beagleboard构建从头开始的Cross Linux从头开始的GCC交叉编译器(CLFS)?
目前,我尝试按照Scratch的Cross Linux的说明从头开始构建嵌入式Linux 。 一切正常,直到我尝试编译GCC交叉编译器。我想为Beagleboard-xM构建Linux。因此,我选择了以下设置: export CLFS_ABI="aapcs-linux" export CLFS_HOST="x86_64-cross-linux-gnu" export CLFS_TARGET="armv7a-unknown-linux-uclibceabi" export CLFS_ARCH="arm" export CLFS_ENDIAN="little" export CLFS_ARM_ARCH="armv7" export CLFS_ARM_MODE="arm" export CLFS_FLOAT="hard" export CLFS_FPU="neon" 否,一旦我尝试运行此页面上的说明,该命令就会make all-gcc all-target-libgcc出错。 checking for armv7a-unknown-linux-uclibceabi-gcc... /mnt/clfs/sources/gcc-build/./gcc/xgcc -B/mnt/clfs/sources/gcc-build/./gcc/ -B/mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/bin/ -B/mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/lib/ -isystem /mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/include -isystem /mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/sys-include checking for suffix of object files... configure: error: in `/mnt/clfs/sources/gcc-build/armv7a-unknown-linux-uclibceabi/libgcc': configure: error: cannot compute …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.