forked from Bananymous/banan-os
Kernel: Rewrite whole device structure
We now have DevFileSystem which is derived from RamFileSystem. All devices are RamInodes. We don't have separate DeviceManager anymore. To iterate over devices, you can loop througn every inode in devfs.
This commit is contained in:
30
kernel/include/kernel/FS/DevFS/FileSystem.h
Normal file
30
kernel/include/kernel/FS/DevFS/FileSystem.h
Normal file
@@ -0,0 +1,30 @@
|
||||
#pragma once
|
||||
|
||||
#include <kernel/Device.h>
|
||||
#include <kernel/FS/RamFS/FileSystem.h>
|
||||
|
||||
namespace Kernel
|
||||
{
|
||||
|
||||
class DevFileSystem final : public RamFileSystem
|
||||
{
|
||||
public:
|
||||
static void initialize();
|
||||
static DevFileSystem& get();
|
||||
|
||||
void initialize_device_updater();
|
||||
|
||||
void add_device(BAN::StringView path, BAN::RefPtr<Device>);
|
||||
|
||||
dev_t get_next_rdev();
|
||||
|
||||
private:
|
||||
DevFileSystem(size_t size)
|
||||
: RamFileSystem(size)
|
||||
{ }
|
||||
|
||||
private:
|
||||
SpinLock m_device_lock;
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user