| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 
 | .\" -*- nroff -*-
.\"
.\" (C)opyright 1993 by Dan Miner (dminer@nyx.cs.du.edu)
.\"
.\"  Permission is granted to freely distribute or modify this file
.\"  for the purpose of improving Linux or its documentation efforts.
.\"  If you modify this file, please put a date stamp and HOW you
.\"  changed this file.  Thanks.   -DM
.\"
.\" Modified Sat Jul 24 12:35:12 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified Tue Oct 22 22:29:51 1996 by Eric S. Raymond <esr@thyrsus.com>
.\" Modified Mon Aug 25 16:06:11 1997 by Nicols Lichtmaier <nick@debian.org>
.\"
.TH SYSINFO 2 "25/08/1997" "Linux 2.0" "Manual do Programador Linux"
.SH NOME
sysinfo \- devolve informaes sobre todas as estatistcas do sistema
.SH SINOPSE
.B #include <sys/sysinfo.h>
.sp
.BI "int sysinfo(struct sysinfo *" info );
.SH DESCRIO
At o Linux 2.3.16,
.B sysinfo
era usado para devolver informaes na seguinte estrutura:
.RS
.nf
struct sysinfo {
	long uptime;             /* Seconds since boot */
	unsigned long loads[3];  /* 1, 5, and 15 minute load averages */
	unsigned long totalram;  /* Total usable main memory size */
	unsigned long freeram;   /* Available memory size */
	unsigned long sharedram; /* Amount of shared memory */
	unsigned long bufferram; /* Memory used by buffers */
	unsigned long totalswap; /* Total swap space size */
	unsigned long freeswap;  /* swap space still available */
	unsigned short procs;    /* Number of current processes */
	char _f[22];             /* Pads structure to 64 bytes */
};
.fi
.RE
e o tamanho era dado em bytes. Mas a partir do Linux 2.3.23 (i386), 2.3.48
(todas as arquiteturas) a estrutura 
.RS
.nf
struct sysinfo {
	long uptime;             /* Seconds since boot */
	unsigned long loads[3];  /* 1, 5, and 15 minute load averages */
	unsigned long totalram;  /* Total usable main memory size */
	unsigned long freeram;   /* Available memory size */
	unsigned long sharedram; /* Amount of shared memory */
	unsigned long bufferram; /* Memory used by buffers */
	unsigned long totalswap; /* Total swap space size */
	unsigned long freeswap;  /* swap space still available */
	unsigned short procs;    /* Number of current processes */
	unsigned long totalhigh; /* Total high memory size */
	unsigned long freehigh;  /* Available high memory size */
	unsigned int mem_unit;   /* Memory unit size in bytes */
	char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding for libc5 */
};
.fi
.RE
e os tamanhos so dados como mltiplo de \fImem_unit\fP bytes.
.B sysinfo
prov um meio simples de obteno de todas as estatsticas do sistema. Isto  mais
portvel que ler \fI/dev/kmem\fP.
Para um exemplo de uso, veja intro(2).
.SH "VALORES RETORNADOS"
Em caso de sucesso, zero  retornado. Caso contrrio, \-1  retornado, e
.I errno
 selecionado adequadamente.
.SH ERROS
.TP
.B EFAULT
aponta para uma \fIstruct\ sysinfo\fP invlida
.SH "DE ACORDO COM"
Esta funo  especfica do Linux, e no deveria ser usada em programas que
pretendem ser portveis.
.sp
O kernel do linux tem uma chamada de sistema sysinfo desde o 0.98.pl6.
A libc do linux contm uma rotina sysinfo() desde 5.3.5, e
a glibc a tem desde a verso 1.90.
.SH "VEJA TAMBM"
.BR proc (5)
.SH TRADUZIDO POR LDP-BR em 21/08/2000
\&\fR\&\f(CWAndr L. Fassone Canova <lonelywolf@blv.com.br> (traduo)\fR
\&\fR\&\f(CWxxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (reviso)\fR
 |