gem5 v24.0.0.0
|
#include <linux.hh>
Classes | |
class | SyscallABI |
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 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). | |
Additional Inherited Members | |
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 |
|
inlinestatic |
Definition at line 61 of file linux.hh.
References gem5::BaseISA::copyRegsFrom(), flags, gem5::X86ISA::misc_reg::FsBase, gem5::X86ISA::misc_reg::FsEffBase, gem5::ThreadContext::getIsaPtr(), gem5::MipsISA::ptc, gem5::X86ISA::int_reg::Rsp, gem5::ThreadContext::setMiscRegNoEffect(), gem5::ThreadContext::setReg(), gem5::X86ISA::stack, and gem5::Linux::TGT_CLONE_SETTLS.
|
static |