64-битное ядро ​​Linux видит только 3 из 4GB после обновления

1357
quack quixote

Привет всем. Я использую Ubuntu 9.04 64-bit на своем MacBook. Раньше у меня было 2 ГБ оперативной памяти, и все работало отлично. Я только что обновил до 2x2 ГБ (4 ГБ), но моя система видит только 3 ГБ. OS X, на которой у меня двойная загрузка, видит все 4Гб. Кроме того, мои видео производительности невероятно не хватает. До обновления мой тест compiz был заполнен на скорости 80 кадров в секунду, а теперь он на скорости 22 кадра в секунду с очень изменчивым перетаскиванием окон.

Кто-нибудь когда-нибудь слышал об этом на 64-битном ядре? Я просто не совсем понимаю, в чем может быть проблема.

10$ uname -a Linux macbook 2.6.28-15-generic #49-Ubuntu SMP Tue Aug 18 19:25:34 UTC 2009 x86_64 GNU/Linux  $ free -m total used free shared buffers cached Mem: 2953 1031 1921 0 114 427 -/+ buffers/cache: 489 2463 Swap: 7812 0 7812  9$ lsmod Module Size Used by i915 77960 2  drm 123232 3 i915 binfmt_misc 18572 1  ppdev 16904 0  btusb 21784 2  bridge 63776 0  stp 11140 1 bridge bnep 22912 2  vboxnetadp 109356 0  vboxnetflt 116972 0  vboxdrv 1721612 1 vboxnetflt uvcvideo 69640 0  compat_ioctl32 18304 1 uvcvideo videodev 45184 2 uvcvideo,compat_ioctl32 v4l1_compat 23940 2 uvcvideo,videodev lp 19588 0  parport 49584 2 ppdev,lp snd_hda_intel 557492 3  snd_pcm_oss 52352 0  snd_mixer_oss 24960 1 snd_pcm_oss snd_pcm 99464 2 snd_hda_intel,snd_pcm_oss arc4 10240 2  snd_seq_dummy 11524 0  ecb 11392 2  snd_seq_oss 41984 0  snd_seq_midi 15744 0  snd_rawmidi 33920 1 snd_seq_midi snd_seq_midi_event 16512 2 snd_seq_oss,snd_seq_midi snd_seq 66272 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event ath9k 310584 0  snd_timer 34064 2 snd_pcm,snd_seq snd_seq_device 16276 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq mac80211 251528 1 ath9k iTCO_wdt 21712 0  iTCO_vendor_support 12420 1 iTCO_wdt joydev 20992 0  video 29204 0  snd 78920 15 snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device applesmc 37700 0  output 11648 1 video soundcore 16800 1 snd pcspkr 11136 0  cfg80211 43680 1 mac80211 appletouch 19972 0  isight_firmware 11520 0  input_polldev 12688 1 applesmc intel_agp 39408 1  snd_page_alloc 18704 2 snd_hda_intel,snd_pcm led_class 13064 2 ath9k,applesmc hid_apple 15872 0  usbhid 47040 0  ohci1394 42164 0  ieee1394 108288 1 ohci1394 sky2 63364 0  fbcon 49792 0  tileblit 11264 1 fbcon font 17024 1 fbcon bitblit 14464 1 fbcon softcursor 10368 1 bitblit 

Некоторая информация от dmesg:

[ 795.820163] ACPI: EC: GPE storm detected, transactions will use polling mode [ 1762.709516] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 1763.078130] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 2362.760889] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 2416.352084] ACPI: EC: missing confirmations, switch off interrupt mode. [ 3718.721095] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 3719.108914] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 4318.773266] [drm:i915_getparam] *ERROR* Unknown parameter 6 [ 9513.813066] CE: hpet increasing min_delta_ns to 15000 nsec [ 9693.815684] npviewer.bin[6736] 
1

3 ответа на вопрос

3
Jan Jungnickel

Если у вас есть MacBook с набором микросхем Intel 945, вы можете использовать только 3 ГБ. Mac OS «Об этом Mac» покажет всего 4 ГБ, но O / S сможет использовать только 3 ГБ, как и Linux.

Причина, по которой вы видите 4 ГБ при использовании «Об этом Mac», заключается в том, что Mac OS X примет это значение не из того, что можно использовать, а из того, что DIMM сообщает при проверке аппаратного обеспечения.

И да, это принадлежит суперпользователю :-)

Особенно иронично, поскольку 32-битный Linux будет использовать> 4Gb на большинстве ПК (PAE дает вам 36-битную адресацию) Martin Beckett 14 лет назад 0
С этим чипсетом ограничение в 3 ГБ является аппаратным ограничением ... То же самое относится и к Fe ThinkPad X60 (который также получил 945) - ваш чипсет просто не будет обрабатывать 4 ГБ, и это не связано с ОС. liori 14 лет назад 2
mgb: Это не проблема адресного пространства. Это проблема физического адресации. Если ваш набор микросхем не поддерживает переназначение адресов для пространства 3–4 ГБ, независимо от того, является ли ваша ОС 32-разрядной или 64-разрядной, вы не сможете получить доступ к объему памяти, маскируемому устройствами ввода-вывода для использования MMIO. Mehrdad Afshari 14 лет назад 2
Блин ... Большое спасибо за ответы. Что насчет медленного видео? Это из-за аппаратного конфликта? Хотя это отстой, что я не могу иметь 4 ГБ, приятно получать ответы на некоторые вопросы. 14 лет назад 0
0
Sathya

Отставание видео может быть связано с драйверами Intel GMA, которые, как известно, имеют проблемы. Пожалуйста, ознакомьтесь с этой веткой на форумах Ubuntu.

0
voyager

Что касается проблемы с видео, попробуйте обновить ядро ​​и переустановить видеомодуль для своего чипсета, у Intel была отличная поддержка Linux. Также может быть просто, что вы отключили инфраструктуру прямого рендеринга при обновлении.

В пункте 5.3 на собственной странице Intel по драйверам для Linux рассказывается, как ее включить.

DRI (Direct Rendering Infrastructure) - это структура, обеспечивающая безопасный и эффективный прямой доступ к графическому оборудованию в системе X Window. Вам нужно включить DRI в xorg.conf.

Во-первых, убедитесь, что модули GLX и DRI загружаются:

Section "Module" # ... Load "glx" Load "dri" # ... EndSection 

Затем установите разрешения для DRI соответствующим образом. Чтобы позволить кому-либо использовать DRI, выполните:

Section "DRI" Mode 0666 EndSection 

После перезапуска X-сервера вы можете проверить, включен ли прямой рендеринг, запустив glxinfo, вывод glxinfo должен показать:

direct rendering: Yes 
Спасибо за информацию Voyager! К сожалению, я полагаю, что отставание вызвано тем, что 1 ГБ пересекаются в распределении памяти (согласно ограничению набора микросхем 945). Мое видео отлично работает только с 3 ГБ. Но у меня есть эта ссылка в закладке, так как я уверен, что со временем у меня возникнут проблемы с драйверами при обновлении. Еще раз спасибо! 14 лет назад 1