summaryrefslogtreecommitdiff
path: root/src/arch/sparc/linux/linux.hh
diff options
context:
space:
mode:
authorVince Weaver <vince@csl.cornell.edu>2009-09-15 22:36:47 -0700
committerVince Weaver <vince@csl.cornell.edu>2009-09-15 22:36:47 -0700
commit9b8e61beb38af081454ffd5e06d14458080b98e0 (patch)
tree8855dd8467c3ae14f00eb413478976501ce3f9f3 /src/arch/sparc/linux/linux.hh
parent0f569b4d9dd5b7be253d45c22e9c40f615e90ecd (diff)
downloadgem5-9b8e61beb38af081454ffd5e06d14458080b98e0.tar.xz
Syscalls: Implement sysinfo() syscall.
Diffstat (limited to 'src/arch/sparc/linux/linux.hh')
-rw-r--r--src/arch/sparc/linux/linux.hh32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/arch/sparc/linux/linux.hh b/src/arch/sparc/linux/linux.hh
index b1dc691ce..1f7567d43 100644
--- a/src/arch/sparc/linux/linux.hh
+++ b/src/arch/sparc/linux/linux.hh
@@ -77,6 +77,22 @@ class SparcLinux : public Linux
static const int NUM_OPEN_FLAGS;
static const unsigned TGT_MAP_ANONYMOUS = 0x20;
+
+ typedef struct {
+ int64_t uptime; /* Seconds since boot */
+ uint64_t loads[3]; /* 1, 5, and 15 minute load averages */
+ uint64_t totalram; /* Total usable main memory size */
+ uint64_t freeram; /* Available memory size */
+ uint64_t sharedram; /* Amount of shared memory */
+ uint64_t bufferram; /* Memory used by buffers */
+ uint64_t totalswap; /* Total swap space size */
+ uint64_t freeswap; /* swap space still available */
+ uint16_t procs; /* Number of current processes */
+ uint64_t totalhigh; /* Total high memory size */
+ uint64_t freehigh; /* Available high memory size */
+ uint64_t mem_unit; /* Memory unit size in bytes */
+ } tgt_sysinfo;
+
};
class Sparc32Linux : public SparcLinux
@@ -105,6 +121,22 @@ class Sparc32Linux : public SparcLinux
uint32_t __unused4;
uint32_t __unused5;
} tgt_stat64;
+
+ typedef struct {
+ int32_t uptime; /* Seconds since boot */
+ uint32_t loads[3]; /* 1, 5, and 15 minute load averages */
+ uint32_t totalram; /* Total usable main memory size */
+ uint32_t freeram; /* Available memory size */
+ uint32_t sharedram; /* Amount of shared memory */
+ uint32_t bufferram; /* Memory used by buffers */
+ uint32_t totalswap; /* Total swap space size */
+ uint32_t freeswap; /* swap space still available */
+ uint16_t procs; /* Number of current processes */
+ uint32_t totalhigh; /* Total high memory size */
+ uint32_t freehigh; /* Available high memory size */
+ uint32_t mem_unit; /* Memory unit size in bytes */
+ } tgt_sysinfo;
+
};
#endif