标签: arm

/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 rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority
Run Code Online (Sandbox Code Playgroud)

linux cpu arm x86

242
推荐指数
4
解决办法
16万
查看次数

我的 linux ARM 是 32 位还是 64 位?

在英特尔下,我知道我可以查看结果uname -m以了解我的操作系统是 32 位还是 64 位,但在 ARM 下,这给出了:

armv7l
Run Code Online (Sandbox Code Playgroud)

我从

file /usr/bin/ls
Run Code Online (Sandbox Code Playgroud)

我在 32 位操作系统上,但我如何以更简单的方式知道这一点?

64bit arm 32bit

91
推荐指数
4
解决办法
21万
查看次数

是否可以使用正在运行的内核的 /sys 获取设备树的信息?

通常对于 arm 系统,设备树向内核 (Linux) 提供硬件信息。这些设备树作为编译并加载到内核的 dts(设备树源)文件存在。问题是我无权访问这样的dts文件,甚至无法访问dtb文件。

我可以访问/sys/proc在机器上,我想问一下这是否允许我“猜测正确的值”以在 dts 中使用?

如果这个问题的答案还取决于是否首先使用了设备树接口(即 adtb被创建并提供给内核),而不是一些更多的黑客攻击,那么潜在的答案也可以突出另一个方面“我们只是从 vanilla 转移并修补内核以解决我们内核的设备信息问题“-解决方案?

linux arm linux-kernel device-tree reverse-engineering

37
推荐指数
2
解决办法
6万
查看次数

如何使用 /dev/fb0 作为用户空间的控制台,或向其输出文本

所以我有一个 Palm Pre(原始 P100EWW)模型,我启用了开发者模式,并安装了 Debian Squeeze chroot。效果很好。我计划将它用于任何东西(bittorrent 对等点、网络服务器),但电话除外。

我注意到如果我这样做,cat /dev/urandom > /dev/fb0它实际上会将随机像素写入屏幕,直到产生No space left on device错误为止。太棒了,现在我可以使用显示器了。

那么有哪些实用程序可以 A) 让我使用 /dev/fb0 作为控制台,我可以将文本输出到或 B) 从命令行在 /dev/fb0 上呈现文本。

我还不知道要为此重新编译内核(我很想最终完全剥离 WebOS 并将其变成一个最小的 ARM 服务器),因此我要问的是用户空间工具(如果存在)。也更愿意直接渲染到 /dev/fb0 而不是使用 X。

linux command-line arm framebuffer

29
推荐指数
3
解决办法
8万
查看次数

将 Linux 移植到另一个平台要求

我知道 Linux 是可用的,并且已被移植到许多不同的平台,例如 X86、ARM、PowerPC 等。

但是,在移植方面,究竟需要什么?

我的理解是Linux是用C语言写的软件,所以把Linux原本从X86移植到ARM或者其他的时候,不就是为了特定的目标架构用编译器重新编译代码吗?

撇开不同外设的设备驱动程序不谈,在将 Linux 移植到新架构时还需要做什么。编译器不会为我们处理一切吗?

linux compiling arm x86 portability

28
推荐指数
2
解决办法
3232
查看次数

如何在基于 ARM 的系统上测试 RAM 的数据损坏情况?

我有一个嵌入式设备。它基于 ARM,使用 Linux 2.6.31 和 256 MB RAM。

我想就什么是测试设备 RAM 数据损坏的最有效方法获得一些想法/提示。有人可以建议测试/软件吗?

笔记:

我现在有 memtester。我是在 Ulrich Dangel(下图)的建议下得到的。

我现在也mtest从uboot设置了。

我可以使用任何其他测试/方法吗?

linux boot memory arm

22
推荐指数
2
解决办法
3万
查看次数

在 Linux 中列出 ARM 计算机的所有组件?

我有一台基于 ARM 的计算机,它似乎可以正常运行 Ubuntu Linux(非 GUI)。如何获取此计算机上所有组件的列表?如果可能的话,像以太网芯片、Wifi 芯片、蓝牙、CPU、电源管理芯片等类型。

arm hardware debian

19
推荐指数
3
解决办法
4724
查看次数

在 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

linux cpu arm

17
推荐指数
1
解决办法
5万
查看次数

为什么内核不能运行init?

我已经在这个页面下载了 Raspbian 镜像。我正在尝试编译可用于在 qemu 中引导映像的内核。

我从kernel.org下载了 Linux 内核源代码并运行:

make versatile_defconfig
make menuconfig
Run Code Online (Sandbox Code Playgroud)

然后我向内核添加了以下功能:

  • 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"
Run Code Online (Sandbox Code Playgroud)

内核能够挂载文件系统,但它立即遇到了一些麻烦:

Kernel panic - not syncing: …
Run Code Online (Sandbox Code Playgroud)

arm init qemu linux-kernel

16
推荐指数
1
解决办法
6676
查看次数

为 Linux 或其他软件运行的 arm64/aarch64 的不同实现有什么区别?

对于x86_64架构的CPU,不管是Intel、AMD还是VIA。该架构的软件可以在其上正常运行。

但是,对于arm64/aarch64(arm64/aarch64的区别在这里),有很多厂商。对于 arm64/arch64 的 Linux 发行版,有很多方向。

是 Arch Linux ARM 的 arm 支持平台列表。

但是对于Debian,没有这么多的选择(只有 arm64 而对于 little endian 只有 armel)。

一季度。Archlinuxarm 的支持平台有什么区别?

为了弄清楚Q1,我用我的手机试了一下。我的手机架构是arm64v7el(4*ARMCortex-A73+4*ARMCortex-A53)。我为 armv7 - Raspberry Pi 2下载Archlinuxarm。并将 .tar.gz 文件解压到 Termux 主目录中的文件夹中。

然后我打开 Termux 并输入:

proot -r /path/to/my/archlinuxarm/rootfolder/
Run Code Online (Sandbox Code Playgroud)

不幸的是,据说 shell 解释器是不可执行的(在不同的体系结构中)。

也许,是因为Endian的不同。但是,对于 armv8,有一个 archlinuxarm 的下载选项,它是Generic

Q2。如果我为A平台安装一个archlinuxarm系统到B平台。是不能最大程度优化还是完全不兼容?

Q3。是否有不同平台的发行版只是驱动程序不同或编译Linux内核时参数不同?

第 4 季度。令我困惑的是,archlinuxarm 社区为什么不提供仅针对 arm64 armel 等的 stage rootfs tarball 而不是不同供应商的不同产品?这是否意味着例如 DragonBoard 410c 中的指令集与 Raspberry Pi 3 不同?或者换句话说,如果我将用于 DragonBoard 410c 的 Archlinuxarm …

linux arm arch-arm

15
推荐指数
1
解决办法
5万
查看次数