1 research outputs found

    Thread segment stacks

    No full text
    Abstract This paper presents enhanced memory management concepts and their implementation providing better support for multi threading. The virtual address space of the multi threaded process is dynamically partitioned by a dynamic set of cooperating managers. Special thoughts are given to detect and solve possible thread stack and heap overows and collisions. Both stacks and heaps associated with threads are organized non-contiguously with linear segments to fully exploit possibly large virtual address spaces. Crucial for the e ciency of this approach are modi cations of the compiler and parts of the runtime system. The proposed solutions are implemented an evaluated on the SUN Sparc V9architecture. Keywords: memory management operating systems, multi threading, 1 New Features and Flaws Multi-tasking operating systems (OS) usually provide private address spaces for processes. In order to share data amongst processes, IPC interfaces such as shared mappings, signals, or sockets along with error prone techniques like pointer swizzling have to be used. Of course, tight coupling of processes needed for cooperative parallel algorithms can not be achieved this way without considerable overhead. By employing a single virtual address space (VA) for all processes this and other problems can be evaded. Each memory object is uniformly iden-0 This project is sponsored by the DFG (German Researc
    corecore