У меня уже некоторое время есть 32-битная виртуальная машина Ubuntu на моем 4-процессорном сервере. Я дал ему один процессор, но теперь мне нужно больше энергии. Я добавил второе в настройках Virtualbox, но виртуализированная Ubuntu по-прежнему считает, что это всего лишь один процессор:
cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 2405.790
cache size : 6144 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc up pni ssse3 lahf_lm
bogomips : 4811.58
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Есть ли способ, чтобы моя виртуализированная машина Ubuntu знала о втором процессоре?
В документации Virtualbox есть раздел, посвященный горячему подключению ЦП . Это детализирует процедуру добавления другого процессора для гостей Linux.
В случае гостевых систем Linux применяется следующее: чтобы предотвратить извлечение, пока процессор все еще используется, его необходимо предварительно извлечь из гостевой системы. Гостевые дополнения Linux содержат службу, которая получает события горячего удаления и извлекает процессор. Кроме того, после добавления ЦП в виртуальную машину он не используется автоматически Linux. Служба Linux Guest Additions позаботится об этом, если будет установлена. Если процессор не может быть запущен с помощью следующей команды:
blockquote>echo 1 > /sys/devices/system/cpu/cpu<id>/online
На странице Известные ограничения перечислены некоторые недостатки возможностей SMP для 32-разрядных гостей. В основном проблемы с производительностью:
Плохая производительность с 32-разрядными гостевыми системами на некоторых моделях процессоров Intel, которые не включают поддержку аппаратной оптимизации виртуальных APIC. Это касается в основном гостей Windows и Solaris, но, возможно, также некоторых версий ядра Linux. Частично решено в 3.0.12 для 32-битных Windows NT, 2000, XP и 2003 гостей. Требуется гостевая версия 3.0.12 или выше.
blockquote>Это не говорит о том, что множественная обработка невозможна.