Sponsored Content
Full Discussion: linux kernel mm_struct
Top Forums Programming linux kernel mm_struct Post 302576151 by vistastar on Wednesday 23rd of November 2011 10:09:07 PM
Old 11-23-2011
linux kernel mm_struct

In this struct there are start_stack(start address of user space stack) and stack_vm(mount of pages of stack).

But why it doesn't have a member like end_stack?
Is it right to figure the end address of stack using start_stack+ PAGESIZE*tack_vm?

The start and the end of a stack figured out like this don't match that shown in /proc/PID/maps.

read from mm_struct:
Code:
Start address of stack:bfeec8a0; Stack_vm:33

read from /proc/PID/maps
Code:
bfecd000-bfeee000 rw-p 00000000 00:00 0          [stack]

Also, Stack_vm does'nt match "ulimit -s". Why?
Stack_vm shows 33*PAGESIZE = 33*4kb, but ulimit -s shows 8192kb.
 

4 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Linux Kernel 0.0.0.1

I'm looking to download the oldest version of the linux kernel that I can, just to look at it. Does anyone know where I can get it (or a slightyly later version) from? Any help on this quest would be great, thanks. Paul (3 Replies)
Discussion started by: KrazyGuyPaul
3 Replies

2. UNIX for Dummies Questions & Answers

new linux on old kernel

is it possible to run REDHAT 7 (asplinux 7.2) on kernel 1.XXXX ? wil be FIRST_NEED programs work ? (0 Replies)
Discussion started by: MR.Z
0 Replies

3. Linux

Linux kernel

Hi All ! Is linux kernel preemptive or non-preemptive? My understanding is preemptive kernel. is it correct? Thanks & Regards Venkat Gopu (4 Replies)
Discussion started by: venkatgopu
4 Replies

4. Linux

Linux kernel 2.6.20?

Dear All Can you please let me know what is the Linux distribution name for kernel 2.6.20? Thank you in advance (4 Replies)
Discussion started by: hadimotamedi
4 Replies
sigstack(2)							System Calls Manual						       sigstack(2)

Name
       sigstack - set or get signal stack context

Syntax
       #include <signal.h>

       struct sigstack {
       caddr_t	 ss_sp;
       int  ss_onstack;
       };

       sigstack(ss, oss)
       struct sigstack *ss, *oss;

Description
       The  system  call  allows users to define an alternate stack on which signals are to be processed.  If ss is nonzero, it specifies a signal
       stack on which to deliver signals and tells the system if the process is currently executing on that stack.  When a signal's  action  indi-
       cates  its handler should execute on the signal stack (specified with a call), the system checks to see if the process is currently execut-
       ing on that stack.  If the process is not currently executing on the signal stack, the system arranges a switch to the signal stack for the
       duration of the signal handler's execution.  If oss is nonzero, the current signal stack state is returned.

       Signal stacks are not grown'automatically, as is done for the normal stack.  If the stack overflows, unpredictable results may occur.

Return Values
       Upon successful completion, a value of zero (0) is returned.  Otherwise, a value of -1 is returned and errno is set to indicate the error.

Diagnostics
       The system call fails and the signal stack context remains unchanged, if one of the following occurs.

       [EFAULT]       Either ss or oss points to memory that is not a valid part of the process address space.

See Also
       sigvec(2), setjmp(3)

																       sigstack(2)
All times are GMT -4. The time now is 03:33 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy