Date: Mon, 30 Jul 2001 18:36:57 -0400 (EDT) From: Alexander V P <alex@big-blue.net> To: Jim Freeze <jim@freeze.org> Cc: Marius <marius@mail.communityconnect.com>, questions@FreeBSD.ORG Subject: Re: getting cpu info Message-ID: <Pine.BSF.4.21.0107301832230.6170-100000@localhost> In-Reply-To: <Pine.BSF.4.32.0107301827540.7577-100000@www.stelesys.com>
next in thread | previous in thread | raw e-mail | index | archive | help
hi, under 3.4: # sysctl -a |grep freq kern.acct_chkfreq: 15 machdep.i8254_freq: 1193182 machdep.tsc_freq: 551252612 under 4.3: # sysctl -a |grep freq kern.acct_chkfreq: 15 machdep.i8254_freq: 1193182 i guess it's out. if it's renamed i'll appreciate if someone share that info ;-) here. alex p.s. my english sux. sry for spelling and stuff On Mon, 30 Jul 2001, Jim Freeze wrote: > On Mon, 30 Jul 2001, Alexander V P wrote: > > > hi, > > i've compiled and it didn't work. error:sysctlbyname(): Operation not > > supported > > any idea? > > tia, > > alex > > > > I have not tried to compile this on 4.3. However, I did test > it on my 3.4R box and it compiled just fine. > Has that call been replaced or renamed? > > Jim > > > On Mon, 30 Jul 2001, Jim Freeze wrote: > > > > > Here is a little piece of c code that was previously posted here. > > > Works great. > > > > > > Sample output: > > > > > > % machid > > > FreeBSD CPU Information > > > Version 0.1 > > > http://tribune.intranova.net > > > > > > Architecture: i386 > > > Number of CPUs: 1 > > > CPU Model: AMD-K6(tm) 3D processor > > > CPU Speed: 400MHz > > > Total Memory: 60MB > > > User Memory: 47MB > > > > > > > > > --begin code--- > > > /* > > > * FreeBSD CPU Information 0.1 > > > * --------------------------- > > > * Simple program to display the total RAM, and CPU information. > > > * Compile: cc -o cpuinfo cpuinfo.c > > > * --------------------------- > > > * Omachonu Ogali <oogali@intranova.net> > > > */ > > > > > > /* Sample Output > > > * Architecture: i386 > > > * Number of CPUs: 1 > > > * CPU Model: Pentium II/Pentium II Xeon/Celeron > > > * CPU Speed: 400MHz > > > * Total Memory: 124MB > > > * User Memory: 104MB > > > */ > > > > > > #include <stdio.h> > > > #include <stdlib.h> > > > #include <string.h> > > > #include <unistd.h> > > > #include <sys/types.h> > > > > > > extern int errno; > > > > > > int main(void) > > > { > > > int len, numcpu, cpuspeed, totalmem, usermem; > > > char cpuarch[64], cpumodel[64]; > > > > > > printf("FreeBSD CPU Information\n"); > > > printf("Version 0.1\n"); > > > printf("http://tribune.intranova.net\n\n"); > > > > > > len = sizeof(cpuarch); > > > if (sysctlbyname("hw.machine_arch", &cpuarch, &len, NULL, NULL) == -1) { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > len = sizeof(cpumodel); > > > if (sysctlbyname("hw.model", &cpumodel, &len, NULL, NULL) == -1) { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > len = sizeof(cpuspeed); > > > if (sysctlbyname("machdep.tsc_freq", &cpuspeed, &len, NULL, NULL) == -1) > > > { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > len = sizeof(numcpu); > > > if (sysctlbyname("hw.ncpu", &numcpu, &len, NULL, NULL) == -1) { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > len = sizeof(totalmem); > > > if (sysctlbyname("hw.physmem", &totalmem, &len, NULL, NULL) == -1) { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > len = sizeof(usermem); > > > if (sysctlbyname("hw.usermem", &usermem, &len, NULL, NULL) == -1) { > > > perror("sysctlbyname()"); > > > return -1; > > > } > > > > > > cpuspeed = cpuspeed / 1000000; > > > totalmem = (totalmem - 1048576) / 1048576; > > > usermem = (usermem - 1048576) / 1048576; > > > > > > printf("Architecture:\t%s\n", cpuarch); > > > printf("Number of CPUs:\t%d\n", numcpu); > > > printf("CPU Model:\t%s\n", cpumodel); > > > printf("CPU Speed:\t%dMHz\n", cpuspeed); > > > printf("Total Memory:\t%dMB\n", totalmem); > > > printf("User Memory:\t%dMB\n", usermem); > > > printf("\n"); > > > > > > return 0; > > > } > > > --end code--- > > > > > > On Mon, 30 Jul 2001, Marius wrote: > > > > > > > > > > > I am trying to audit our company's network of *nix machines to find > > > > candidates for replacement for newer faster models. I basically want > > > > write a script that logs in, executes some commands, and saves the > > > > appropriate info. Perl is certainly up to the task, so that isn't a > > > > problem. I'm just not sure how to grab the appropriate cpu info from our > > > > FreeBSD machines. Linux has `cat /proc/cpuinfo` but I can't think > > > > of anything similar in FreeBSD. > > > > > > > > I am most of the way there, I have everything I need except the speed of > > > > the cpu(s) in MHz. Anybody know a quick and easy way to grab the cpu speed > > > > on a machine without rebooting it? I can do a lot with sysctl > > > > to get memory resources and the number of cpu's, but a listing for > > > > speed has thus far eluded me. > > > > > > > > # sysctl hw.physmem > > > > # sysctl hw.ncpu > > > > > > > > Tell me most of what I want to know, but hw.model is not specific enough > > > > for my purposes. Am I overlooking a sysctl variable, or is there some > > > > other utility I could use? Anyone have a suggestion? > > > > > > > > Obviously this stuff would be in the boot messages of these machines, but > > > > these machines are in production, and I would rather not reboot them. And > > > > because of that 'darned' stability that FreeBSD has, the boot messages > > > > have long ago been wiped out of dmesg.yesterday and dmesg.today. ;) > > > > > > > > Any pointers would be appreciated. Please cc: me, as I am subscribed to > > > > stable, but not questions. > > > > > > > > --------------------------------------------------------------- > > > > -Marius M. Rex > > > > > > > > "Do not try to solve all life's problems at once -- learn to > > > > dread each day as it comes." > > > > -- Donald Kaul > > > > > > > > > > > > > > > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > > > > with "unsubscribe freebsd-questions" in the body of the message > > > > > > > > > > > > > ========================================================= > > > Jim Freeze > > > jim@freeze.org > > > --------------------------------------------------------- > > > No comment at this time. > > > http://www.freeze.org > > > ========================================================= > > > > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > > > with "unsubscribe freebsd-questions" in the body of the message > > > > > > > > > > ========================================================= > Jim Freeze > jim@freeze.org > --------------------------------------------------------- > No comment at this time. > http://www.freeze.org > ========================================================= > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0107301832230.6170-100000>
