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

IPC comm. protocol. More...

#include <NeKit/Config.h>
#include <NeKit/KString.h>
#include <hint/CompilerHint.h>

Go to the source code of this file.

Classes

struct  Kernel::IPC_ADDR
 128-bit IPC address. More...
struct  Kernel::IPC_MSG
 IPC connection header, message cannot be greater than 6K. More...

Namespaces

namespace  Kernel
 UPS inline definitions.

Macros

#define kIPCRemoteSeparator   ":"
 IA separator.
#define kIPCRemoteInvalid   "00:00"
 Interchange address, consists of ProcessID:TEAM.
#define kIPCHeaderMagic   (0x4950434)

Typedefs

typedef struct IPC_ADDR Kernel::IPC_ADDR

Enumerations

enum  { Kernel::kIPCLittleEndian = 0 , Kernel::kIPCBigEndian = 1 , Kernel::kIPCMixedEndian = 2 }
enum  { Kernel::kIPCLockInvalid = 0 , Kernel::kIPCLockFree = 1 , Kernel::kIPCLockUsed = 2 }

Functions

struct Kernel::IPC_MSG Kernel::ALIGN (8) IPC_MSG
 IPC connection header, message cannot be greater than 6K.
BOOL Kernel::ipc_sanitize_packet (_Input IPC_MSG *pckt_in)
 Sanitize packet function.
BOOL Kernel::ipc_construct_packet (_Output _Input IPC_MSG **pckt_in)
 Construct packet function.

Variables

constexpr auto Kernel::kIPCMsgSize = 6094U
UInt32 IpcHeaderMagic
UInt8 IpcEndianess
SizeT IpcPacketSize
IPC_ADDR IpcFrom
IPC_ADDR IpcTo
UInt32 IpcCRC32
UInt32 IpcMsg
UInt32 IpcMsgSz
UInt8 IpcData [kIPCMsgSize]
UInt32 IpcLock

Detailed Description

IPC comm. protocol.

Macro Definition Documentation

◆ kIPCHeaderMagic

#define kIPCHeaderMagic   (0x4950434)

◆ kIPCRemoteInvalid

#define kIPCRemoteInvalid   "00:00"

Interchange address, consists of ProcessID:TEAM.

◆ kIPCRemoteSeparator

#define kIPCRemoteSeparator   ":"

IA separator.

Variable Documentation

◆ IpcCRC32

UInt32 IpcCRC32

◆ IpcData

UInt8 IpcData[kIPCMsgSize]

◆ IpcEndianess

UInt8 IpcEndianess

◆ IpcFrom

IPC_ADDR IpcFrom

◆ IpcHeaderMagic

UInt32 IpcHeaderMagic

◆ IpcLock

UInt32 IpcLock

◆ IpcMsg

UInt32 IpcMsg

◆ IpcMsgSz

UInt32 IpcMsgSz

◆ IpcPacketSize

SizeT IpcPacketSize

◆ IpcTo

IPC_ADDR IpcTo