You can't protect an individual address. You can only protect entire pages -- 4K blocks on PC systems, 8K blocks on some others -- with mprotect. You can call mprotect on any valid memory in your process but it must be on page boundaries.
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)
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)
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)
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)
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)
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)
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)
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 OPENDARWIN
getpagesize
getpagesize(3C) Standard C Library Functions getpagesize(3C)NAME
getpagesize - get system page size
SYNOPSIS
#include <unistd.h>
int getpagesize(void);
DESCRIPTION
The getpagesize() function returns the number of bytes in a page. Page granularity is the granularity of many of the memory management
calls.
The page size is a system page size and need not be the same as the underlying hardware page size.
The getpagesize() function is equivalent to sysconf(_SC_PAGE_SIZE) and sysconf(_SC_PAGESIZE). See sysconf(3C).
RETURN VALUES
The getpagesize() function returns the current page size.
ERRORS
No errors are defined.
USAGE
The value returned by getpagesize() need not be the minimum value that malloc(3C) can allocate. Moreover, the application cannot assume
that an object of this size can be allocated with malloc().
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO pagesize(1), brk(2), getrlimit(2), mmap(2), mprotect(2), munmap(2), malloc(3C), msync(3C), sysconf(3C), attributes(5)SunOS 5.10 27 Jun 2000 getpagesize(3C)