gem5  v22.1.0.0
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
gem5::FreeBSD Class Reference

This class encapsulates the types, structures, constants, functions, and syscall-number mappings specific to the Alpha FreeBSD syscall interface. More...

#include <freebsd.hh>

Inheritance diagram for gem5::FreeBSD:
gem5::OperatingSystem gem5::ArmFreebsd gem5::ArmFreebsd32 gem5::ArmFreebsd64

Public Types

typedef uint64_t size_t
 Basic FreeBSD types. More...
 
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. More...
 
typedef void tgt_stat64
 

Static Public Member Functions

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. More...
 
- Static Public Member Functions inherited from gem5::OperatingSystem
static int openSpecialFile (std::string path, Process *process, ThreadContext *tc)
 

Static Public Attributes

static const int M5_SC_CLK_TCK = 100
 Clock ticks per second, for times(). More...
 
static const unsigned TGT_TIOCGETA = 0x402c7413
 ioctl() command codes. More...
 
static const unsigned TGT_TIOCSETA = 0x802c7414
 
static const unsigned TGT_TIOCSETAW = 0x802c7415
 
static const unsigned TGT_FIONREAD = 0x4004667f
 
static const unsigned TGT_RLIMIT_CPU = 0
 Resource constants for getrlimit(). More...
 
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_MEMLOCK = 6
 
static const unsigned TGT_RLIMIT_NPROC = 7
 
static const unsigned TGT_RLIMIT_NOFILE = 8
 
static const unsigned TGT_RLIMIT_SBSIZE = 9
 
static const unsigned TGT_RLIMIT_VMEM = 10
 
static const unsigned TGT_RLIMIT_AS = TGT_RLIMIT_VMEM
 
static const unsigned TGT_RLIMIT_NPTS = 11
 
static const unsigned TGT_RLIMIT_SWAP = 12
 
static const unsigned TGT_RLIMIT_KQUEUES = 13
 
static const int TGT_RUSAGE_SELF = 0
 For getrusage(). More...
 
static const int TGT_RUSAGE_CHILDREN = -1
 
static const int TGT_RUSAGE_THREAD = 1
 
static const int TGT_AT_FDCWD = -100
 
static const int TGT_AT_REMOVEDIR = 0x800
 
- Static Public Attributes inherited from gem5::OperatingSystem
static const int _SYS_NMLN = 65
 Length of strings in struct utsname (plus 1 for null char). More...
 

Detailed Description

This class encapsulates the types, structures, constants, functions, and syscall-number mappings specific to the Alpha FreeBSD syscall interface.

Definition at line 64 of file freebsd.hh.

Member Typedef Documentation

◆ clock_t

typedef int64_t gem5::FreeBSD::clock_t

Definition at line 74 of file freebsd.hh.

◆ gid_t

typedef uint32_t gem5::FreeBSD::gid_t

Definition at line 76 of file freebsd.hh.

◆ off_t

typedef uint64_t gem5::FreeBSD::off_t

Definition at line 72 of file freebsd.hh.

◆ size_t

typedef uint64_t gem5::FreeBSD::size_t

Basic FreeBSD types.

Definition at line 71 of file freebsd.hh.

◆ time_t

typedef int64_t gem5::FreeBSD::time_t

Definition at line 73 of file freebsd.hh.

◆ uid_t

typedef uint32_t gem5::FreeBSD::uid_t

Definition at line 75 of file freebsd.hh.

Member Function Documentation

◆ isTtyReq()

static bool gem5::FreeBSD::isTtyReq ( unsigned  req)
inlinestatic

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.

Definition at line 95 of file freebsd.hh.

References TGT_FIONREAD, TGT_TIOCGETA, TGT_TIOCSETA, and TGT_TIOCSETAW.

Member Data Documentation

◆ M5_SC_CLK_TCK

const int gem5::FreeBSD::M5_SC_CLK_TCK = 100
static

Clock ticks per second, for times().

Definition at line 80 of file freebsd.hh.

◆ TGT_AT_FDCWD

const int gem5::FreeBSD::TGT_AT_FDCWD = -100
static

Definition at line 131 of file freebsd.hh.

◆ TGT_AT_REMOVEDIR

const int gem5::FreeBSD::TGT_AT_REMOVEDIR = 0x800
static

Definition at line 132 of file freebsd.hh.

◆ TGT_FIONREAD

const unsigned gem5::FreeBSD::TGT_FIONREAD = 0x4004667f
static

Definition at line 87 of file freebsd.hh.

Referenced by isTtyReq().

◆ TGT_RLIMIT_AS

const unsigned gem5::FreeBSD::TGT_RLIMIT_AS = TGT_RLIMIT_VMEM
static

Definition at line 120 of file freebsd.hh.

◆ TGT_RLIMIT_CORE

const unsigned gem5::FreeBSD::TGT_RLIMIT_CORE = 4
static

Definition at line 113 of file freebsd.hh.

◆ TGT_RLIMIT_CPU

const unsigned gem5::FreeBSD::TGT_RLIMIT_CPU = 0
static

Resource constants for getrlimit().

Definition at line 109 of file freebsd.hh.

◆ TGT_RLIMIT_DATA

const unsigned gem5::FreeBSD::TGT_RLIMIT_DATA = 2
static

Definition at line 111 of file freebsd.hh.

◆ TGT_RLIMIT_FSIZE

const unsigned gem5::FreeBSD::TGT_RLIMIT_FSIZE = 1
static

Definition at line 110 of file freebsd.hh.

◆ TGT_RLIMIT_KQUEUES

const unsigned gem5::FreeBSD::TGT_RLIMIT_KQUEUES = 13
static

Definition at line 123 of file freebsd.hh.

◆ TGT_RLIMIT_MEMLOCK

const unsigned gem5::FreeBSD::TGT_RLIMIT_MEMLOCK = 6
static

Definition at line 115 of file freebsd.hh.

◆ TGT_RLIMIT_NOFILE

const unsigned gem5::FreeBSD::TGT_RLIMIT_NOFILE = 8
static

Definition at line 117 of file freebsd.hh.

◆ TGT_RLIMIT_NPROC

const unsigned gem5::FreeBSD::TGT_RLIMIT_NPROC = 7
static

Definition at line 116 of file freebsd.hh.

◆ TGT_RLIMIT_NPTS

const unsigned gem5::FreeBSD::TGT_RLIMIT_NPTS = 11
static

Definition at line 121 of file freebsd.hh.

◆ TGT_RLIMIT_RSS

const unsigned gem5::FreeBSD::TGT_RLIMIT_RSS = 5
static

Definition at line 114 of file freebsd.hh.

◆ TGT_RLIMIT_SBSIZE

const unsigned gem5::FreeBSD::TGT_RLIMIT_SBSIZE = 9
static

Definition at line 118 of file freebsd.hh.

◆ TGT_RLIMIT_STACK

const unsigned gem5::FreeBSD::TGT_RLIMIT_STACK = 3
static

Definition at line 112 of file freebsd.hh.

◆ TGT_RLIMIT_SWAP

const unsigned gem5::FreeBSD::TGT_RLIMIT_SWAP = 12
static

Definition at line 122 of file freebsd.hh.

◆ TGT_RLIMIT_VMEM

const unsigned gem5::FreeBSD::TGT_RLIMIT_VMEM = 10
static

Definition at line 119 of file freebsd.hh.

◆ TGT_RUSAGE_CHILDREN

const int gem5::FreeBSD::TGT_RUSAGE_CHILDREN = -1
static

Definition at line 127 of file freebsd.hh.

◆ TGT_RUSAGE_SELF

const int gem5::FreeBSD::TGT_RUSAGE_SELF = 0
static

For getrusage().

Definition at line 126 of file freebsd.hh.

◆ TGT_RUSAGE_THREAD

const int gem5::FreeBSD::TGT_RUSAGE_THREAD = 1
static

Definition at line 128 of file freebsd.hh.

◆ TGT_TIOCGETA

const unsigned gem5::FreeBSD::TGT_TIOCGETA = 0x402c7413
static

ioctl() command codes.

Definition at line 84 of file freebsd.hh.

Referenced by isTtyReq().

◆ TGT_TIOCSETA

const unsigned gem5::FreeBSD::TGT_TIOCSETA = 0x802c7414
static

Definition at line 85 of file freebsd.hh.

Referenced by isTtyReq().

◆ TGT_TIOCSETAW

const unsigned gem5::FreeBSD::TGT_TIOCSETAW = 0x802c7415
static

Definition at line 86 of file freebsd.hh.

Referenced by isTtyReq().


The documentation for this class was generated from the following file:

Generated on Wed Dec 21 2022 10:23:25 for gem5 by doxygen 1.9.1