NeKernel dev
Loading...
Searching...
No Matches
PEF.h File Reference

Go to the source code of this file.

Classes

struct  Kernel::PEFContainer
struct  Kernel::PEFCommandHeader

Namespaces

namespace  Kernel
 UPS inline definitions.

Macros

#define kPefMagic   "Open"
#define kPefMagicFat   "nepO"
#define kPefMagicLen   (5)
#define kPefVersion   (0x0500)
#define kPefNameLen   (256U)
#define kPefExt   ".exec"
#define kPefDylibExt   ".dylib"
#define kPefLibExt   ".lib"
#define kPefObjectExt   ".obj"
#define kPefDebugExt   ".dbg"
#define kPefDriverExt   ".sys"
#define kPefAbi   (0x5046)
#define kPefBaseOrigin   (0x40000000)
#define kPefStart   "__ImageStart"
#define kPefMainSymbol   "_NeMain"
#define kPefForkKind   kPefMagic
#define kPefForkKindFAT   kPefMagicFat

Typedefs

typedef struct Kernel::PEFContainer Kernel::PEFContainer
typedef struct Kernel::PEFCommandHeader Kernel::PEFCommandHeader

Enumerations

enum  {
  Kernel::kPefArchIntel86S , Kernel::kPefArchAMD64 , Kernel::kPefArchRISCV , Kernel::kPefArch64x0 ,
  Kernel::kPefArch32x0 , Kernel::kPefArchPowerPC , Kernel::kPefArchARM64 , Kernel::kPefArchCount = (kPefArchARM64 - kPefArchIntel86S) + 1 ,
  Kernel::kPefArchInvalid = 0xFF
}
enum  {
  Kernel::kPefSubArchGeneric = 0 , Kernel::kPefSubArchAMD = 200 , Kernel::kPefSubArchIntel , Kernel::kPefSubArchARM ,
  Kernel::kPefSubArchIBM
}
enum  {
  Kernel::kPefKindInvalid = 0 , Kernel::kPefKindExec = 1 , Kernel::kPefKindDylib = 2 , Kernel::kPefKindObject = 4 ,
  Kernel::kPefKindDebug = 5 , Kernel::kPefKindDriver = 6 , Kernel::kPefKindCount
}
enum  {
  Kernel::kPefInvalid = 0x0 , Kernel::kPefCode = 0xC , Kernel::kPefData = 0xD , Kernel::kPefZero = 0xE ,
  Kernel::kPefLinkerID = 0x1 , Kernel::kPefCount = 4
}

Macro Definition Documentation

◆ kPefAbi

#define kPefAbi   (0x5046)

◆ kPefBaseOrigin

#define kPefBaseOrigin   (0x40000000)

◆ kPefDebugExt

#define kPefDebugExt   ".dbg"

◆ kPefDriverExt

#define kPefDriverExt   ".sys"

◆ kPefDylibExt

#define kPefDylibExt   ".dylib"

◆ kPefExt

#define kPefExt   ".exec"

◆ kPefForkKind

#define kPefForkKind   kPefMagic

◆ kPefForkKindFAT

#define kPefForkKindFAT   kPefMagicFat

◆ kPefLibExt

#define kPefLibExt   ".lib"

◆ kPefMagic

#define kPefMagic   "Open"

◆ kPefMagicFat

#define kPefMagicFat   "nepO"

◆ kPefMagicLen

#define kPefMagicLen   (5)

◆ kPefMainSymbol

#define kPefMainSymbol   "_NeMain"

◆ kPefNameLen

#define kPefNameLen   (256U)

◆ kPefObjectExt

#define kPefObjectExt   ".obj"

◆ kPefStart

#define kPefStart   "__ImageStart"

◆ kPefVersion

#define kPefVersion   (0x0500)