lunaix-os.git
2 years agofix: corrected time conversion on alarm/sleep syscall
Minep [Sun, 20 Aug 2023 00:27:12 +0000 (01:27 +0100)]
fix: corrected time conversion on alarm/sleep syscall
fix: makefile does not respond to source file change
feat: makefile respond to header change
chore: add description on arch-specific code
chore: clean up

2 years agorefactor: one more step towards arch-agnostic design
Minep [Sat, 19 Aug 2023 22:54:30 +0000 (23:54 +0100)]
refactor: one more step towards arch-agnostic design
feat: linker generated array to free up the need of those nasty explicit invocation init_* functions

2 years agorefactor: striped more arch-related code from the kernel code base
Minep [Sat, 12 Aug 2023 16:37:14 +0000 (17:37 +0100)]
refactor: striped more arch-related code from the kernel code base
feat: memory map generation from description file

2 years agorefactor: organize all arch related files together.
Minep [Thu, 10 Aug 2023 18:46:04 +0000 (19:46 +0100)]
refactor: organize all arch related files together.
refactor: better code templating

2 years agorefactor: decouple i386 specific instruction invocation
Minep [Tue, 25 Jul 2023 18:24:03 +0000 (19:24 +0100)]
refactor: decouple i386 specific instruction invocation
refactor: re-organize the directory structure

2 years agofix: corner case for x87 context restore on execve
Minep [Sun, 23 Jul 2023 17:45:53 +0000 (18:45 +0100)]
fix: corner case for x87 context restore on execve
chore: clean up unused fields

2 years agorefactor: Optimize the signal context overhead
Minep [Sun, 23 Jul 2023 13:35:18 +0000 (14:35 +0100)]
refactor: Optimize the signal context overhead
refactor: remove kernel memory overhead for saving x87 context by saving it into user stack

2 years agorefactor: Optimize the context switch overhead
Minep [Sun, 23 Jul 2023 10:39:16 +0000 (11:39 +0100)]
refactor: Optimize the context switch overhead

2 years agofix: argv, envp passing
Minep [Sat, 22 Jul 2023 22:17:28 +0000 (23:17 +0100)]
fix: argv, envp passing
chore: take care of some warnings

2 years agoedit readme
Minep [Fri, 21 Jul 2023 18:28:03 +0000 (19:28 +0100)]
edit readme

2 years agorefactor: full rewrite of signal feature
Minep [Fri, 21 Jul 2023 18:19:01 +0000 (19:19 +0100)]
refactor: full rewrite of signal feature
refactor: scheduler logic
refactor: (hhk) initial page mapper.
fix: remove debugging user access to kernel page
feat: make signal.h more posix compliant

2 years agorefactor: rewrite kernel's make script
Minep [Thu, 20 Jul 2023 21:07:37 +0000 (22:07 +0100)]
refactor: rewrite kernel's make script
fix: change linking script to match rewrited kernel makefile
fix: some recent exposed issues.

2 years agorefactor: restructure the user space stuff.
Minep [Mon, 17 Jul 2023 17:17:20 +0000 (18:17 +0100)]
refactor: restructure the user space stuff.
refactor: better isolation between kernel and user header file
refactor: rebuild user space make system

2 years agochore: fix almost *ALL* warnings.
Minep [Sun, 16 Jul 2023 23:05:34 +0000 (00:05 +0100)]
chore: fix almost *ALL* warnings.

2 years agorefactor: decouple the executable file implementations with execve functionality.
Minep [Sun, 16 Jul 2023 17:20:16 +0000 (18:20 +0100)]
refactor: decouple the executable file implementations with execve functionality.

2 years agoedit readme
Minep [Mon, 10 Jul 2023 20:53:58 +0000 (21:53 +0100)]
edit readme

2 years agorefactor: elf parsing utility and exec related
Minep [Mon, 10 Jul 2023 20:37:38 +0000 (21:37 +0100)]
refactor: elf parsing utility and exec related
refactor: ISA abstraction setup

2 years agofeat: refine symbolic link support.
Minep [Sun, 25 Jun 2023 15:47:55 +0000 (16:47 +0100)]
feat: refine symbolic link support.

2 years agofeat: dynamic boot medium probing and mounting
Minep [Sun, 18 Jun 2023 20:27:23 +0000 (21:27 +0100)]
feat: dynamic boot medium probing and mounting
fix: null pointer exception in usr/sh
fix: parameter passing by uwrapper

