serenity/Kernel/FileSystem
Liav A. 96e1391c23 Kernel/Devices: Remove the DeviceManagement singleton
This change has many improvements:
- We don't use `LockRefPtr` to hold instances of many base devices as
  with the DeviceManagement class. Instead, we have a saner pattern of
  holding them in a `NonnullRefPtr<T> const`, in a small-text footprint
  class definition in the `Device.cpp` file.
- The awkwardness of using `::the()` each time we need to get references
  to mostly-static objects (like the Event queue) in runtime is now gone
  in the migration to using the `Device` class.
- Acquiring a device feel more obvious because we use now the Device
  class for this method. The method name is improved as well.
2024-10-05 12:26:48 +02:00
..
DevLoopFS Kernel/Devices: Remove the DeviceManagement singleton 2024-10-05 12:26:48 +02:00
DevPtsFS Kernel/Devices: Remove the DeviceManagement singleton 2024-10-05 12:26:48 +02:00
Ext2FS Kernel/Ext2FS: Reduce allocations in compute_block_list_impl() 2024-08-30 22:22:13 +02:00
FATFS Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
FUSE Kernel/Devices: Remove the DeviceManagement singleton 2024-10-05 12:26:48 +02:00
ISO9660FS Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
Plan9FS Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
ProcFS Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
RAMFS Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
SysFS Kernel/Devices: Remove the DeviceManagement singleton 2024-10-05 12:26:48 +02:00
AnonymousFile.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
AnonymousFile.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
BlockBasedFileSystem.cpp Kernel: Allow Ext2FS::flush_writes() to return ErrorOr<void> 2023-08-25 11:36:57 +01:00
BlockBasedFileSystem.h Kernel: Allow Ext2FS::flush_writes() to return ErrorOr<void> 2023-08-25 11:36:57 +01:00
Custody.cpp
Custody.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
CustodyBase.cpp Kernel/FileSystem: Introduce the VFSRootContext class 2024-07-21 11:44:23 +02:00
CustodyBase.h Kernel: Ignore dirfd if absolute path is given in VFS-related syscalls 2024-06-01 19:25:15 +02:00
FIFO.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
FIFO.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
File.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
File.h Kernel/Devices: Introduce the LoopDevice device 2024-03-13 15:33:47 -06:00
FileBackedFileSystem.cpp
FileBackedFileSystem.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
FileSystem.cpp Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
FileSystem.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
FileSystemSpecificOption.cpp Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
FileSystemSpecificOption.h Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
Initializer.h Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
Inode.cpp Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
Inode.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
InodeFile.cpp Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
InodeFile.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
InodeIdentifier.h
InodeMetadata.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
InodeMetadata.h Kernel: Populate stat.st_dev with fsid 2023-10-01 13:34:41 +02:00
InodeWatcher.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
InodeWatcher.h Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Mount.cpp Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
Mount.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
MountFile.cpp Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
MountFile.h Kernel: Change internal handling of filesystem-specific options 2024-08-03 20:35:06 +02:00
OpenFileDescription.cpp Kernel/FileSystem: Change const placement to match style guide 2024-07-27 07:50:07 -04:00
OpenFileDescription.h Kernel/FileSystem: Change const placement to match style guide 2024-07-27 07:50:07 -04:00
RAMBackedFileType.h Kernel/FileSystem: Send proper filetypes when traversing RAM-backed FSes 2024-01-13 19:01:07 -07:00
UnveilNode.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
VFSRootContext.cpp Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
VFSRootContext.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00
VirtualFileSystem.cpp Kernel/Devices: Remove the DeviceManagement singleton 2024-10-05 12:26:48 +02:00
VirtualFileSystem.h Kernel: Move most of VirtualFileSystem code to be in a namespace 2024-07-21 11:44:23 +02:00