Commit Graph

20 Commits (1e45f08c8f8a58e8f86d89a3341646aff9753f2d)

Author SHA1 Message Date
TheOddGarlic 1e45f08c8f recursively walk directories 2022-08-08 08:21:35 +03:00
TheOddGarlic cc464c4ec3 VFS+Ext2: many simplifications and filesystem initialisation 2022-08-08 08:21:35 +03:00
TheOddGarlic e6aa9a3651 Ext2: find_dir implementation 2022-08-08 08:21:35 +03:00
TheOddGarlic 379b4deb91 Ext2: read_dir implementation 2022-08-08 08:21:35 +03:00
TheOddGarlic d8802f0968 VFS: simplify everything 2022-08-08 08:21:35 +03:00
TheOddGarlic e53d855fa6 vfs+ext2: initial FsNode::read() implementation
The VFS side of things for read() should be done, however due to my
limited ext2 knowledge, I've not implemented partially reading a file,
and in this state only full files can be read.
2022-08-08 08:21:35 +03:00
TheOddGarlic 8a175132d8 vfs: FsNode::release() implementation and weak ref to VFS node in file descriptors 2022-08-08 08:21:35 +03:00
TheOddGarlic dd9ea18f09 vfs: rename FsNode::close() to FsNode::release()
FsNode::close() will instead become a method that takes a closes a file descriptor, while release() will close the whole VFS node.
2022-08-08 08:21:35 +03:00
TheOddGarlic 72883e847b vfs+ext2: full implementation of FsNode::open() 2022-08-08 08:21:35 +03:00
TheOddGarlic 92ac2e9b9a vfs: documentation and a few minor changes 2022-08-08 08:21:35 +03:00
TheOddGarlic fd832dbb26 vfs: FsNode::new() 2022-08-08 08:21:35 +03:00
TheOddGarlic 81fc36df8b vfs: remove name from VFS nodes 2022-08-08 08:21:35 +03:00
TheOddGarlic a1f6bae9df vfs: move operations into trait StorageDevice, hold StorageDevices in KERNEL_STATE 2022-08-08 08:21:35 +03:00
TheOddGarlic 330c3cc7c2 vfs: readdir and finddir operations in FsNode 2022-08-08 08:21:35 +03:00
TheOddGarlic 95004ae7aa feat: start VFS implementation 2022-08-08 08:21:35 +03:00
ondra05 d549b3ee6a chore: fmt 2022-04-12 00:23:11 +02:00
ondra05 4d37a72acf Refactoring
- Applied some clippy lints
- Formatting
- Replaced lazy_static with Lazy from spin
2022-04-11 22:51:54 +02:00
TheOddGarlic 70b2bc5d5b Add repbuild subcommands `mount` & `unmount`
These repbuild subcommands mount the filesystem root to the
userland/root_fs/mnt folder, and this makes editing the initial file
system easier.

This also renames userland/root_rs to userland/root_fs.
2022-03-26 14:52:23 +03:00
Able b4c3abfbfd
TOML config|moved a ton of boiler plate to prelude 2022-03-11 13:51:47 -06:00
Able d62790586a
character device impl, pci devices found 2022-02-09 07:08:40 -06:00