1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 05:17:35 +00:00

Implement /proc/PID/vm.

Refactored SyntheticFileSystem to maintain an arbitrary directory structure.
ProcFileSystem creates a directory entry in /proc for each new process.
This commit is contained in:
Andreas Kling 2018-10-26 17:42:12 +02:00
parent 10347b9ae8
commit a32b3a3ddf
15 changed files with 217 additions and 39 deletions

View file

@ -3,15 +3,24 @@
#include <AK/Types.h>
#include <VirtualFileSystem/SyntheticFileSystem.h>
class Task;
class ProcFileSystem final : public SyntheticFileSystem {
public:
static ProcFileSystem& the();
virtual ~ProcFileSystem() override;
static RetainPtr<ProcFileSystem> create();
virtual bool initialize() override;
virtual const char* className() const override;
void addProcess(Task&);
void removeProcess(Task&);
private:
ProcFileSystem();
HashMap<pid_t, InodeIndex> m_pid2inode;
};