03-24-2011
Quote:
Originally Posted by
jionnet
This is fine. But I want to protect only some byte of memory.
Doesn't work that way.
Did you see my suggestion in the other thread of using pointers to pages?
Quote:
Else is there any way to trigger an function (like HANDLER) when some data been written over that memory?
You could use a hardware memory watch in a debugger. These are very limited in capability and system+architecture dependent -- an AMD64 processor running in 64-bit mode can only watch four different 32-bit spots of memory in hardware AFAIK.
10 More Discussions You Might Find Interesting
1. Programming
Hi.
Can someone to help me in a segfault problem?
I have a big C++ program that crash from time to time because it receive the SIGSEGV signal.
So my question is: Can I find, without using gdb or other debugging tools, which line from source code cause that problem? Or if exist some gdb API... (1 Reply)
Discussion started by: vaidac_coder
1 Replies
2. SCO
Hi all... am not so much brilliant in this area... here i think many good hearted peoples around... so if anybody have intention to reply for my problem please give me a cut and clear picture of how... Thanks.
ok comming to my problem...
In our MHC server (Sco Unix 4.*) running 19 C process... (1 Reply)
Discussion started by: yocks
1 Replies
3. Programming
Here is my initiating code:
#define NUM 20
static struct tab {
int count;
int use;
} tab;
int curtab = 0;
int tab_create(int tab_count)
{
curtab++;
tab.use = 1;
tab.count = tab_count;
kprintf("here!");
return curtab;
} (2 Replies)
Discussion started by: micmac700
2 Replies
4. Programming
Hi
I am getting a strange segmentation fault during the unwind
process. I am trying to throw an object of an Exception class.
During the DoThrow (in libC.a) the stack starts growing until a
Signal is received.
The object thrown is of a class that inherits from a common class,
and the signal... (0 Replies)
Discussion started by: barak
0 Replies
5. Programming
Consider the following program.
int main(){
struct a_t {
int *a;
unsigned char b;
unsigned char c;
unsigned char d;
} A;
unsigned char e;
unsigned char f;
unsigned char g;
g = 1;
A.a = (int *)&g; -> Memory misalignment... (1 Reply)
Discussion started by: balaji280283
1 Replies
6. UNIX for Advanced & Expert Users
Hi.
This might be a strange request, but does anyone have any idea on a simple shell script that would use more and more memory as it ran? Like a purposeful leak.
I want to test the behaviour of an already running program when the machine runs out of memory.
Thanks! (4 Replies)
Discussion started by: rebelbuttmunch
4 Replies
7. Programming
i wrote handler for sigsegv such that i can allocate memory for a variable to which
sigsegv generated for illlegal acces of memory.
my code is
#include <signal.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char *j;
void segv_handler(int dummy)
{
j=(char *)malloc(10);
... (4 Replies)
Discussion started by: pavan6754
4 Replies
8. UNIX and Linux Applications
Hello,
Can anybody tell me how can i handle segmentation fault signal, in C code? (2 Replies)
Discussion started by: mustus
2 Replies
9. Solaris
I receive a sigsegv failure. I was under the impression that a core file is created everytime a sigsegv occurrs and the process is terminated. I have had two recent occurrances of a core file not being created. Does anyone know why a core file would not be created. (2 Replies)
Discussion started by: amp4cats
2 Replies
10. Programming
The problem: I need to work with large arrays and after one of my structures grew in size my program started getting segmentation fault.
My code where I allocate the arrays:
static R1 *tarr;
static R2 *rarr;
proc_init_mem()
{
const int t_sz = sizeof(R1) *... (9 Replies)
Discussion started by: migurus
9 Replies
LEARN ABOUT POSIX
numastat
NUMACTL(8) Linux Administrator's Manual NUMACTL(8)
NAME
numastat - Print statistics about NUMA memory allocation
SYNOPSIS
numastat
DESCRIPTION
numastat displays NUMA allocations statistics from the kernel memory allocator. Each process has NUMA policies that specifies on which
node pages are allocated. See set_mempolicy(2) or numactl(8) on details of the available policies. The numastat counters keep track on
what nodes memory is finally allocated.
The counters are separated for each node. Each count event is the allocation of a page of memory.
numa_hit is the number of allocations where an allocation was intended for that node and succeeded there.
numa_miss shows how often an allocation was intended for this node, but ended up on another node due to low memory.
numa_foreign is the number of allocations that were intended for another node, but ended up on this node. Each numa_foreign event has a
numa_miss on another node.
interleave_hit is the number of interleave policy allocations that were intended for a specific node and succeeded there.
local_node is incremented when a process running on the node allocated memory on the same node.
other_node is incremented when a process running on another node allocated memory on that node.
SEE ALSO
numactl(8) set_mempolicy(2) numa(3)
NOTES
numastat output is only available on NUMA systems.
numastat assumes the output terminal has a width of 80 characters and tries to format the output accordingly.
EXAMPLES
watch -n1 numastat
watch -n1 --differences=accumulative numastat
FILES
/sys/devices/system/node/node*/numastat
BUGS
The output formatting on machines with a large number of nodes could be improved.
SuSE Labs Nov 2004 NUMACTL(8)