在本地 64 位机器上,我可以打开“PowerShell (x86)”。但是,如果我对另一台运行 64 位操作系统的机器执行“Enter-PSSession”,它会创建一个 64 位 PowerShell。
在我的场景中,我需要一个 32 位的 PowerShell 会话。我怎样才能得到一个?
我想在具有 1GB RAM 的 PC 上安装 Windows 7 Ultimate。
什么对我更好?32位还是64位版本?
我正在运行 Windows 8 Enterprise x64。我使用管理员组中的帐户登录。当我打开 Windows 资源管理器或命令提示符时,我可以看到该文件cdd.dll:

C:\Windows\system32>dir cdd.dll
Volume in drive C has no label.
Volume Serial Number is ????-????
Directory of C:\Windows\system32
07/25/2012 09:49 PM 199,680 cdd.dll
Run Code Online (Sandbox Code Playgroud)
但是如果我从 Chrome 浏览器、Visual Studio 或其他一些应用程序(它们都是 32 位应用程序)打开一个打开文件对话框并导航到C:\Windows\system32那么没有这样的文件(过滤器设置为显示所有文件)。如果我在“打开文件”对话框中使用 Shift+RightClick 调用“在此处打开命令窗口”上下文菜单项并输入dir它确认没有这样的文件:

C:\Windows\System32>dir cdd.dll
Volume in drive C has no label.
Volume Serial Number is ????-????
Directory of C:\Windows\System32
File Not Found
Run Code Online (Sandbox Code Playgroud)
此效果并非特定于cdd.dll,许多其他文件也有所不同。有人告诉我,这是 文件系统虚拟化的影响,我对此知之甚少。
你能解释一下或给我一个解释这实际上是如何工作的参考吗?实际上是否有System32文件夹的几个不同实例。它们在磁盘上的物理位置是什么?是否可以从与System32默认情况下显示的 32 位进程不同的文件夹中的 32 位进程文件访问。
正如标题所说,有没有办法在 32 位系统上运行 x64 位程序?如果没有,是否有模拟器或是否有免费从 32 位升级到 64 位的方法?注意:我使用的是 Windows 10。
我正在尝试在只有 32 位 UEFI(目前)的设备上安装 Windows 10 x64(64 位)
由于 x64 Linux 可以通过自定义 32 位 GRUB 引导。我认为它也可以对 Windows 执行相同的操作,但是“如何使用 grub 绕过 32 位 uefi 来引导 Windows 10 x64”似乎另有说明,尽管给出的解释并不能完全解释原因(至少对我而言)。
我相信 GRUB 的 32 位 EFI 应该能够加载 Window 的 64 位 EFI。
或者,是否可以使用 grub 的新“ntldr-mod”来运行 windows x64 install bootmgr?(如何使用 grub2 在硬盘上启动 WINDOWS 操作系统安装)
这个问题可能会根据答案而演变。
关于 WHY 的答案/评论将被标记为题外话。我感兴趣的只是如何。如果您的回答是“不可能”,请提供更多信息。
“架构必须匹配”不是一个有效的答案。
参考链接:
可以在 32 位 UEFI 上安装 64 位 Windows 吗?
从 Windows 8.1(32 位)中将 Grub2(支持 EFI-IA32)安装到 ESP 分区 - Bay Trail 平板电脑 …
简而言之:与“如何在 64 位 Ubuntu 中运行 32 位应用程序”完全相同的问题,但因为它的答案不再有效。
细节:
$ bios/extlinux/extlinux
bash: bios/extlinux/extlinux: No such file or directory
$ file bios/extlinux/extlinux
bios/extlinux/extlinux: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=6b439421a757a6f3a4218c726538be790a22ca13, stripped
$ uname -m
x86_64
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04 LTS
Release: 16.04
Codename: xenial
Run Code Online (Sandbox Code Playgroud)
即,在 Ubuntu Xenial 下,以前的工作答案不再有效:
$ sudo dpkg --add-architecture i386
$ sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 …Run Code Online (Sandbox Code Playgroud) 我最近在运行 Windows XP Pro(32 位)的四核工作站 (HP xw8600) 上安装了 8GB 内存。我在 boot.ini 文件中添加了 /PAE 开关,但 SysInfo 仍然说总内存为 3GB。Windows 能识别额外的内存吗?有办法告诉吗?
任何帮助表示赞赏。谢谢。
我试图在使用X6DAL-XG主板的 Windows Vista 32 位机器上安装更多 RAM,BIOS 中报告的 RAM 量为 3GB+,但 Windows 仅报告安装了 2GB。主板有 6 个 RAM 托架,我在其中填充了 4 个 1GB 记忆棒和 2 个 512MB 记忆棒的各种组合,但无论我如何配置它们,Windows 都看不到超过 2GB。我当然意识到 32 位 Windows 的内存上限为 3gb,但这并不能解释为什么当实际上(当前)安装了 5GB 时它只会报告 2GB。我应该认为我至少可以看到 3GB。
根据主板的规格清单,最低 RAM 要求是成对安装的 DDR333/266mhz。我已经完全做到了这一点,并且 BIOS 在 POST 时没有报告任何问题。
据我了解,架构并没有像从 16 位到 32 位那样发生很大的变化,那么为什么我们需要 XP 模式等才能在 64 位 Windows 7 中运行 32 位应用程序呢?
还是我理解错了?
我已经看到 CPU 和操作系统在位方面已经从 8 位上升到 16 位,再到 32 位,现在又上升到 64 位。我了解此更改是为了增加 CPU 可寻址的最大内存量。
我不明白的是为什么总线大小总是增加一倍。将总线大小增加一倍只是一个任意/商业决定还是有其他原因?
为什么我们不能有一个 33 位的 CPU?或者如果这还不够,一个 34 位 CPU?64 位似乎在地址空间和底层芯片的复杂性方面如此庞大且不必要(昂贵?)跳跃。
32-bit ×10
64-bit ×8
memory ×2
windows ×2
windows-7 ×2
cpu ×1
formatting ×1
grub ×1
installation ×1
pae ×1
powershell ×1
supermicro ×1
system-file ×1
ubuntu ×1
uefi ×1
windows-10 ×1
windows-8 ×1
windows-xp ×1