Remove support for Tru64 and OSF
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>pull/574/head
parent
bc0489413a
commit
57a00bdcbd
@ -1,83 +0,0 @@
|
|||||||
/*
|
|
||||||
* This is memory_tru64.cpp to retrieve memory information under Tru64/Alpha.
|
|
||||||
*
|
|
||||||
* Implemented by Tom Leitner, Tom@radar.tu-graz.ac.at
|
|
||||||
*
|
|
||||||
* WARNING: This module requires linking with -lmach
|
|
||||||
*
|
|
||||||
* This routine is based on m_decosf1.c from the "top" program written by:
|
|
||||||
*
|
|
||||||
* AUTHOR: Anthony Baxter, <anthony@aaii.oz.au>
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <unistd.h>
|
|
||||||
#include <sys/socket.h>
|
|
||||||
#include <sys/mbuf.h>
|
|
||||||
#include <net/route.h>
|
|
||||||
#include <sys/table.h>
|
|
||||||
extern "C" {
|
|
||||||
#include <mach/mach_traps.h>
|
|
||||||
}
|
|
||||||
#include <mach/vm_statistics.h>
|
|
||||||
|
|
||||||
#define pagetob(size) (MEMORY(1024L) * ((long) (size) << (long) pageshift))
|
|
||||||
#define LOG1024 10
|
|
||||||
|
|
||||||
extern "C" void vm_statistics(task_t, vm_statistics_data_t*);
|
|
||||||
|
|
||||||
void KMemoryWidget::update()
|
|
||||||
{
|
|
||||||
int pageshift; /* log base 2 of the pagesize */
|
|
||||||
int pagesize;
|
|
||||||
vm_statistics_data_t vmstats;
|
|
||||||
int swap_pages=0,swap_free=0,i;
|
|
||||||
struct tbl_swapinfo swbuf;
|
|
||||||
|
|
||||||
/* get the page size with "getpagesize" and calculate pageshift from it */
|
|
||||||
|
|
||||||
pagesize = getpagesize();
|
|
||||||
pageshift = 0;
|
|
||||||
while (pagesize > 1) {
|
|
||||||
pageshift++;
|
|
||||||
pagesize >>= 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* we only need the amount of log(2)1024 for our conversion */
|
|
||||||
|
|
||||||
pageshift -= LOG1024;
|
|
||||||
|
|
||||||
/* memory information */
|
|
||||||
/* this is possibly bogus - we work out total # pages by */
|
|
||||||
/* adding up the free, active, inactive, wired down, and */
|
|
||||||
/* zero filled. Anyone who knows a better way, TELL ME! */
|
|
||||||
/* Change: dont use zero filled. */
|
|
||||||
|
|
||||||
(void) ::vm_statistics(::task_self(), &vmstats);
|
|
||||||
|
|
||||||
/* thanks DEC for the table() command. No thanks at all for */
|
|
||||||
/* omitting the man page for it from OSF/1 1.2, and failing */
|
|
||||||
/* to document SWAPINFO in the 1.3 man page. Lets hear it for */
|
|
||||||
/* include files. */
|
|
||||||
|
|
||||||
i=0;
|
|
||||||
while(table(TBL_SWAPINFO,i,&swbuf,1,sizeof(struct tbl_swapinfo))>0) {
|
|
||||||
swap_pages += swbuf.size;
|
|
||||||
swap_free += swbuf.free;
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
Memory_Info[TOTAL_MEM] = pagetob((vmstats.free_count +
|
|
||||||
vmstats.active_count +
|
|
||||||
vmstats.inactive_count +
|
|
||||||
vmstats.wire_count));
|
|
||||||
Memory_Info[FREE_MEM] = pagetob(vmstats.free_count);
|
|
||||||
Memory_Info[SHARED_MEM] = NO_MEMORY_INFO; /* FIXME ?? */
|
|
||||||
Memory_Info[BUFFER_MEM] = NO_MEMORY_INFO; /* FIXME ?? */
|
|
||||||
#ifdef __GNUC__
|
|
||||||
#warning "FIXME: Memory_Info[CACHED_MEM]"
|
|
||||||
#endif
|
|
||||||
Memory_Info[CACHED_MEM] = NO_MEMORY_INFO; /* cached memory in ram */
|
|
||||||
Memory_Info[SWAP_MEM] = pagetob(swap_pages);
|
|
||||||
Memory_Info[FREESWAP_MEM] = pagetob(swap_free);
|
|
||||||
}
|
|
Loading…
Reference in New Issue