contur2
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1
4
5#pragma once
6
7#include <cstdint>
8
9namespace contur {
10
12 using ProcessId = std::uint32_t;
13
15 using MemoryAddress = std::uint32_t;
16
18 using Tick = std::uint64_t;
19
21 using RegisterValue = std::int32_t;
22
24 using DeviceId = std::uint16_t;
25
27 using SubscriptionId = std::uint64_t;
28
30 using ResourceId = std::uint32_t;
31
33 using InodeId = std::uint32_t;
34
36 enum class InodeType : std::uint8_t
37 {
40 };
41
43 using FrameId = std::uint32_t;
44
46 constexpr ProcessId INVALID_PID = 0;
47
49 constexpr MemoryAddress NULL_ADDRESS = 0xFFFFFFFF;
50
52 constexpr FrameId INVALID_FRAME = 0xFFFFFFFF;
53
56
58 constexpr std::uint8_t REGISTER_COUNT = 16;
59
61 constexpr Tick DEFAULT_TIME_SLICE = 4;
62
64 constexpr ProcessId MAX_PROCESSES = 1024;
65
66} // namespace contur
Definition block.h:15
constexpr ProcessId MAX_PROCESSES
Maximum number of processes the kernel can manage.
Definition types.h:64
constexpr MemoryAddress NULL_ADDRESS
Sentinel value indicating an invalid/null memory address.
Definition types.h:49
constexpr std::uint8_t REGISTER_COUNT
Maximum number of CPU registers.
Definition types.h:58
std::uint64_t SubscriptionId
Unique identifier for an event subscription.
Definition types.h:27
constexpr InodeId INVALID_INODE_ID
Sentinel value indicating an invalid inode identifier.
Definition types.h:55
constexpr Tick DEFAULT_TIME_SLICE
Default time slice for Round Robin scheduling (in ticks).
Definition types.h:61
std::uint64_t Tick
Simulation clock tick counter.
Definition types.h:18
constexpr FrameId INVALID_FRAME
Sentinel value indicating an invalid frame.
Definition types.h:52
InodeType
Type of filesystem node.
Definition types.h:37
std::uint32_t InodeId
Unique identifier for a filesystem inode.
Definition types.h:33
std::uint32_t ProcessId
Unique identifier for a process.
Definition types.h:12
std::uint32_t MemoryAddress
Represents a memory address (physical or virtual).
Definition types.h:15
std::uint32_t FrameId
Frame number in physical memory.
Definition types.h:43
std::uint32_t ResourceId
Unique identifier for a synchronization resource (mutex, semaphore, etc.).
Definition types.h:30
constexpr ProcessId INVALID_PID
Sentinel value indicating an invalid/unassigned process ID.
Definition types.h:46
std::int32_t RegisterValue
Value stored in a CPU register.
Definition types.h:21
std::uint16_t DeviceId
Unique identifier for an I/O device.
Definition types.h:24