Всем привет, я вот тут пытаюсь найти точный способ определения обьема памяти на компьютере с Линухом, в файле /proc/meminfo есть информация о памяти, но там нет физического обьема... Есть еще одни файл: /dev/mem, походу в нем можна с помощью ioctl() узнать обьем, но вот какой параметр передать в ioctl я не знаю, может кто то знает? в каких хеадерах искать?.
Спасибо за помощь.
Обьем памяти на компьбютере (Обьем памяти на компьбютере)
Модератор: Модераторы разделов
-
elide
- Бывший модератор
- Сообщения: 2421
- Статус: Übermensch
- ОС: лялих
-
Dymytriy
- Сообщения: 7
- ОС: WINXP
Re: Обьем памяти на компьбютере
мне так кажеться это свободное пространство которое осталось после загрузки ядра... а вот как узнать физический обьем, округлять это значение? може как то с ioctl можна узнать обьем...
-
BlackStar
- Сообщения: 1338
- Статус: We are all Kosh
- ОС: Fedora 10
Re: Обьем памяти на компьбютере
MemTotal - обьем физической памяти (и не каких кажется
).
man proc
man free
man proc
man free
LightLang Team
-
elide
- Бывший модератор
- Сообщения: 2421
- Статус: Übermensch
- ОС: лялих
-
Dymytriy
- Сообщения: 7
- ОС: WINXP
Re: Обьем памяти на компьбютере
Колупался я в нем, к стати классная штука, но она читает данные из БИОСА, но на старых машинах такой информацйии в БИОСАх нет, вот в чем трабл...
-
Subj
- Сообщения: 151
- Статус: Useful
- ОС: win
Re: Обьем памяти на компьбютере
Мож эта, Мб:
б:
Код: Выделить всё
let m=$(grep MemTotal /proc/meminfo|sed "s/ \+/ /g"|cut -d' ' -f 2)/1024;echo $mб:
Код: Выделить всё
let m=$(grep MemTotal /proc/meminfo|sed "s/ \+/ /g"|cut -d\ -f 2)*1024;echo $mBuilding better software with Ada
-
Dymytriy
- Сообщения: 7
- ОС: WINXP
Re: Обьем памяти на компьбютере
Спасибо, щас проверю.
-
Subj
- Сообщения: 151
- Статус: Useful
- ОС: win
Re: Обьем памяти на компьбютере
Хотя можно и проще:
free -b - в байтах
free -m - думаю догадаешся, можно еще -g, можно и распарсить:
Для байт:
ну или
или еще как...
free -b - в байтах
free -m - думаю догадаешся, можно еще -g, можно и распарсить:
Для байт:
Код: Выделить всё
free -b|grep Mem|sed "s/ \+/ /g"|awk -F' ' '{print $2}'ну или
Код: Выделить всё
free -b|grep Mem|sed "s/[^ ]* *//"|sed "s/ .*$//"или еще как...
Building better software with Ada