mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-03 01:39:21 +02:00
36 lines
1.7 KiB
Bash
Executable file
36 lines
1.7 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
#------------------------------------
|
|
# Ghidra headless ISF Server launch
|
|
#------------------------------------
|
|
|
|
# Maximum heap memory may be changed if default is inadequate. This will generally be up to 1/4 of
|
|
# the physical memory available to the OS. Uncomment MAXMEM setting if non-default value is needed.
|
|
MAXMEM=2G
|
|
|
|
# Launch mode can be changed to one of the following: fg, debug, debug-suspend
|
|
LAUNCH_MODE=fg
|
|
|
|
# Set the debug address to listen on.
|
|
# NOTE: This variable is ignored if not launching in a debugging mode.
|
|
DEBUG_ADDRESS=127.0.0.1:13002
|
|
|
|
# Limit the # of garbage collection and JIT compiler threads in case many headless
|
|
# instances are run in parallel. By default, Java will assign one thread per core
|
|
# which does not scale well on servers with many cores.
|
|
VMARG_LIST="-XX:ParallelGCThreads=2 -XX:CICompilerCount=2 "
|
|
|
|
# Resolve symbolic link if present and get the directory this script lives in.
|
|
# NOTE: "readlink -f" is best but works on Linux only, "readlink" will only work if your PWD
|
|
# contains the link you are calling (which is the best we can do on macOS), and the "echo" is the
|
|
# fallback, which doesn't attempt to do anything with links.
|
|
SCRIPT_FILE="$(readlink -f "$0" 2>/dev/null || readlink "$0" 2>/dev/null || echo "$0")"
|
|
SCRIPT_DIR="${SCRIPT_FILE%/*}"
|
|
SUPPORT_DIR="${SCRIPT_DIR}/../../../../support"
|
|
if ! [ -f "${SUPPORT_DIR}/launch.properties" ]; then
|
|
SUPPORT_DIR="${SCRIPT_DIR}/../../../RuntimeScripts/Linux/support"
|
|
fi
|
|
|
|
# Launch ISF Server.
|
|
# DEBUG_ADDRESS set via environment for launch.sh
|
|
DEBUG_ADDRESS=${DEBUG_ADDRESS} "${SUPPORT_DIR}"/launch.sh "${LAUNCH_MODE}" jdk Ghidra-ISF "${MAXMEM}" "${VMARG_LIST}" ghidra.dbg.isf.IsfServerLauncher "$@"
|