[linux] free и количество памяти

Fragaria

на борту машины стоит 1.5 гига оперативы, но free выдаёт
 
total used free shared buffers cached
Mem: 885 876 8 0 1 617
-/+ buffers/cache: 257 627
Swap: 1001 265 735
Total: 1886 1141 744
как это понимать? (цифры в мегабайтах) Почему физической памяти только гиг, даже меньше?

pitrik2

а видюха встроенная?
а то она себе отжирать может часть памяти...
хотя она врядли берет больше 128 мегов
куда еще 500 делись не знаю, может планка памяти сломанная?
БИОС сколько памяти показывает?

Fragaria

Биос норм всё показывает, полтора гига, видео встроенного нет.

Fragaria

а не может VMWare, стоящая у меня, как-то обманывать систему, резервируя часть памяти на себя?

Papazyan

А сколько у тебя выделяется для пользовательских процессов виртуальной памяти? Если 3Г, то в оставшийся гиг для kernel 1.5Г не поместятся.

Fragaria

ничего не понял

Marinavo_0507

На x86 для поддержки памяти 1G и более нужно ядро, собранное с поддержкой himem (опция CONFIG_HIGHMEM4G). Это ты мог бы узнать в сообщениях ядра, если бы прочитал их.

dgaf

dmesg|less глянь

Fragaria

ауеть. CONFIG_HIGHMEM4G - эту опцию я видел, но, признаться, подумал, что это нужно для систем с 4 и более гигабайт памяти. Спасибо, буду перекомпилировать ядро.

sergey_m

О да, охуенно логично.

Fragaria

Ну не знаю, скорее тут нелогичное название параметра, а я рассуждал вполне себе логично Ведь критическим является как раз порог, за которым необходим данный параметр (как оказалось, 1Гб а не максимальный порог, который может быть достигнут с этим параметром.

sergey_m

> Ну не знаю, скорее тут нелогичное название параметра, а я рассуждал вполне себе логично
Наверное ты не уловил иронии в моём посте. Я согласен с тобой.
> (как оказалось, 1Гб
На самом деле 896Мб.
Кстати в книжках про линукс пишут, что это ограничение x86 архитектуры.

Fragaria

>На самом деле 896Мб.
точно! примерно столько и показывает free.
А я, радостный такой, отдал 700 метров vmware на растерзание, сказав ей, чтоб она не свопилась, и удивляюсь - что всё так тормозит-то безбожно? Е-е-е, всем спасибо, буду исправлять.

vall

ну не знаю, странно всё это...
у меня:
total used free shared buffers cached
Mem: 377 213 164 0 5 82
-/+ buffers/cache: 125 252
Swap: 494 1 492
куда делось ещё 7 метров? похоже что память собственно ядра в total не включается.

Fragaria

у тебя хоть всего 7 метров пропало, а у меня 700 =)

Werdna

Тебе ебут мозги.
Короче, вся свободная память -- в файловом кэше. А чтобы не свопило -- отруби своп, своп -- это технология уёбишного прошлого, когда память была дорогая.

Werdna

Добавлю, что недавно сам сражался с тем, чтобы kswapd не свопил, а херил файловый кэш. Не победил, отрубил своп и все стало летать.

Fragaria

В общем, я собрал ядро с нужным параметром (спасибо и теперь всё замечательно. Для тех, кто потом будет искать решение похожей проблемы, вставлю ключевые слова в пост:
Linux free memory gigabyte kernel problem himem CONFIG_HIGHMEM4G Линукс память гигабайт ядро проблема не видит

Gasparfx

Линукс память гигабайт ядро проблема не видит

ava3443

> Добавлю, что недавно сам сражался с тем, чтобы kswapd не свопил, а херил файловый кэш. Не победил, отрубил своп и все стало летать.
Я торможу, или что-то удивительное у тебя происходит? Файловый кэш свопится?

Werdna

Нет, свопится память, потому что файловый кэш занял много.
Вообще, своп -- дело нахуй не нужное, надо память покупать

kokoc88

Файловый кэш всегда освобождается при нехватке памяти. По крайней мере раньше так было.

Werdna

Беда в том, что он иногда свопится, вместо того чтобы кэщ освобождать.
Оставить комментарий
Имя или ник:
Комментарий: