gem5 v24.0.0.0
|
#include <linux.hh>
Classes | |
struct | rlimit |
Limit struct for getrlimit/setrlimit. More... | |
struct | tgt_fsid_t |
struct | tgt_stat |
struct | tgt_statfs |
struct | tgt_sysinfo |
struct | timespec |
Public Types | |
typedef int64_t | time_t |
typedef uint32_t | size_t |
typedef int64_t | off_t |
Public Types inherited from gem5::Linux | |
typedef uint64_t | size_t |
Basic Linux types. | |
typedef uint64_t | off_t |
typedef int64_t | time_t |
typedef int64_t | clock_t |
typedef uint32_t | uid_t |
typedef uint32_t | gid_t |
Public Types inherited from gem5::OperatingSystem | |
typedef void | tgt_stat |
Stat buffer. | |
typedef void | tgt_stat64 |
Static Public Member Functions | |
static void | archClone (uint64_t flags, Process *pp, Process *cp, ThreadContext *ptc, ThreadContext *ctc, uint64_t stack, uint64_t tls) |
Static Public Member Functions inherited from gem5::Linux | |
static bool | isTtyReq (unsigned req) |
Return true for the ioctl codes for which we return ENOTTY without printing a warning, since we know that ENOTTY is the correct thing to return (and not just a sign that we don't recognize the ioctl code. | |
static int | openSpecialFile (std::string path, Process *process, ThreadContext *tc) |
static std::string | procMeminfo (Process *process, ThreadContext *tc) |
static std::string | etcPasswd (Process *process, ThreadContext *tc) |
static std::string | procSelfMaps (Process *process, ThreadContext *tc) |
static std::string | cpuOnline (Process *process, ThreadContext *tc) |
static std::string | devRandom (Process *process, ThreadContext *tc) |
Static Public Member Functions inherited from gem5::OperatingSystem | |
static int | openSpecialFile (std::string path, Process *process, ThreadContext *tc) |
Static Public Attributes | |
static const int | TGT_SIGHUP = 1 |
static const int | TGT_SIGINT = 2 |
static const int | TGT_SIGQUIT = 3 |
static const int | TGT_SIGILL = 4 |
static const int | TGT_SIGTRAP = 5 |
static const int | TGT_SIGABRT = 6 |
static const int | TGT_SIGIOT = 6 |
static const int | TGT_SIGEMT = 7 |
static const int | TGT_SIGFPE = 8 |
static const int | TGT_SIGKILL = 9 |
static const int | TGT_SIGBUS = 10 |
static const int | TGT_SIGSEGV = 11 |
static const int | TGT_SIGSYS = 12 |
static const int | TGT_SIGPIPE = 13 |
static const int | TGT_SIGALRM = 14 |
static const int | TGT_SIGTERM = 15 |
static const int | TGT_SIGURG = 16 |
static const int | TGT_SIGSTOP = 17 |
static const int | TGT_SIGTSTP = 18 |
static const int | TGT_SIGCONT = 19 |
static const int | TGT_SIGCHLD = 20 |
static const int | TGT_SIGCLD = 20 |
static const int | TGT_SIGTTIN = 21 |
static const int | TGT_SIGTTOU = 22 |
static const int | TGT_SIGPOLL = 23 |
static const int | TGT_SIGIO = 23 |
static const int | TGT_SIGXCPU = 24 |
static const int | TGT_SIGXFSZ = 25 |
static const int | TGT_SIGVTALRM = 26 |
static const int | TGT_SIGPROF = 27 |
static const int | TGT_SIGWINCH = 28 |
static const int | TGT_SIGLOST = 29 |
static const int | TGT_SIGPWR = 29 |
static const int | TGT_SIGUSR1 = 30 |
static const int | TGT_SIGUSR2 = 31 |
static constexpr int | TGT_O_RDONLY = 0x000000 |
open(2) flag values. | |
static constexpr int | TGT_O_WRONLY = 0x000001 |
O_WRONLY. | |
static constexpr int | TGT_O_RDWR = 0x000002 |
O_RDWR. | |
static constexpr int | TGT_O_CREAT = 0x000200 |
O_CREAT. | |
static constexpr int | TGT_O_EXCL = 0x000800 |
O_EXCL. | |
static constexpr int | TGT_O_NOCTTY = 0x008000 |
O_NOCTTY. | |
static constexpr int | TGT_O_TRUNC = 0x000400 |
O_TRUNC. | |
static constexpr int | TGT_O_APPEND = 0x000008 |
O_APPEND. | |
static constexpr int | TGT_O_NONBLOCK = 0x004000 |
O_NONBLOCK. | |
static constexpr int | TGT_O_SYNC = 0x002000 |
O_SYNC. | |
static constexpr int | TGT_FSYNC = 0x002000 |
FSYNC. | |
static constexpr int | TGT_FASYNC = 0x000040 |
FASYNC. | |
static constexpr int | TGT_O_DSYNC = 0x010000 |
O_DSYNC. | |
static constexpr int | TGT_O_CLOEXEC = 0x040000 |
O_CLOEXEC. | |
static constexpr int | TGT_O_NOINHERIT = 0x040000 |
O_NOINHERIT. | |
static constexpr int | TGT_O_DIRECT = 0x080000 |
O_DIRECT. | |
static constexpr int | TGT_O_NOFOLLOW = 0x100000 |
O_NOFOLLOW. | |
static constexpr int | TGT_O_DIRECTORY = 0x200000 |
O_DIRECTORY. | |
static constexpr int | TGT_O_LARGEFILE = 0x020000 |
O_LARGEFILE. | |
static constexpr int | TGT_O_NOATIME = 0x800000 |
O_NOATIME. | |
static constexpr int | TGT_O_PATH = 0x400000 |
O_PATH. | |
static constexpr unsigned | TGT_MAP_SHARED = 0x0001 |
static constexpr unsigned | TGT_MAP_PRIVATE = 0x0002 |
static constexpr unsigned | TGT_MAP_FIXED = 0x0010 |
static constexpr unsigned | TGT_MAP_ANONYMOUS = 0x0020 |
static constexpr unsigned | TGT_MAP_POPULATE = 0x1000 |
static constexpr unsigned | TGT_MREMAP_FIXED = 0x0020 |
Static Public Attributes inherited from gem5::RiscvLinux | |
static const ByteOrder | byteOrder = ByteOrder::little |
Static Public Attributes inherited from gem5::Linux | |
static const int | _SYS_NMLN = 65 |
Length of strings in struct utsname (plus 1 for null char). | |
static const int | M5_SC_CLK_TCK = 100 |
Clock ticks per second, for times(). | |
static const unsigned | TGT_TCGETS = 0x5401 |
ioctl() command codes. | |
static const unsigned | TGT_TCGETA = 0x5405 |
static const unsigned | TGT_TCSETAW = 0x5407 |
static const unsigned | TGT_FIONREAD = 0x541B |
static const unsigned | TGT_RLIMIT_CPU = 0 |
Resource constants for getrlimit(). | |
static const unsigned | TGT_RLIMIT_FSIZE = 1 |
static const unsigned | TGT_RLIMIT_DATA = 2 |
static const unsigned | TGT_RLIMIT_STACK = 3 |
static const unsigned | TGT_RLIMIT_CORE = 4 |
static const unsigned | TGT_RLIMIT_RSS = 5 |
static const unsigned | TGT_RLIMIT_NPROC = 6 |
static const unsigned | TGT_RLIMIT_NOFILE = 7 |
static const unsigned | TGT_RLIMIT_MEMLOCK = 8 |
static const unsigned | TGT_RLIMIT_AS = 9 |
static const unsigned | TGT_RLIMIT_LOCKS = 10 |
static const unsigned | TGT_RLIMIT_SIGPENDING = 11 |
static const unsigned | TGT_RLIMIT_MSGQUEUE = 12 |
static const unsigned | TGT_RLIMIT_NICE = 13 |
static const unsigned | TGT_RLIMIT_RTPRIO = 14 |
static const unsigned | TGT_RLIMIT_RTTIME = 15 |
static const unsigned | TGT_RLIM_NLIMITS = 16 |
static const int | TGT_RUSAGE_SELF = 0 |
For getrusage(). | |
static const int | TGT_RUSAGE_CHILDREN = -1 |
static const int | TGT_RUSAGE_BOTH = -2 |
static Random | random |
static const unsigned | TGT_FUTEX_WAIT = 0 |
static const unsigned | TGT_FUTEX_WAKE = 1 |
static const unsigned | TGT_FUTEX_REQUEUE = 3 |
static const unsigned | TGT_FUTEX_CMP_REQUEUE = 4 |
static const unsigned | TGT_FUTEX_WAKE_OP = 5 |
static const unsigned | TGT_FUTEX_WAIT_BITSET = 9 |
static const unsigned | TGT_FUTEX_WAKE_BITSET = 10 |
static const unsigned | TGT_EAGAIN = 11 |
static const unsigned | TGT_EWOULDBLOCK = TGT_EAGAIN |
static const unsigned | TGT_FUTEX_PRIVATE_FLAG = 128 |
static const unsigned | TGT_FUTEX_CLOCK_REALTIME_FLAG = 256 |
static const unsigned | TGT_FUTEX_OP_SET = 0 |
static const unsigned | TGT_FUTEX_OP_ADD = 1 |
static const unsigned | TGT_FUTEX_OP_OR = 2 |
static const unsigned | TGT_FUTEX_OP_ANDN = 3 |
static const unsigned | TGT_FUTEX_OP_XOR = 4 |
static const unsigned | TGT_FUTEX_OP_ARG_SHIFT = 8 |
static const unsigned | TGT_FUTEX_OP_CMP_EQ = 0 |
static const unsigned | TGT_FUTEX_OP_CMP_NE = 1 |
static const unsigned | TGT_FUTEX_OP_CMP_LT = 2 |
static const unsigned | TGT_FUTEX_OP_CMP_LE = 3 |
static const unsigned | TGT_FUTEX_OP_CMP_GT = 4 |
static const unsigned | TGT_FUTEX_OP_CMP_GE = 5 |
static const int | TGT_AT_FDCWD = -100 |
static const int | TGT_AT_REMOVEDIR = 0x200 |
static const int | TGT_AT_SYMLINK_FOLLOW = 0x400 |
static const int | TGT_AT_NO_AUTOMOUNT = 0x800 |
static const int | TGT_AT_EMPTY_PATH = 0x1000 |
static const unsigned | TGT_MREMAP_MAYMOVE = 0x1 |
static const unsigned | TGT_MREMAP_FIXED = 0x2 |
static const unsigned | TGT_CLONE_VM = 0x00000100 |
static const unsigned | TGT_CLONE_FS = 0x00000200 |
static const unsigned | TGT_CLONE_FILES = 0x00000400 |
static const unsigned | TGT_CLONE_SIGHAND = 0x00000800 |
static const unsigned | TGT_CLONE_PIDFD = 0x00001000 |
static const unsigned | TGT_CLONE_PTRACE = 0x00002000 |
static const unsigned | TGT_CLONE_VFORK = 0x00004000 |
static const unsigned | TGT_CLONE_PARENT = 0x00008000 |
static const unsigned | TGT_CLONE_THREAD = 0x00010000 |
static const unsigned | TGT_CLONE_NEWNS = 0x00020000 |
static const unsigned | TGT_CLONE_SYSVSEM = 0x00040000 |
static const unsigned | TGT_CLONE_SETTLS = 0x00080000 |
static const unsigned | TGT_CLONE_PARENT_SETTID = 0x00100000 |
static const unsigned | TGT_CLONE_CHILD_CLEARTID = 0x00200000 |
static const unsigned | TGT_CLONE_DETACHED = 0x00400000 |
static const unsigned | TGT_CLONE_UNTRACED = 0x00800000 |
static const unsigned | TGT_CLONE_CHILD_SETTID = 0x01000000 |
static const unsigned | TGT_CLONE_NEWUTS = 0x04000000 |
static const unsigned | TGT_CLONE_NEWIPC = 0x08000000 |
static const unsigned | TGT_CLONE_NEWUSER = 0x10000000 |
static const unsigned | TGT_CLONE_NEWPID = 0x20000000 |
static const unsigned | TGT_CLONE_NEWNET = 0x40000000 |
static const unsigned | TGT_CLONE_IO = 0x80000000 |
static const unsigned | TGT_WNOHANG = 0x00000001 |
static const unsigned | TGT_WUNTRACED = 0x00000002 |
static const unsigned | TGT_WSTOPPED = TGT_WUNTRACED |
static const unsigned | TGT_WEXITED = 0x00000004 |
static const unsigned | TGT_WCONTINUED = 0x00000008 |
static const unsigned | TGT_WNOWAIT = 0x01000000 |
Static Public Attributes inherited from gem5::OperatingSystem | |
static const int | _SYS_NMLN = 65 |
Length of strings in struct utsname (plus 1 for null char). | |
Static Public Attributes inherited from gem5::OpenFlagTable< RiscvLinux32 > | |
static const std::map< int, int > | openFlagTable |
typedef int64_t gem5::RiscvLinux32::off_t |
typedef uint32_t gem5::RiscvLinux32::size_t |
typedef int64_t gem5::RiscvLinux32::time_t |
|
inlinestatic |
Definition at line 372 of file linux.hh.
References gem5::BaseISA::copyRegsFrom(), flags, gem5::ThreadContext::getIsaPtr(), gem5::MipsISA::ptc, gem5::ThreadContext::setReg(), gem5::sext(), gem5::X86ISA::stack, gem5::RiscvISA::StackPointerReg, gem5::Linux::TGT_CLONE_SETTLS, and gem5::RiscvISA::ThreadPointerReg.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |