Bananymous
766439db6d
Kernel: Start work on adding support for new filesystems
...
Old code tried to create ext2 filesystem from all devices.
2024-06-11 10:50:26 +03:00
Bananymous
d94f6388b7
Kernel: Fix all broken locks from new mutexes
2024-02-28 22:45:34 +02:00
Bananymous
9594ee8e47
Kernel: Start making device numbers unique for each device
2024-02-22 15:53:48 +02:00
Bananymous
dfe5a2d665
All: Cleanup all files
...
Add newline to end of files and remove whitespace from end of lines
2024-01-24 15:53:38 +02:00
Bananymous
dd9af56e21
Kernel: Start work on making inodes more thread safe
...
All inode operations are now locked and thread blocked
2023-09-10 00:31:42 +03:00
Bananymous
c7ec19c25c
Kernel: Add basic Credentials for the system
...
Now filesystem access/open, etc confirm that you have access for rwxs
2023-06-11 20:06:06 +03:00
Bananymous
7bbdee6cc4
Kernel: Symlinks are now working
...
We still have to implement loop or depth detection
2023-06-02 11:43:46 +03:00
Bananymous
835d32814d
Kernel: add basic support for symlinks
2023-06-01 00:24:45 +03:00
Bananymous
a60f8098ee
Kernel: Fix traversing back from mount points
2023-04-01 01:54:35 +03:00
Bananymous
b048630e5b
Kernel: Improve locking in Process, VFS and ATAController
...
We used to block on all process access. This meant that shell
reading the keyboard input would block all VFS access making disk
accesses practically impossible. We now block only when it is
necessary :)
2023-03-30 22:02:16 +03:00
Bananymous
d4c03d3939
Kernel: root partition is now passed from the commandline
2023-03-30 18:46:19 +03:00
Bananymous
8e68d2e3ea
Kernel: Shell can now mount partitions
2023-03-30 15:06:41 +03:00
Bananymous
e2791e5260
Kernel: StorageDevices and Controllers are now devices
2023-03-30 14:22:15 +03:00
Bananymous
9a4d603a62
Kernel: Remove the mount test from VFS
2023-03-30 11:43:24 +03:00
Bananymous
ab3cdea548
Kernel: Rewrite mounting code
2023-03-29 21:34:48 +03:00
Bananymous
62fb233eb1
Kernel: DeviceManager is now a 'FileSystem' so it can expose devices
...
Shell reads keyboard through /dev/input :)
2023-03-29 11:50:46 +03:00
Bananymous
e4bcd98904
Kernel: Add basic mounting to VFS.
2023-03-19 05:51:25 +02:00
Bananymous
1a26a318a4
Kernel: Rework filesystem reading
...
We now read from a filesystem to user provided buffer.
Read sizes are determined by read call.
You should now get file descriptors and do reading through Process::current()
2023-03-17 21:18:41 +02:00
Bananymous
1f2ceeb329
Kernel: VFS caches currently open inodes
2023-03-16 15:31:33 +02:00
Bananymous
8940ff8002
Kernel: You don't have to check whether VFS is initialized or not
...
VFS now returns Error when attempting to traverse inodes if it did
not find root partition
2023-03-09 02:31:24 +02:00
Bananymous
23b3028e15
Kernel: Rename RefCounted -> RefPtr and implement RefCounted
2023-03-08 03:26:25 +02:00
Bananymous
ee5d02aa70
Kernel: Rewrite basically all current disk io stuff
...
This is a big commit that was kinda hard to split to smaller ones.
Essentially we now look at all the mass storage devices from PCI
and initialize (P)ATA devices. This doesn't provide any more functionality
but better abstractions and everything doesn't have to be on its old
default port that might be different for modern computers.
2023-02-26 03:00:29 +02:00
Bananymous
5d31e89574
Kernel: Update ErrorOr API and add path find to VFS
...
These two are done on the same commit since Changes to Shell were
annoying to make work with only one change
2023-02-22 01:23:11 +02:00
Bananymous
80006ea137
Kernel: Initial work on filesystem
...
We support now ext2 directory listing. File reading is not yet supported.
2023-02-20 01:46:00 +02:00