2020-02-16 01:50:16 +01:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2020, Andreas Kling <kling@serenityos.org>
|
|
|
|
*
|
2021-04-22 01:24:48 -07:00
|
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
2020-02-16 01:50:16 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2021-08-14 19:47:37 +02:00
|
|
|
#include <AK/DistinctNumeric.h>
|
|
|
|
|
2020-02-16 01:50:16 +01:00
|
|
|
namespace Kernel {
|
|
|
|
|
|
|
|
class BlockDevice;
|
|
|
|
class CharacterDevice;
|
2021-08-22 14:51:04 +02:00
|
|
|
class Coredump;
|
2020-02-16 01:50:16 +01:00
|
|
|
class Custody;
|
2021-07-11 11:49:16 +02:00
|
|
|
class DevFSDeviceInode;
|
|
|
|
class DevFSDirectoryInode;
|
|
|
|
class DevFSInode;
|
|
|
|
class DevFSPtsDirectoryInode;
|
|
|
|
class DevFSRootDirectoryInode;
|
|
|
|
class Device;
|
2020-02-16 01:50:16 +01:00
|
|
|
class DiskCache;
|
|
|
|
class DoubleBuffer;
|
|
|
|
class File;
|
|
|
|
class FileDescription;
|
2021-07-11 11:49:16 +02:00
|
|
|
class FileSystem;
|
2020-12-21 23:21:58 -07:00
|
|
|
class FutexQueue;
|
2020-02-16 01:50:16 +01:00
|
|
|
class IPv4Socket;
|
|
|
|
class Inode;
|
|
|
|
class InodeIdentifier;
|
|
|
|
class InodeWatcher;
|
|
|
|
class KBuffer;
|
|
|
|
class KResult;
|
|
|
|
class LocalSocket;
|
2021-07-17 21:09:51 +02:00
|
|
|
class Mutex;
|
2020-08-01 19:39:45 +02:00
|
|
|
class MasterPTY;
|
2021-07-11 11:49:16 +02:00
|
|
|
class Mount;
|
2020-02-16 02:01:42 +01:00
|
|
|
class PerformanceEventBuffer;
|
2021-07-11 11:49:16 +02:00
|
|
|
class ProcFS;
|
|
|
|
class ProcFSDirectoryInode;
|
|
|
|
class ProcFSExposedComponent;
|
|
|
|
class ProcFSExposedDirectory;
|
|
|
|
class ProcFSInode;
|
|
|
|
class ProcFSProcessInformation;
|
|
|
|
class ProcFSRootDirectory;
|
|
|
|
class ProcFSSystemBoolean;
|
|
|
|
class ProcFSSystemDirectory;
|
2020-02-16 01:50:16 +01:00
|
|
|
class Process;
|
2020-11-29 16:05:27 -07:00
|
|
|
class ProcessGroup;
|
2021-08-22 01:37:17 +02:00
|
|
|
class RecursiveSpinlock;
|
2020-02-16 01:50:16 +01:00
|
|
|
class Scheduler;
|
|
|
|
class Socket;
|
2021-07-11 11:49:16 +02:00
|
|
|
class SysFS;
|
2021-07-18 00:49:53 +02:00
|
|
|
class SysFSDirectory;
|
|
|
|
class SysFSBusDirectory;
|
2021-07-11 11:49:16 +02:00
|
|
|
class SysFSDirectoryInode;
|
|
|
|
class SysFSInode;
|
2020-02-16 01:50:16 +01:00
|
|
|
class TCPSocket;
|
2020-02-16 02:01:42 +01:00
|
|
|
class TTY;
|
2020-02-16 01:50:16 +01:00
|
|
|
class Thread;
|
2021-07-11 11:49:16 +02:00
|
|
|
class ThreadTracer;
|
2020-02-16 01:50:16 +01:00
|
|
|
class UDPSocket;
|
2020-09-11 21:11:07 -06:00
|
|
|
class UserOrKernelBuffer;
|
2021-07-11 11:49:16 +02:00
|
|
|
class VirtualFileSystem;
|
2020-02-16 01:50:16 +01:00
|
|
|
class WaitQueue;
|
2021-02-05 23:36:38 -07:00
|
|
|
class WorkQueue;
|
2020-02-16 01:50:16 +01:00
|
|
|
|
2021-08-06 13:49:36 +02:00
|
|
|
namespace Memory {
|
2021-08-06 13:57:39 +02:00
|
|
|
class AddressSpace;
|
2021-08-06 13:49:36 +02:00
|
|
|
class AnonymousVMObject;
|
|
|
|
class InodeVMObject;
|
|
|
|
class MappedROM;
|
|
|
|
class MemoryManager;
|
|
|
|
class PageDirectory;
|
|
|
|
class PhysicalPage;
|
|
|
|
class PhysicalRegion;
|
|
|
|
class PrivateInodeVMObject;
|
|
|
|
class Region;
|
|
|
|
class SharedInodeVMObject;
|
|
|
|
class VMObject;
|
2021-08-06 13:57:39 +02:00
|
|
|
class VirtualRange;
|
|
|
|
class VirtualRangeAllocator;
|
2021-08-06 13:49:36 +02:00
|
|
|
}
|
|
|
|
|
2021-07-11 11:49:16 +02:00
|
|
|
template<typename BaseType>
|
2021-08-22 01:37:17 +02:00
|
|
|
class Spinlock;
|
2021-07-11 11:49:16 +02:00
|
|
|
template<typename LockType>
|
2021-08-22 01:49:22 +02:00
|
|
|
class SpinlockLocker;
|
2020-02-16 01:50:16 +01:00
|
|
|
template<typename T>
|
|
|
|
class KResultOr;
|
|
|
|
|
2021-07-11 11:49:16 +02:00
|
|
|
struct InodeMetadata;
|
|
|
|
struct TrapFrame;
|
|
|
|
|
2021-08-14 19:47:37 +02:00
|
|
|
TYPEDEF_DISTINCT_ORDERED_ID(pid_t, ProcessID);
|
|
|
|
TYPEDEF_DISTINCT_ORDERED_ID(pid_t, ThreadID);
|
|
|
|
TYPEDEF_DISTINCT_ORDERED_ID(pid_t, SessionID);
|
|
|
|
TYPEDEF_DISTINCT_ORDERED_ID(pid_t, ProcessGroupID);
|
|
|
|
|
2020-02-16 01:50:16 +01:00
|
|
|
}
|