aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/main.cpp
diff options
context:
space:
mode:
authorLukas Oesch <lukasoesch20@gmail.com>2026-03-24 23:54:28 +0100
committerLukas Oesch <lukasoesch20@gmail.com>2026-03-26 21:19:30 +0100
commit84d4476650b31dbfc52becf2ff65ddce9d31c9ec (patch)
treeeb4e69e2148690d654303dc145c3f71d94ea9bd9 /kernel/src/main.cpp
parent76de81de1e12694bf6bec1edd3e3409092a92d09 (diff)
downloadteachos-84d4476650b31dbfc52becf2ff65ddce9d31c9ec.tar.xz
teachos-84d4476650b31dbfc52becf2ff65ddce9d31c9ec.zip
implement a rootfs to handle / mounts correctly
Diffstat (limited to 'kernel/src/main.cpp')
-rw-r--r--kernel/src/main.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/src/main.cpp b/kernel/src/main.cpp
index 9571a0d..19a0992 100644
--- a/kernel/src/main.cpp
+++ b/kernel/src/main.cpp
@@ -5,6 +5,7 @@
#include "kernel/devices/storage/storage_management.hpp"
#include "kernel/filesystem/device_inode.hpp"
+#include "kernel/filesystem/ext2/ext2_filesystem.hpp"
#include "kernel/filesystem/file_descriptor_table.hpp"
#include "kernel/filesystem/open_file_description.hpp"
#include "kernel/filesystem/vfs.hpp"
@@ -108,8 +109,17 @@ auto test_file_lookup() -> void
// TODO BA-FS26 implement a more complete test with multiple files and directories and mounts etc.
auto vfs = filesystem::vfs::get();
+ auto storage_mgmt = devices::storage::storage_management::get();
+
vfs.open("/a/b/c");
vfs.open("/a/d/e");
+
+ auto new_filesystem = kstd::make_shared<filesystem::ext2::ext2_filesystem>();
+ auto device = storage_mgmt.device_by_major_minor(1, 16);
+ new_filesystem->mount(device);
+ vfs.do_mount("/a/b", new_filesystem);
+ vfs.open("/a/b/c");
+
vfs.open("x/y/z");
}