From 527e1708ce4702ff791852897434b906d9bc67bb Mon Sep 17 00:00:00 2001 From: EnderIce2 Date: Mon, 24 Mar 2025 00:51:00 +0000 Subject: [PATCH] refactor(rootfs): change "initrd" to "rootfs" Signed-off-by: EnderIce2 --- .gitignore | 6 +++--- Fennix.code-workspace | 2 +- Kernel/kernel_vfs.cpp | 4 ++-- Kernel/storage/fs/ustar.cpp | 10 +++++----- Makefile | 10 +++++----- {initrd => rootfs}/bin/.gitkeep | 0 {initrd => rootfs}/etc/audio/devices.cfg | 0 {initrd => rootfs}/etc/cross/linux | 0 {initrd => rootfs}/etc/group | 0 {initrd => rootfs}/etc/hostname | 0 {initrd => rootfs}/etc/hosts | 0 {initrd => rootfs}/etc/ntp | 0 {initrd => rootfs}/etc/passwd | 0 {initrd => rootfs}/etc/term | 0 {initrd => rootfs}/home/.gitkeep | 0 {initrd => rootfs}/include/.gitkeep | 0 {initrd => rootfs}/lib/.gitkeep | 0 {initrd => rootfs}/root/.gitkeep | 0 {initrd => rootfs}/tmp/invalid | 0 {initrd => rootfs}/tmp/link | 0 {initrd => rootfs}/tmp/pangrams.txt | 0 {initrd => rootfs}/tmp/test.sh | 0 {initrd => rootfs}/tmp/test.txt | 0 {initrd => rootfs}/usr/bin/.gitkeep | 0 {initrd => rootfs}/usr/include/.gitkeep | 0 {initrd => rootfs}/usr/lib/drivers/.gitkeep | 0 {initrd => rootfs}/usr/share/.gitkeep | 0 {initrd => rootfs}/var/.gitkeep | 0 {initrd => rootfs}/var/panic/.gitkeep | 0 tools/grub.cfg | 6 +++--- tools/limine.cfg | 4 ++-- tools/lynx.cfg | 2 +- 32 files changed, 22 insertions(+), 22 deletions(-) rename {initrd => rootfs}/bin/.gitkeep (100%) rename {initrd => rootfs}/etc/audio/devices.cfg (100%) rename {initrd => rootfs}/etc/cross/linux (100%) rename {initrd => rootfs}/etc/group (100%) rename {initrd => rootfs}/etc/hostname (100%) rename {initrd => rootfs}/etc/hosts (100%) rename {initrd => rootfs}/etc/ntp (100%) rename {initrd => rootfs}/etc/passwd (100%) rename {initrd => rootfs}/etc/term (100%) rename {initrd => rootfs}/home/.gitkeep (100%) rename {initrd => rootfs}/include/.gitkeep (100%) rename {initrd => rootfs}/lib/.gitkeep (100%) rename {initrd => rootfs}/root/.gitkeep (100%) rename {initrd => rootfs}/tmp/invalid (100%) rename {initrd => rootfs}/tmp/link (100%) rename {initrd => rootfs}/tmp/pangrams.txt (100%) rename {initrd => rootfs}/tmp/test.sh (100%) rename {initrd => rootfs}/tmp/test.txt (100%) rename {initrd => rootfs}/usr/bin/.gitkeep (100%) rename {initrd => rootfs}/usr/include/.gitkeep (100%) rename {initrd => rootfs}/usr/lib/drivers/.gitkeep (100%) rename {initrd => rootfs}/usr/share/.gitkeep (100%) rename {initrd => rootfs}/var/.gitkeep (100%) rename {initrd => rootfs}/var/panic/.gitkeep (100%) diff --git a/.gitignore b/.gitignore index 5765cff0..4ad2567e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,10 @@ iso_tmp_data artifacts initrd_tmp_data -initrd/usr/include/* -!initrd/usr/include/.gitkeep +rootfs/usr/include/* +!rootfs/usr/include/.gitkeep doxygen-doc -initrd.tar +rootfs.tar .dccache *.log *.log.* diff --git a/Fennix.code-workspace b/Fennix.code-workspace index d7fa1feb..edb25de9 100644 --- a/Fennix.code-workspace +++ b/Fennix.code-workspace @@ -11,7 +11,7 @@ "git.openRepositoryInParentFolders": "always", "C_Cpp.autoAddFileAssociations": false, "conventionalCommits.scopes": [ - "initrd", + "rootfs", "tools", "devcontainer" ] diff --git a/Kernel/kernel_vfs.cpp b/Kernel/kernel_vfs.cpp index 965f6ab7..5b50e232 100644 --- a/Kernel/kernel_vfs.cpp +++ b/Kernel/kernel_vfs.cpp @@ -31,10 +31,10 @@ void SearchForInitrd() if (!initrdAddress) continue; - if (strcmp(bInfo.Modules[i].CommandLine, "initrd") != 0) + if (strcmp(bInfo.Modules[i].CommandLine, "rootfs") != 0) continue; - KPrint("initrd found at %#lx", initrdAddress); + KPrint("rootfs found at %#lx", initrdAddress); Memory::Virtual vmm; if (!vmm.Check((void *)initrdAddress)) diff --git a/Kernel/storage/fs/ustar.cpp b/Kernel/storage/fs/ustar.cpp index 52f283ba..e8b84d93 100644 --- a/Kernel/storage/fs/ustar.cpp +++ b/Kernel/storage/fs/ustar.cpp @@ -843,9 +843,9 @@ bool TestAndInitializeUSTAR(uintptr_t Address, size_t Size) ustar->DeviceID = fs->EarlyReserveDevice(); ustar->ReadArchive(Address, Size); - Inode *initrd = nullptr; - ustar->Lookup(nullptr, "/", &initrd); - assert(initrd != nullptr); + Inode *rootfs = nullptr; + ustar->Lookup(nullptr, "/", &rootfs); + assert(rootfs != nullptr); FileSystemInfo *fsi = new FileSystemInfo; fsi->Name = "ustar"; @@ -861,8 +861,8 @@ bool TestAndInitializeUSTAR(uintptr_t Address, size_t Size) fsi->Ops.ReadLink = __ustar_ReadLink; fsi->Ops.Stat = __ustar_Stat; fsi->PrivateData = ustar; - fs->LateRegisterFileSystem(ustar->DeviceID, fsi, initrd); + fs->LateRegisterFileSystem(ustar->DeviceID, fsi, rootfs); - fs->AddRoot(initrd); + fs->AddRoot(rootfs); return true; } diff --git a/Makefile b/Makefile index 057f97a6..e13f9afb 100644 --- a/Makefile +++ b/Makefile @@ -212,16 +212,16 @@ endif build_image: mkdir -p iso_tmp_data mkdir -p initrd_tmp_data - cp -r initrd/* initrd_tmp_data/ + cp -r rootfs/* initrd_tmp_data/ ifeq ($(BUILD_DRIVERS), 1) cp -r Drivers/out/* initrd_tmp_data/usr/lib/drivers/ endif ifeq ($(BUILD_USERSPACE), 1) cp -r Userspace/out/* initrd_tmp_data/ endif -# tar czf initrd.tar -C initrd_tmp_data/ ./ --format=ustar - tar cf initrd.tar -C initrd_tmp_data/ ./ --format=ustar - cp Kernel/fennix.elf initrd.tar \ +# tar czf rootfs.tar -C initrd_tmp_data/ ./ --format=ustar + tar cf rootfs.tar -C initrd_tmp_data/ ./ --format=ustar + cp Kernel/fennix.elf rootfs.tar \ iso_tmp_data/ ifeq ($(BOOTLOADER), limine) cp tools/limine.cfg tools/limine/limine-bios.sys \ @@ -330,7 +330,7 @@ run: build qemu clean: clean_logs rm -rf doxygen-doc iso_tmp_data initrd_tmp_data - rm -f initrd.tar $(OSNAME).iso $(OSNAME).img + rm -f rootfs.tar $(OSNAME).iso $(OSNAME).img $(MAKE) -C Kernel clean $(MAKE) -C Userspace clean $(MAKE) -C Drivers clean diff --git a/initrd/bin/.gitkeep b/rootfs/bin/.gitkeep similarity index 100% rename from initrd/bin/.gitkeep rename to rootfs/bin/.gitkeep diff --git a/initrd/etc/audio/devices.cfg b/rootfs/etc/audio/devices.cfg similarity index 100% rename from initrd/etc/audio/devices.cfg rename to rootfs/etc/audio/devices.cfg diff --git a/initrd/etc/cross/linux b/rootfs/etc/cross/linux similarity index 100% rename from initrd/etc/cross/linux rename to rootfs/etc/cross/linux diff --git a/initrd/etc/group b/rootfs/etc/group similarity index 100% rename from initrd/etc/group rename to rootfs/etc/group diff --git a/initrd/etc/hostname b/rootfs/etc/hostname similarity index 100% rename from initrd/etc/hostname rename to rootfs/etc/hostname diff --git a/initrd/etc/hosts b/rootfs/etc/hosts similarity index 100% rename from initrd/etc/hosts rename to rootfs/etc/hosts diff --git a/initrd/etc/ntp b/rootfs/etc/ntp similarity index 100% rename from initrd/etc/ntp rename to rootfs/etc/ntp diff --git a/initrd/etc/passwd b/rootfs/etc/passwd similarity index 100% rename from initrd/etc/passwd rename to rootfs/etc/passwd diff --git a/initrd/etc/term b/rootfs/etc/term similarity index 100% rename from initrd/etc/term rename to rootfs/etc/term diff --git a/initrd/home/.gitkeep b/rootfs/home/.gitkeep similarity index 100% rename from initrd/home/.gitkeep rename to rootfs/home/.gitkeep diff --git a/initrd/include/.gitkeep b/rootfs/include/.gitkeep similarity index 100% rename from initrd/include/.gitkeep rename to rootfs/include/.gitkeep diff --git a/initrd/lib/.gitkeep b/rootfs/lib/.gitkeep similarity index 100% rename from initrd/lib/.gitkeep rename to rootfs/lib/.gitkeep diff --git a/initrd/root/.gitkeep b/rootfs/root/.gitkeep similarity index 100% rename from initrd/root/.gitkeep rename to rootfs/root/.gitkeep diff --git a/initrd/tmp/invalid b/rootfs/tmp/invalid similarity index 100% rename from initrd/tmp/invalid rename to rootfs/tmp/invalid diff --git a/initrd/tmp/link b/rootfs/tmp/link similarity index 100% rename from initrd/tmp/link rename to rootfs/tmp/link diff --git a/initrd/tmp/pangrams.txt b/rootfs/tmp/pangrams.txt similarity index 100% rename from initrd/tmp/pangrams.txt rename to rootfs/tmp/pangrams.txt diff --git a/initrd/tmp/test.sh b/rootfs/tmp/test.sh similarity index 100% rename from initrd/tmp/test.sh rename to rootfs/tmp/test.sh diff --git a/initrd/tmp/test.txt b/rootfs/tmp/test.txt similarity index 100% rename from initrd/tmp/test.txt rename to rootfs/tmp/test.txt diff --git a/initrd/usr/bin/.gitkeep b/rootfs/usr/bin/.gitkeep similarity index 100% rename from initrd/usr/bin/.gitkeep rename to rootfs/usr/bin/.gitkeep diff --git a/initrd/usr/include/.gitkeep b/rootfs/usr/include/.gitkeep similarity index 100% rename from initrd/usr/include/.gitkeep rename to rootfs/usr/include/.gitkeep diff --git a/initrd/usr/lib/drivers/.gitkeep b/rootfs/usr/lib/drivers/.gitkeep similarity index 100% rename from initrd/usr/lib/drivers/.gitkeep rename to rootfs/usr/lib/drivers/.gitkeep diff --git a/initrd/usr/share/.gitkeep b/rootfs/usr/share/.gitkeep similarity index 100% rename from initrd/usr/share/.gitkeep rename to rootfs/usr/share/.gitkeep diff --git a/initrd/var/.gitkeep b/rootfs/var/.gitkeep similarity index 100% rename from initrd/var/.gitkeep rename to rootfs/var/.gitkeep diff --git a/initrd/var/panic/.gitkeep b/rootfs/var/panic/.gitkeep similarity index 100% rename from initrd/var/panic/.gitkeep rename to rootfs/var/panic/.gitkeep diff --git a/tools/grub.cfg b/tools/grub.cfg index f5db0025..17b4ec25 100644 --- a/tools/grub.cfg +++ b/tools/grub.cfg @@ -7,9 +7,9 @@ menuentry "Fennix" { load_video clear echo "Loading kernel" - multiboot2 /fennix.elf --ioapicirq=1 --udl=true --simd=true --init=/bin/init - echo "Loading initrd" - module2 /initrd.tar initrd + multiboot2 /fennix.elf --ioapicirq=1 --udl=true --simd=true --init=/bin/fsh + echo "Loading rootfs" + module2 /rootfs.tar rootfs echo "Booting..." boot } diff --git a/tools/limine.cfg b/tools/limine.cfg index 36decb2e..a89af2e2 100644 --- a/tools/limine.cfg +++ b/tools/limine.cfg @@ -8,5 +8,5 @@ INTERFACE_BRANDING=Fennix KERNEL_CMDLINE=--ioapicirq=1 --udl=true --simd=true KERNEL_PATH=boot:///fennix.elf - MODULE_PATH=boot:///initrd.tar - MODULE_CMDLINE=initrd + MODULE_PATH=boot:///rootfs.tar + MODULE_CMDLINE=rootfs diff --git a/tools/lynx.cfg b/tools/lynx.cfg index 3ab6a9bf..8266bd63 100644 --- a/tools/lynx.cfg +++ b/tools/lynx.cfg @@ -1,2 +1,2 @@ CMDLINE=debug -INITRD=initrd.tar +INITRD=rootfs.tar