The ROme OpTimistic Simulator  2.0.0
A General-Purpose Multithreaded Parallel/Distributed Simulation Platform
ecs.c File Reference

Event & Cross State Synchornization. More...

#include <unistd.h>
#include <stddef.h>
#include <string.h>
#include <signal.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/types.h>
#include <stropts.h>
#include <core/core.h>
#include <mm/mm.h>
#include <scheduler/scheduler.h>
#include <scheduler/process.h>
#include <communication/communication.h>
#include <arch/ult.h>
#include <arch/x86/disassemble.h>
#include <arch/x86/linux/cross_state_manager/cross_state_manager.h>
+ Include dependency graph for ecs.c:

Go to the source code of this file.

Macros

#define __NR_OPEN   2
 

Functions

void rootsim_cross_state_dependency_handler (void)
 
void ecs_secondary (void)
 
void ecs_initiate (void)
 
void ECS (void)
 
void ecs_init (void)
 
void lp_alloc_thread_init (void)
 
void lp_alloc_schedule (void)
 
void lp_alloc_deschedule (void)
 
void setup_ecs_on_segment (msg_t *msg)
 
void lp_alloc_thread_fini (void)
 
void ecs_send_pages (msg_t *msg)
 
void ecs_install_pages (msg_t *msg)
 
void unblock_synchronized_objects (struct lp_struct *lp)
 
void remote_memory_init (void)
 

Variables

void(* callback_function )(void)
 
static ioctl_info lp_memory_ioctl_info
 This variable keeps track of information needed by the Linux Kernel Module for activating cross-LP memory accesses.
 
static int ioctl_fd
 
static __thread int pgd_ds
 Per Worker-Thread Memory View.
 
static __thread fault_info_t fault_info
 Per Worker-Thread Fault Info Structure.
 

Detailed Description

Event & Cross State Synchornization.

Event & Cross State Synchronization. This module implements the userspace handler of the artificially induced memory faults to implement transparent distributed memory.

This file is part of ROOT-Sim (ROme OpTimistic Simulator).

ROOT-Sim is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; only version 3 of the License applies.

ROOT-Sim is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with ROOT-Sim; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Author
Alessandro Pellegrini
Francesco Quaglia
Matteo Principe

Definition in file ecs.c.