Questions tagged «x86»

大多数PC和服务器的处理器体系结构,包括386/486 / Pentium /…(IA-32)32位系列和amd64 64位系列。大多数x86处理器由Intel或AMD制造。

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 


4
如何缓解Linux系统上的Spectre和Meltdown漏洞?
安全研究人员在零号项目上发布了一个名为Spectre and Meltdown的新漏洞,该漏洞使程序可以从其他程序的内存中窃取信息。它会影响英特尔,AMD和ARM体系结构。 可以通过访问JavaScript网站来远程利用此缺陷。技术细节上可以找到redhat的网站,Ubuntu的安全团队。 通过推测性执行侧通道攻击的信息泄漏(CVE-2017-5715,CVE-2017-5753,CVE-2017-5754亦称为Spectre and Meltdown) 人们发现,一类新型的边信道攻击会影响大多数处理器,包括Intel,AMD和ARM的处理器。该攻击允许恶意用户空间进程读取内核内存,并允许来宾中的恶意代码读取虚拟机监控程序内存。为解决此问题,将需要更新Ubuntu内核和处理器微代码。这些更新将在以后的《 Ubuntu安全公告》中宣布。 JavaScript中的示例实现 作为概念验证,编写了JavaScript代码,该代码在Google Chrome浏览器中运行时允许JavaScript从其运行过程中读取私有内存。 我的系统似乎受到幽灵漏洞的影响。我已经编译并执行了这个概念证明(spectre.c)。 系统信息: $ uname -a 4.13.0-0.bpo.1-amd64 #1 SMP Debian 4.13.13-1~bpo9+1 (2017-11-22) x86_64 GNU/Linux $ cat /proc/cpuinfo model name : Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz $gcc --version gcc (Debian 6.3.0-18) 6.3.0 20170516 如何缓解Linux系统上的Spectre和Meldown漏洞? 进一步阅读:使用Meltdown实时窃取密码。 更新资料 @Carlos Pasqualini回答Spectre & …

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

3
如何检测和缓解Linux系统上的Intel特权升级漏洞(CVE-2017-5689)?
根据2017年5月1日英特尔安全中心发布的信息,英特尔处理器上存在一个严重漏洞,该漏洞可能允许攻击者使用AMT,ISM和SBT获得特权(特权升级)。 由于AMT可以直接访问计算机的网络硬件,因此该硬件漏洞将使攻击者可以访问任何系统。 英特尔®主动管理技术(AMT),英特尔®标准可管理性(ISM)和英特尔®小型企业技术版本的固件版本6.x,7.x,8.x 9.x,10中存在特权提升漏洞.x,11.0、11.5和11.6,它们可以允许没有特权的攻击者控制这些产品提供的可管理性功能。在基于Intel的消费类计算机上不存在此漏洞。 英特尔已经发布了适用于Windows 7和10 的检测工具。我正在使用来自dmidecode -t 4英特尔网站的信息,并且通过在英特尔网站上搜索发现自己的处理器正在使用Intel® Active Management Technology (Intel® AMT) 8.0。 受影响的产品: 在针对英特尔®主动管理技术,英特尔®小型企业技术和英特尔的英特尔可管理性固件版本6.x,7.x,8.x 9.x,10.x,11.0、11.5和11.6中已发现该问题。 ®标准可管理性。6之前或11.6之后的版本不受影响。 说明: 无特权的本地攻击者可以提供可管理性功能,以获取有关英特尔可管理性SKU的非特权网络或本地系统特权:英特尔®主动管理技术(AMT),英特尔®标准可管理性(ISM)和英特尔®小型企业技术(SBT) 如何轻松检测和缓解Linux系统上的Intel特权升级漏洞?


4
在Gentoo中使用ABI_X86
自从我更新了Gentoo系统已经几个月了。而且,您可以想象,这意味着我需要检查很多程序包(以及USE更改)。我的系统是“ amd64”(multilib),但是我有很多来自“〜amd64”的手动关键字化软件包。 无论如何,在此更新中,我一直看到“ ABI_X86” USE标志。这是什么?这是新的。在“ eselect新闻列表”中什么也没有。 我找到了这个主题:http : //forums.gentoo.org/viewtopic-t-953900-start-0.html。这似乎表明了如何使用它,但是,对此是否有任何“真实”文档?它有什么作用?我应该将“ ABI_X86”设置为什么?我有一个multilib系统。我假设我想要“ 64”,但是“ 32”和“ x32”是什么?我对在这里需要做什么感到困惑。 Emerge对插槽冲突大喊大叫,它们似乎与“ ABI_X86”有关(我完全忘记了错误,但我记得其中一个是zlib)。 那么,关于什么ABI_X86是什么以及如何使用它,是否有任何“官方”文档? 在链接的线程中,我找到了以下页面:http : //kicherer.org/joomla/index.php/zh-CN/blog/liste/29-transition-of-emul-packages-to-true-multilib,但是我想要在关键字一堆东西并编辑我的内容之前要知道我在做什么make.conf。 PS我的“ package.keywords”文件中包含大多数“ app-emulation / emul-linux-x86”软件包(当时我似乎需要的软件包)。


