![]() |
ATLAS Offline Software
|
Functions | |
| const void * | page_address (const void *addr) |
| void * | page_address (void *addr) |
| void * | next_page_address (void *addr) |
| int | page_protect (void *addr, int prot) |
| template<typename T> | |
| size_t | page_protect (T *addr, int prot) |
| protect page containing addr, from page boundary to addr+sizeof(T). | |
Variables | |
| str | __author__ = 'Wim Lavrijsen (WLavrijsen@lbl.gov)' |
| str | __doc__ = 'For details about athena.py, run "less `which athena.py`"' |
| opts = aop.parse(legacy_args=True) | |
| list | path_list = ['./'] + os.environ.get('PYTHONPATH', '').split(os.pathsep) |
| file_path | |
| CA | |
| acc = pickle.load(f) | |
| value | |
| path | |
| python interpreter configuration --------------------------------------— | |
| ps1 | |
| rename ourselfs to athena, both the prompt and the process (for top & ps) | |
| ps2 | |
| libc = ctypes.cdll.LoadLibrary( ctypes_find_library('c') ) | |
| int | exitcode = 0 |
| run_name | |
| _msg = log | |
| _athena_python_profiler | |
| const size_t | PAGESIZE = sysconf(_SC_PAGE_SIZE) |
date"
# defaults
export USETCMALLOC=0
export USEIMF=0
export USEEXCTRACE=0
export USEEXCABORT=1
otherargs=()
# but use tcmalloc by default if TCMALLOCDIR is defined
if [ -n "$TCMALLOCDIR" ]; then
export USETCMALLOC=1
fi
# parse LD_PRELOAD related command line arguments
for a in "$@"
do
case "$a" in
--leak-check*) USETCMALLOC=0;;
--delete-check*) USETCMALLOC=0;;
--stdcmalloc) USETCMALLOC=0;;
--tcmalloc) USETCMALLOC=1;;
--stdcmath) USEIMF=0;;
--imf) USEIMF=1;;
--exctrace) USEEXCTRACE=1;;
--no-excabort) USEEXCABORT=0;;
--preloadlib*) export ATHENA_ADD_PRELOAD=${a#*=};;
--drop-and-reload) ATHENA_DROP_RELOAD=1;;
*) otherargs+=("$a");;
esac
done
# Do the actual preloading via LD_PRELOAD and save the original value
export LD_PRELOAD_ORIG=${LD_PRELOAD}
source `which athena_preload.sh `
# Now resurrect ourselves as python script
python_path=`which python`
"exec" "$python_path" "-tt" "$0" "$@";
| void * athena::next_page_address | ( | void * | addr | ) |
Definition at line 17 of file page_access.cxx.
| const void * athena::page_address | ( | const void * | addr | ) |
Definition at line 11 of file page_access.cxx.
| void * athena::page_address | ( | void * | addr | ) |
Definition at line 14 of file page_access.cxx.
| size_t athena::page_protect | ( | T * | addr, |
| int | prot ) |
protect page containing addr, from page boundary to addr+sizeof(T).
Definition at line 20 of file page_access.h.
| int athena::page_protect | ( | void * | addr, |
| int | prot ) |
Definition at line 21 of file page_access.cxx.
|
private |
|
private |
| athena.file_path |
| athena.libc = ctypes.cdll.LoadLibrary( ctypes_find_library('c') ) |
| const size_t athena.PAGESIZE = sysconf(_SC_PAGE_SIZE) |
Definition at line 9 of file page_access.cxx.
| athena.path |
| list athena.path_list = ['./'] + os.environ.get('PYTHONPATH', '').split(os.pathsep) |
| athena.ps1 |