Add sysinfo example
Retrieve cpu model via hashtable & number of logical cpu via exposed variable Signed off: Dr. James Dominic P. Guana <jdpguana@histark.com>
This commit is contained in:
committed by
Robert Roth
parent
e89475c0b2
commit
f92f6ea029
@@ -32,13 +32,14 @@
|
||||
int
|
||||
main (int argc, char *argv [])
|
||||
{
|
||||
char *model;
|
||||
const glibtop_sysinfo * sysinfo;
|
||||
|
||||
glibtop_init();
|
||||
|
||||
sysinfo = glibtop_get_sysinfo ();
|
||||
model = g_hash_table_lookup (sysinfo->cpuinfo [1].values, "model name");
|
||||
|
||||
printf ("\nProcessor Model: %s\n", sysinfo->model);
|
||||
printf ("\nProcessor Model: %s\n", g_strdup (model));
|
||||
printf ("Number of Cores: %d\n\n", sysinfo->ncpu);
|
||||
|
||||
glibtop_close ();
|
||||
|
@@ -51,7 +51,6 @@ struct _glibtop_sysinfo
|
||||
guint64 flags;
|
||||
guint64 ncpu;
|
||||
glibtop_entry cpuinfo [GLIBTOP_NCPU];
|
||||
gchar *model;
|
||||
};
|
||||
|
||||
#define glibtop_get_sysinfo_r glibtop_get_sysinfo_s
|
||||
|
@@ -37,7 +37,6 @@ static void
|
||||
init_sysinfo (glibtop *server)
|
||||
{
|
||||
char* buffer;
|
||||
gchar *buf, *line;
|
||||
gchar ** processors;
|
||||
|
||||
if(G_LIKELY(sysinfo.flags)) return;
|
||||
@@ -49,25 +48,6 @@ init_sysinfo (glibtop *server)
|
||||
/* cpuinfo records are seperated by a blank line */
|
||||
processors = g_strsplit(buffer, "\n\n", 0);
|
||||
|
||||
line = strtok(processors[0], "\n");
|
||||
|
||||
while(line != NULL)
|
||||
{
|
||||
if (strstr(line, "model name") != NULL)
|
||||
{
|
||||
buf = strchr(line, ':');
|
||||
|
||||
if (buf != NULL)
|
||||
{
|
||||
/* we want to look at what's _after_ the ':' */
|
||||
buf+=2;
|
||||
sysinfo.model = g_strdup (buf);
|
||||
}
|
||||
break;
|
||||
}
|
||||
line = strtok(NULL, "\n");
|
||||
}
|
||||
|
||||
g_free(buffer);
|
||||
|
||||
sysinfo.ncpu = 0;
|
||||
|
Reference in New Issue
Block a user