4
Linux上的32位,64位CPU操作模式
我很困惑。运行Fedora Linux,将lscpu产生: Architecture: i686 CPU op-mode(s): 32-bit, 64-bit ... 但是,当我尝试安装64位程序(Chrome)时,出现如下错误: 软件包/....x86_64.rpm具有不兼容的体系结构x86_64。有效的架构为['i686','i586','i486',i386'] 我对能够安装Chrome的兴趣不大,对为什么lscpu说我的CPU可以在64位模式下运行的兴趣更强;显然,这并不意味着我可以运行64位程序。谁能澄清?
15 linux  cpu  64bit  x86 


3
“机器硬件”,“处理器类型”和“硬件平台”之间的区别
我的Linux机器报告“ uname -a”输出如下: [root@tom i386]# uname -a Linux tom 2.6.9-89.ELsmp #1 SMP Mon Apr 20 10:34:33 EDT 2009 i686 i686 i386 GNU/Linux [root@tom i386]# 根据uname的手册页,条目“ i686 i686 i386”表示: 机器硬件名称(i686) 处理器类型(i686) 硬件平台(i386) 附加信息: [root@tom i386]# cat /proc/cpuinfo <snip> vendor_id : GenuineIntel CPU family : 6 model : 15 model name : …

3
x86 Linux中的物理地址0包含什么?
我不确定这个问题应该在这里还是在reverseengineering.stackexchange.com中 引用维基百科: 在8086处理器中,中断表称为IVT(中断向量表)。IVT始终位于内存中的同一位置,范围从0x0000到0x03ff,并且由256个四字节实模式远指针(256×4 = 1024字节内存)组成。 这是我在qemu monitor中找到的: (qemu) xp/128xw 0 0000000000000000: 0xf000ff53 0xf000ff53 0xf000e2c3 0xf000ff53 0000000000000010: 0xf000ff53 0xf000ff53 0xf000ff53 0xf000ff53 0000000000000020: 0xf000fea5 0xf000e987 0xf000d62c 0xf000d62c 0000000000000030: 0xf000d62c 0xf000d62c 0xf000ef57 0xf000d62c 0000000000000040: 0xc0005526 0xf000f84d 0xf000f841 0xf000e3fe 0000000000000050: 0xf000e739 0xf000f859 0xf000e82e 0xf000efd2 0000000000000060: 0xf000d648 0xf000e6f2 0xf000fe6e 0xf000ff53 0000000000000070: 0xf000ff53 0xf000ff53 0xf0006aa4 0xc0008930 …
12 memory  x86 

2
dpkg:错误:无法删除数据库当前正在使用的体系结构“ i386”
我使用此命令添加了i386拱门: sudo dpkg --add-architecture i386 然后,在没有安装任何软件包之后,我立即尝试删除i386拱门,如下所示: sudo dpkg --remove-architecture i386 而且我得到了错误: dpkg: error: cannot remove architecture 'i386' currently in use by the database 我已经看到了迄今为止涉及移除i386的包装解决方案,我还没有安装任何,是的那些安装有该操作系统的运作至关重要。我该怎么办? 编辑,请阅读以下内容,以免破坏您的操作系统: 原来64位Linux操作系统已经包含了i386架构,因此该命令sudo dpkg --add-architecture i386实际上并没有执行任何操作。

2
当我肯定有4.0 GiB时,为什么我的系统仅显示3.2 GiB的RAM
我安装了2x2 GiB记忆棒。从grub引导菜单 运行memtest86可以确认这一点。.memtest86没有报告错误。 但是,在运行Ubuntu 10.04的系统中,每检查一次我的可用内存,它只会报告大约3.2 GiB。 cat /proc/meminfo == 3320132 kB System Monitor == 3.2 GiB htop == 3242 MB free -m == 3242 MB 谁得到了我缺少的 RAM? 更新的信息:我现在在相同的硬件上双重引导到Ubuntu 10.04的另一个版本(我忘记了我几个月前安装的版本,以备不时之需):)....它通过以下System Monitor方式报告3.9 GiB : 我已经/var/log/messages在http://pastebin.ubuntu.com/629246/发布了我的最新信息。
12 linux  memory  x86  pae 

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 

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.