Форум — Development Kak uznat w C, skolko na kompe RAM? 0 0 Hi! Kak moshno uznat, skolko pamjati est w kompe i skolko swobodno? Spasibo zaranee Ссылка
Да, но есть ли какой нибудь system call, потому что такой вариант например не пройдет в solaris. спасибо. anonymous (27.07.01 15:44:33 MSD) Ссылка
Так тебе всяко придется другую функцию писать для Solaris. Погляди исходники утилиты free, как там они /proc читают. DronK ★ (27.07.01 19:10:11 MSD) Ссылка
Такого сикола нет, потому что он в многопроцесных системах бессмысленен. Ну получил ты, что памяти сейчас свободно 100М, а на следущем тике соседний процесс это все съест. И что? vodz ★★★★★ (28.07.01 20:06:04 MSD) Ссылка
Net, wot glawnaja zada4a bila w tom, shto bi uznat, skolko woobshe RAM imeetsja, fizi4eski. W Solarise ja nashel kak eto polu4it: sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE) - ja imeju iskomii rezultat. sysconf(_SC_AVPHYS_PAGES) * sysconf(_SC_PAGESIZE) - skolko swobodno w Linuxe dumaju budet tak she, za4em eto nado? Nu naprimer takie tools kak top ispolzujut imenno eto, ja tak dumaju. Wot shto eshe menja o4en iteresujet, eto kak rabotajut takie utility kak truss (w Linuxe drugoe nazwanie), ona mne pokaziwaet wse syscalls, kotorie prozess wiziwaet, o4en interesno! Spasibo! anonymous (29.07.01 00:37:50 MSD) Ссылка
Da! Ja poprobowal zapustit truss (strace) na Solarise wot tak: $truss truss uname -a 2>/dev/stdout | grep open i ja uwidel, . . open("/proc/26705/as", O_RDWR|O_EXCL) open("/proc/26705/status", O_RDONLY) open("/proc/26705/ctl", O_WRONLY) open("/proc/26705/auxv", O_RDONLY) open("/proc/26705/cred", O_RDONLY) open("/proc/26705/cred", O_RDONLY) . . $ shto tool berejet kakuju to infu iz /proc, a to4nee iz 'as': $ file as as: empty file $ ls -l as -rw------- 1 user7 users 1499136 Jul 30 07:25 as $ man as as - assembler Wot gde bi moshno po4itat pro eto ? Spasibo! anonymous (30.07.01 13:34:44 MSD) Ссылка