Re: trouble getting memory and swap info

看板DFBSD_kernel作者時間21年前 (2004/10/28 08:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/8 (看更多)
On Wed, 27 Oct 2004, Glenn Johnson wrote: > I am trying to get gkrellm2 working on DragonFlyBSD. I got it to > compile and run but it does not report the memory or swap. Well, > actually, it does report them, its just that the values are 0. I used > the src/usr.bin/top/machine.c and the xsysinfo dfport as a guide. I am > not at my DragonFly system at the moment but basically what I did was to > set the vmmeter and vmstats structures as defined in vmmeter.h and used > in top/machine.c, using sysctlbyname to get the information. Is there > something else I need to do? On fbsd4 and probably dragonfly a program needs setgid kmem for certain memory statistics, which is why top works and gkrellm doesn't. kvm_open/kvm_getswapinfo have been fixed/changed in fbsd5. #if FBSD4 kd = kvm_open(NULL, NULL, NULL, O_RDONLY, "kvm_open"); #else kd = kvm_open("/dev/null", "/dev/null", "/dev/null", O_RDONLY, "kvm_open"); #endif Memory statistics should be available in sysctl, hw.availpages and vm.stats.vm.v_*, no perms needed. I wouldn't use a "/proc" filesystems to "fix" this, they may be great for shell, but C code gets quite messy dealing with them. The fact that every "/proc" filesystem in existence has had serious root holes doesn't help either. ( /proc/meminfo has changed between linux 2.4 and 2.6, make sure you support each version :) -- Sten Spans "There is a crack in everything, that's how the light gets in." Leonard Cohen - Anthem
文章代碼(AID): #11W3u400 (DFBSD_kernel)
討論串 (同標題文章)
文章代碼(AID): #11W3u400 (DFBSD_kernel)