09-21-2005
Replace:
dev =*((unsigned *)((char *)key.data + s_docname));
with:
memcpy(dev, keybuf + s_docname, sizeof(unsigned));
and make a similar for inode.
10 More Discussions You Might Find Interesting
1. Solaris
Hi, I try to marshal a unsigned int and a char * into a buffer, and then unmarshal them later to get them out. I need to put the char * in the front and unsigned int at the end of the buffer. However, my system always give me "BUS ERROR". I am using Sun Sparcs Sloris 2.10.
My code to marshal the... (1 Reply)
Discussion started by: nj302
1 Replies
2. Programming
Hi All
I have a structure pointer and setting that pointer as NULL. When i tried to access the elements in the structure i am getting the error message.
"Cannot access memory at address 0x8". This i tried in LINUX.
When the same program is tried thro UNIX (HP-UX), i am not getting the message... (8 Replies)
Discussion started by: rkraj
8 Replies
3. Solaris
Hi,
The following error message occured when I was trying to reboot my SUN machine:
Memory address not aligned
Its a Sun 280 R , Ultra SPARC III
What should I do.
Varma (3 Replies)
Discussion started by: gunnervarma
3 Replies
4. Solaris
Hi,
Im working on Solaris 9 on SPARC-32 bit running on an Ultra-80, and I have to find out the following:-
1. Total Physical Memory in the system(total RAM).
2. Available Physical Memory(i.e. RAM Usage)
3. Total (Logical) Memory in the system
4. Available (Logical) Memory.
I know... (4 Replies)
Discussion started by: 0ktalmagik
4 Replies
5. Solaris
Is it possible to restrict physical memory in solaris zone with zone.max-locked-memory just like we can do with rcapd ? I do not want to used rcapd (1 Reply)
Discussion started by: fugitive
1 Replies
6. UNIX for Dummies Questions & Answers
hi,
For some special reason , I'd like to control the memory address for the shared libraries in my dynamically linked process.
And it is the "ld" which interpret the dynamically linked library, and in my system, the "ld-linux.so.2" is put at 0x00812000. Then I use "prelink -r" command to change... (0 Replies)
Discussion started by: zerocool_08
0 Replies
7. Linux
hi,
For some special reason , I'd like to control the memory address for the shared libraries in my dynamically linked process.
And it is the "ld" which interpret the dynamically linked library, and in my system, the "ld-linux.so.2" is put at 0x00812000. Then I use "prelink -r" command to... (3 Replies)
Discussion started by: zerocool_08
3 Replies
8. UNIX for Advanced & Expert Users
I want address of current virtual memory block?
i am using fedora10:wall::wall: (1 Reply)
Discussion started by: powyama
1 Replies
9. Solaris
Hi Experts,
Our servers running Solaris 10 with SAP Application. The memory utilization always >90%, but the process on SAP is too less even nothing.
Why memory utilization on solaris always looks high?
I have statement about memory on solaris, is this true:
Memory in solaris is used for... (4 Replies)
Discussion started by: edydsuranta
4 Replies
10. UNIX for Beginners Questions & Answers
How would I write a value to a physical memory address?
I was able to read a physical memory address (for example, 0x400) using this line:
dd if=/dev/mem count=4 bs=1 skip=$(( 0x400 ))
But I get an error:
dd: 'standard input': cannot skip to specified offset
when I try to write using... (1 Reply)
Discussion started by: rabrandt
1 Replies
LEARN ABOUT REDHAT
sysinfo
SYSINFO(2) Linux Programmer's Manual SYSINFO(2)
NAME
sysinfo - returns information on overall system statistics
SYNOPSIS
#include <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);
DESCRIPTION
Until Linux 2.3.16, sysinfo used to return information in the following structure:
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 */
};
and the sizes were given in bytes. Since Linux 2.3.23 (i386), 2.3.48 (all architectures) the structure is
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 */
};
and the sizes are given as multiples of mem_unit bytes.
sysinfo provides a simple way of getting overall system statistics. This is more portable than reading /dev/kmem. For an example of its
use, see intro(2).
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
ERRORS
EFAULT pointer to struct sysinfo is invalid
CONFORMING TO
This function is Linux-specific, and should not be used in programs intended to be portable.
The Linux kernel has a sysinfo system call since 0.98.pl6. Linux libc contains a sysinfo() routine since 5.3.5, and glibc has one since
1.90.
SEE ALSO
proc(5)
Linux 2.0 1997-08-25 SYSINFO(2)