2 years agofeat: shell and signal demo as loadable user executable
Minep [Sun, 18 Jun 2023 18:08:07 +0000 (19:08 +0100)]
feat: shell and signal demo as loadable user executable
fix: incorrect offset when mmap segments
refactor: streamline loading of memory-mapped file
other minor refactorings

2 years agoMerge branch 'master' into prog-loader
Minep [Wed, 14 Jun 2023 21:34:07 +0000 (22:34 +0100)]
Merge branch 'master' into prog-loader

2 years agofix: the correct way to detect ahci LBA48 support
Minep [Wed, 14 Jun 2023 21:29:22 +0000 (22:29 +0100)]
fix: the correct way to detect ahci LBA48 support

2 years agofix: promote to gcc-12.2.0 (close #15)
Minep [Sat, 10 Jun 2023 20:08:17 +0000 (21:08 +0100)]
fix: promote to gcc-12.2.0 (close #15)

2 years agoupdate readme
Minep [Wed, 22 Feb 2023 19:05:55 +0000 (19:05 +0000)]
update readme

2 years agoMerge branch 'master' into prog-loader
Minep [Tue, 17 Jan 2023 10:30:13 +0000 (10:30 +0000)]
Merge branch 'master' into prog-loader

2 years agoMerge branch 'master' of github.com:Minep/lunaix-os
Minep [Tue, 17 Jan 2023 10:26:31 +0000 (10:26 +0000)]
Merge branch 'master' of github.com:Minep/lunaix-os

2 years agofix: sleeper issue #13
Minep [Tue, 17 Jan 2023 10:21:03 +0000 (10:21 +0000)]
fix: sleeper issue #13

2 years agofeat: brk and sbrk (mmap based)
Minep [Fri, 6 Jan 2023 00:47:54 +0000 (00:47 +0000)]
feat: brk and sbrk (mmap based)
feat: environ access
refactor: status code user space port

2 years agoupdate readmes
Minep [Wed, 4 Jan 2023 22:28:36 +0000 (22:28 +0000)]
update readmes
upload ELF related specification

2 years agofeat: closedir(2)
Minep [Wed, 4 Jan 2023 16:35:48 +0000 (16:35 +0000)]
feat: closedir(2)
regression: execve
fix: wrong signature for printf
fix: sys_readdir context misuse
fix: page fault handler: offset calculation for memory-mapped file
fix: (merged) interrupt reworks in favour of execve.
fix: mmap: gap fitting

2 years agoMerge branch 'interrupt-rework' into prog-loader
Minep [Wed, 4 Jan 2023 16:12:56 +0000 (16:12 +0000)]
Merge branch 'interrupt-rework' into prog-loader

2 years agofix: previous interrupt context lost after a nested interrupt
Minep [Wed, 4 Jan 2023 16:06:20 +0000 (16:06 +0000)]
fix: previous interrupt context lost after a nested interrupt
fix: disable function inlining optimization as it could potentially cause BUGS!

2 years agorefactor: cut off some bloats in intr_ctx
Minep [Wed, 4 Jan 2023 02:15:56 +0000 (02:15 +0000)]
refactor: cut off some bloats in intr_ctx

2 years agofeat: provide some libc routines only for testing
Minep [Mon, 2 Jan 2023 16:47:37 +0000 (16:47 +0000)]
feat: provide some libc routines only for testing
feat: ls
feat: readdir(3) for wrapping sys_readdir(2)
chore: clean ups

2 years agoregression: elf loading
Minep [Mon, 2 Jan 2023 14:25:22 +0000 (14:25 +0000)]
regression: elf loading

2 years agofeat: wrapper function for bootstraping user program
Minep [Sun, 1 Jan 2023 01:44:46 +0000 (01:44 +0000)]
feat: wrapper function for bootstraping user program
feat: user runtime library for writing user space program
wip: initd
refactor: separate user space code from kernel code (syscall and some inits)
refactor: rewrite makefile to make it more flexible and modular

2 years agofeat: heap support and re-worked
Minep [Sat, 31 Dec 2022 21:57:49 +0000 (21:57 +0000)]
feat: heap support and re-worked
refactor: re-worked user program bootstraping
refactor: mm_region interfacings
refactor: remove kalloc, as no longer needed.
regression: mmap, munmap

2 years agofeat: basic elf32 loader (only LOAD segment is supported)
Minep [Sat, 31 Dec 2022 01:26:10 +0000 (01:26 +0000)]
feat: basic elf32 loader (only LOAD segment is supported)
feat: execve(2)
feat: MAP_FIXED, MAP_FIXED_NOREPLACE
refactor: mem_map: improved arguments passing
refactor: mm_region: custom page init policy and managed region_release()
refactor: use mem_map to create user stack
chore: update READMEs

2 years agofeat: msync(2)
Minep [Thu, 29 Dec 2022 20:53:39 +0000 (20:53 +0000)]
feat: msync(2)
fix: sync mappings when destorying process
fix: regression on mmap(2)
refactor: rename PD_REFERENCE to VMS_SELF
refactor: rename PD_MOUNT_1 to VMS_MOUNT_1

2 years agorefactor: separate syscall interfaces from kernel space, into posix compliant structure.
Minep [Thu, 29 Dec 2022 01:03:17 +0000 (01:03 +0000)]
refactor: separate syscall interfaces from kernel space, into posix compliant structure.

2 years agoregression: mmap for fd
Minep [Wed, 28 Dec 2022 23:19:19 +0000 (23:19 +0000)]
regression: mmap for fd
fix: replace %ebp register to %esi for passing 5-th arg when switching to syscall dispatcher.
feat: support for anonymous mapping
refactor: mm_region interfaces
refactor: page fault handler clean up.
refactor: resolve cyclic dependencies between mm.h and fs.h
refactor: rename readdir to sys_readdir to distinguish readdir(3)
wip refactor: separating syscall definitions to userspace.

2 years agoMerge pull request #10 from jackwang0108/master
Lunaixsky [Sun, 11 Dec 2022 14:52:19 +0000 (14:52 +0000)]
Merge pull request #10 from jackwang0108/master

Add all-build tool

2 years agoadd all-build tool. Add qemu support, add configure option support
JackWang [Fri, 9 Dec 2022 15:48:56 +0000 (09:48 -0600)]
add all-build tool. Add qemu support, add configure option support

2 years agoMerge pull request #8 from Catrol-s-Forks/master
Lunaixsky [Thu, 8 Dec 2022 13:27:59 +0000 (13:27 +0000)]
Merge pull request #8 from Catrol-s-Forks/master

Update README.md for link

2 years agoUpdate README_en.md
常青园晚 [Thu, 8 Dec 2022 11:53:54 +0000 (19:53 +0800)]
Update README_en.md

3 years agoUpdate README.md
常青园晚 [Wed, 7 Dec 2022 05:52:50 +0000 (13:52 +0800)]
Update README.md

3 years agoMerge branch 'master' into prog-loader
Minep [Mon, 5 Dec 2022 20:25:20 +0000 (20:25 +0000)]
Merge branch 'master' into prog-loader

3 years agorefactor: vfs_open: start opening iff there is a empty fd slot available.
Minep [Mon, 5 Dec 2022 20:23:52 +0000 (20:23 +0000)]
refactor: vfs_open: start opening iff there is a empty fd slot available.

3 years agofeat: (vm) memory mapping support: mmap/munmap
Minep [Sun, 20 Nov 2022 22:28:38 +0000 (22:28 +0000)]
feat: (vm) memory mapping support: mmap/munmap
fix: (vm_region) ensure the ordering of regions.
fix: (hal/rnd) correct the clobbered register name.

3 years agofeat: (device) dev_null and dev_rand support
Minep [Sun, 20 Nov 2022 15:04:28 +0000 (15:04 +0000)]
feat: (device) dev_null and dev_rand support
feat: versioning stuff

3 years agofeat: (iso9660) finishing up unmount
Minep [Sun, 13 Nov 2022 23:42:08 +0000 (23:42 +0000)]
feat: (iso9660) finishing up unmount
fix: (vfs) no need to do sync when inode getting evicted

3 years agorefactor: replace all stdint::uint32_t into short and more manageable u32_t
Minep [Sun, 13 Nov 2022 22:20:45 +0000 (22:20 +0000)]
refactor: replace all stdint::uint32_t into short and more manageable u32_t

3 years agofeat: (iso9660) rock ridge extension
Minep [Sun, 13 Nov 2022 00:08:59 +0000 (00:08 +0000)]
feat: (iso9660) rock ridge extension
fix: (pcache) over-reading the page cache

3 years agoupdate readme
Minep [Sat, 12 Nov 2022 20:07:19 +0000 (20:07 +0000)]
update readme
add materials related to ISO9660 file system

3 years agofeat: (vfs) write_page and read_page file operations
Minep [Fri, 11 Nov 2022 23:45:51 +0000 (23:45 +0000)]
feat: (vfs) write_page and read_page file operations
fix: (iso9660) infinite loop when scanning iso9660 volume descriptors
chore: clean up

3 years agofeat: (iso9660) implement file read (for both interleaved and non-interleaved mode)
Minep [Fri, 11 Nov 2022 21:45:16 +0000 (21:45 +0000)]
feat: (iso9660) implement file read (for both interleaved and non-interleaved mode)
fix: (blkio) race condition between blkio_commit and pwait
fix: regression
chore: clean up

3 years agofeat: (iso9660) directory read support
Minep [Fri, 11 Nov 2022 19:50:54 +0000 (19:50 +0000)]
feat: (iso9660) directory read support
feat: (syslog) syslog syscall for kernel-level logging in userspace
feat: (blkio) block io feature in sector level granularity
refactor: (vfs) simplify some interfaces
refactor: (vfs) verbose logging on mount
refactor: (lunaix) rename proc.h to lunaix.h
fix: regression
chore: code clean up and add verbose logging message

3 years agofix: (blkio) enforce disk io buffer size alignment (to block size)
Minep [Thu, 10 Nov 2022 22:15:09 +0000 (22:15 +0000)]
fix: (blkio) enforce disk io buffer size alignment (to block size)
fix: (blkio) handle buffer smaller than block size
fix: (ahci) handle the hba interrupt as per spec
refactor: (vecbuf) a more compact interface

3 years agofeat: (ahci) support multiple AHCI controller
Minep [Thu, 10 Nov 2022 18:33:40 +0000 (18:33 +0000)]
feat: (ahci) support multiple AHCI controller
feat: (pci) pci device driver auto-binding
refactor: (isrm) change the interrupt vector type to int
fix: (waitq) mitigation of possible race condition in pwait
fix: (sched) expand stack size of dummy process for allowance in the using of kprintf
refactor: (kinit) reserve the higher half space as earlier as possible.

3 years agorefactor: more compact log message
Minep [Thu, 10 Nov 2022 13:52:47 +0000 (13:52 +0000)]
refactor: more compact log message

3 years agofix: add dummy process to keep scheduler busy
Minep [Thu, 10 Nov 2022 12:53:53 +0000 (12:53 +0000)]
fix: add dummy process to keep scheduler busy
refactor: reduce boot stack size
fix: regression

3 years agofeat: block partition support
Minep [Thu, 10 Nov 2022 02:04:20 +0000 (02:04 +0000)]
feat: block partition support
feat: GUID Partition Table parsing
fix: regression

3 years agofix: memory leakage in file descriptor allocation
Minep [Wed, 9 Nov 2022 21:42:11 +0000 (21:42 +0000)]
fix: memory leakage in file descriptor allocation

3 years agofix: use wait queue for blocking process
Minep [Wed, 9 Nov 2022 18:44:24 +0000 (18:44 +0000)]
fix: use wait queue for blocking process
test: regression on the async io feature.
refactor: centeralize process state changing.

3 years agofeat: asynchronized SATA IO
Minep [Wed, 9 Nov 2022 00:35:48 +0000 (00:35 +0000)]
feat: asynchronized SATA IO
feat: vectorized buffer for flexibility
refactor: block device subsystem.

3 years agoMerge branch 'iso-9660' into block-io
Minep [Sun, 6 Nov 2022 13:41:22 +0000 (13:41 +0000)]
Merge branch 'iso-9660' into block-io

3 years agofix: ensure inlining
Minep [Sun, 23 Oct 2022 11:49:15 +0000 (12:49 +0100)]
fix: ensure inlining
prerequisites check before compiling
add some housekeeping stuff

3 years agoMerge branch 'master' into iso-9660
Minep [Sun, 23 Oct 2022 01:34:09 +0000 (02:34 +0100)]
Merge branch 'master' into iso-9660

3 years agofix: temporary disable the cse optimizations that cause kernel misbehave.
Minep [Sun, 23 Oct 2022 01:16:07 +0000 (02:16 +0100)]
fix: temporary disable the cse optimizations that cause kernel misbehave.

3 years agofix: bugs related to O2 optimization
Minep [Sun, 23 Oct 2022 00:23:11 +0000 (01:23 +0100)]
fix: bugs related to O2 optimization
fix: change default optimization level to O1 as temp workaround.

3 years agorefactor: isrm to centeralize interrupt/irq resources management.
Minep [Sat, 22 Oct 2022 00:13:59 +0000 (01:13 +0100)]
refactor: isrm to centeralize interrupt/irq resources management.

3 years agolaying out the iso9660 structure definitions
Minep [Fri, 21 Oct 2022 21:52:08 +0000 (22:52 +0100)]
laying out the iso9660 structure definitions
fix: switch the order of hash mangling, as it gives higher empirical collision rarity.
refactor: own primitive type shadowing, will be good for future portability.

3 years agofix: PS/2 keyboard initialization sequence
Minep [Wed, 19 Oct 2022 22:30:32 +0000 (23:30 +0100)]
fix: PS/2 keyboard initialization sequence
fix: TLB should be invalidated after L2 page table is hooked.
change readme

3 years agofeat: integrate gdb support over serial port for bare-metal debugging.
Minep [Tue, 18 Oct 2022 23:11:28 +0000 (00:11 +0100)]
feat: integrate gdb support over serial port for bare-metal debugging.

3 years agofix: remove unnecessary backtracing in mnt_mkbusy/chillax
Minep [Mon, 3 Oct 2022 21:11:00 +0000 (22:11 +0100)]
fix: remove unnecessary backtracing in mnt_mkbusy/chillax
fix: no need to do subtree reposition after symlink is resolved (for now).

3 years agofix: missing sudo in toolchain build tool
Minep [Fri, 23 Sep 2022 11:54:15 +0000 (12:54 +0100)]
fix: missing sudo in toolchain build tool

3 years agofix: load x87 fpu default settings
Minep [Sat, 17 Sep 2022 18:10:33 +0000 (19:10 +0100)]
fix: load x87 fpu default settings
fix: forked child should inherit parent's x87 and mmx state

3 years agofeat: add support for process to conduct Intel x87 and MMX related task.
Minep [Sat, 17 Sep 2022 17:25:59 +0000 (18:25 +0100)]
feat: add support for process to conduct Intel x87 and MMX related task.

3 years agorefactor: script to generate code for interrupt installation
Minep [Sat, 17 Sep 2022 13:08:47 +0000 (14:08 +0100)]
refactor: script to generate code for interrupt installation

3 years agoMerge branch 'device-sys'
Minep [Sat, 17 Sep 2022 11:30:46 +0000 (12:30 +0100)]
Merge branch 'device-sys'

3 years agofix: dnode cache syncing for pseudo fs
Minep [Sat, 17 Sep 2022 11:30:24 +0000 (12:30 +0100)]
fix: dnode cache syncing for pseudo fs

3 years agoadd code-topic mapping for better learning experience. close #5
Minep [Fri, 16 Sep 2022 09:48:46 +0000 (10:48 +0100)]
add code-topic mapping for better learning experience. close #5

3 years agofeat: simple read/write lock implementation
Minep [Wed, 31 Aug 2022 13:50:03 +0000 (14:50 +0100)]
feat: simple read/write lock implementation
feat: mutex lock owenership checking
feat: mount points export
chore: cleanups and fixes

3 years agofeat: support ioctl() syscall for direct control to devices
Minep [Tue, 30 Aug 2022 12:20:39 +0000 (13:20 +0100)]
feat: support ioctl() syscall for direct control to devices
feat: add ascii control code support to lunaix tty driver
feat: expose the syscall interface of getpgid() and setpgid()
fix: race condition when issuing SIGINT to process group.
fix: dead lock when a process get terminated while it is holding the inode lock
fix: double freeing the v_file object when terminating a process which it's fd is dup()ed from it's parent process.
todo: taskfs is still problematic..
chore: fixes and refactor.

3 years agofeat: taskfs for export process to filesystem
Minep [Mon, 29 Aug 2022 12:53:49 +0000 (13:53 +0100)]
feat: taskfs for export process to filesystem
chore: refactor, fixes and cleanup

3 years agorefactor: clean up the virtual memory mappings
Minep [Sat, 27 Aug 2022 12:13:52 +0000 (13:13 +0100)]
refactor: clean up the virtual memory mappings
chores: other code clean up

3 years agofeat: (twimap) provide an easy way for mapping kernel objects into filesystem
Minep [Fri, 26 Aug 2022 16:43:06 +0000 (17:43 +0100)]
feat: (twimap) provide an easy way for mapping kernel objects into filesystem
feat: map pci, clock, cake allocator and block devices into filesystem.
chore: fixes and clean up

3 years agofeat: a file system mapping for pci devices
Minep [Thu, 25 Aug 2022 15:04:33 +0000 (16:04 +0100)]
feat: a file system mapping for pci devices
chore: some fixes around and cleanup.

3 years agorefactor: improve on scrolling experience in lunaix console
Minep [Wed, 24 Aug 2022 16:18:24 +0000 (17:18 +0100)]
refactor: improve on scrolling experience in lunaix console
fix: handle the strange scan code sequence on Virtualbox's PS/2 keyboard.
fix: incompatible pointer type passing in devfs.
chore: refactoring and clean up.

3 years agofeat: a pseudo shell environment for basic interacting and testing purpose
Minep [Tue, 23 Aug 2022 11:55:38 +0000 (12:55 +0100)]
feat: a pseudo shell environment for basic interacting and testing purpose
chore: fixes and clean up

3 years agorefactor: add user space printf.
Minep [Mon, 22 Aug 2022 15:41:45 +0000 (16:41 +0100)]
refactor: add user space printf.

3 years agofeat: input device subsystem to resolve race condition on polling input
Minep [Mon, 22 Aug 2022 14:37:56 +0000 (15:37 +0100)]
feat: input device subsystem to resolve race condition on polling input
feat: simple wait queue implementation for efficient waiting.
fix: dead lock when invoking sched_yieldk() inside interrupt context.
chore: refactorings and clean up.

3 years agofeat: (devfs) a new filesystem for device exposure.
Minep [Sun, 21 Aug 2022 15:03:15 +0000 (16:03 +0100)]
feat: (devfs) a new filesystem for device exposure.
chore: fixes and refactorings.

3 years agofeat: mount point flags check
Minep [Sat, 20 Aug 2022 18:48:37 +0000 (19:48 +0100)]
feat: mount point flags check
refactor: eliminate edge case when try to access parent of root.
chore: minor refactoring, clean-up and small fixes.

3 years agofeat: ability to manipulate extended attribute
Minep [Sat, 20 Aug 2022 16:30:33 +0000 (17:30 +0100)]
feat: ability to manipulate extended attribute
chore: minor refactoring and fix.

3 years agofix: symlink resolve.
Minep [Fri, 19 Aug 2022 19:14:02 +0000 (20:14 +0100)]
fix: symlink resolve.
refactor: add some invariants checks.
chore: minor refactors and clean up.

3 years agorefactor: add a simple ramfs for rootfs. Twifs should have more specific job in future.
Minep [Fri, 19 Aug 2022 18:08:00 +0000 (19:08 +0100)]
refactor: add a simple ramfs for rootfs. Twifs should have more specific job in future.
refactor: inode creation, inode cache lookup and it's hashing are now separated.
refactor: reduce the v_inode and v_file size due to ops invariants.
chores: minor refactoring and fixings.

3 years agorefactor: send the command with retry and error detection
Minep [Thu, 18 Aug 2022 15:31:23 +0000 (16:31 +0100)]
refactor: send the command with retry and error detection
chore: other refactorings

3 years agofix: READ_CAPACITY command for 12 bytes CDB SCSI device.
Minep [Thu, 18 Aug 2022 11:34:03 +0000 (12:34 +0100)]
fix: READ_CAPACITY command for 12 bytes CDB SCSI device.
fix: PACKET command hangs in Virtualbox when try to write readonly drive.
fix: possible null pointer dereference in pcache_commit_all.
chore: attach cdrom into QEMU's IDE bus.

3 years agorefactor: mount system reworked
Minep [Wed, 17 Aug 2022 19:03:04 +0000 (20:03 +0100)]
refactor: mount system reworked
refactor: inode cache system reworked
chore: minor refactoring and fixes.