|
f150425222
|
kernel: Create a new shared memory object if the old one was lost
|
2023-08-03 10:31:29 +02:00 |
|
|
b447c1a261
|
kernel: Set the shmem->inode field in query_shared_memory
|
2023-08-03 09:25:56 +02:00 |
|
|
f8e86b3b01
|
fix
|
2023-08-03 09:25:38 +02:00 |
|
|
d8f6af99b8
|
kernel: Let devices use shared memory
|
2023-08-03 09:25:23 +02:00 |
|
|
9443551d71
|
kernel: Add shared memory
|
2023-08-02 22:20:05 +02:00 |
|
|
4794d0dfef
|
kernel: Add a keyboard device for graphical session
|
2023-08-02 17:20:13 +02:00 |
|
|
9c1e275f34
|
kernel: Make /dev/mouse read-write only for root
|
2023-08-02 17:19:37 +02:00 |
|
|
f8cb6e03df
|
kernel: Allow turning off the TTY by setting it to graphical mode
continuous-integration/drone/push Build is passing
|
2023-08-02 15:16:10 +02:00 |
|
|
df77fc8de8
|
libluna: Remove make_array() and destroy_array()
Placement new on arrays is a bit unreliable and could cause out-of-bounds data accesses.
|
2023-08-02 14:47:58 +02:00 |
|
|
e8f3dd4cf9
|
kernel: Add a PS/2 mouse driver
|
2023-08-02 11:55:45 +02:00 |
|
|
dc35c42371
|
kernel/VFS: Rework the metadata system so that there is a single metadata struct
continuous-integration/drone/push Build is passing
|
2023-08-01 17:20:28 +02:00 |
|
|
187f0ff83e
|
kernel: Rename Inode::blocking() to Inode::will_block_if_read()
continuous-integration/drone/pr Build is passing
|
2023-07-30 11:41:53 +02:00 |
|
|
fb08594a18
|
kernel: Separate FileDescriptors and OpenFileDescription
Also, add a did_close() callback for OpenFileDescriptions losing all their references.
|
2023-07-30 11:33:06 +02:00 |
|
|
c4e30c3029
|
kernel: Add functionality to allow external inodes (such as sockets) to acquire an inode number from a file system
This is only implemented in tmpfs.
|
2023-07-30 11:33:06 +02:00 |
|
|
c1d08b904e
|
kernel+libluna: Add Buffer::dequeue_data()
|
2023-07-30 11:33:05 +02:00 |
|
|
200bb6c240
|
kernel+libc+libos: Add inode type for sockets
|
2023-07-30 11:33:05 +02:00 |
|
|
4ed7ec5e93
|
libluna: Store SharedPtr's ref count in the object itself
continuous-integration/drone/push Build is passing
|
2023-07-30 11:32:46 +02:00 |
|
|
11df5a2ec3
|
kernel: Use pid_t internally for process IDs
continuous-integration/drone/push Build is passing
This removes a bunch of casts between pid_t and u64, and makes more sense since pid_t is literally the data type for process IDs.
|
2023-07-26 21:32:00 +02:00 |
|
|
cd6bf745a7
|
tests+kernel+init: Run tests automatically in a headless way
continuous-integration/drone/push Build is failing
|
2023-07-21 14:09:37 +02:00 |
|
|
0d41e1f7b6
|
kernel/ext2: Change outdated FIXME
continuous-integration/drone/push Build is passing
|
2023-07-15 13:17:58 +02:00 |
|
|
de6fe7f7c2
|
kernel+libc+sh: Make the TTY device actually follow termios rules
continuous-integration/drone/push Build is passing
Like, so much more termios compatibility!
|
2023-07-13 20:33:20 +02:00 |
|
|
efd5bae7a5
|
kernel: Implement querying the terminal window size
continuous-integration/drone/push Build is failing
|
2023-07-12 22:09:28 +02:00 |
|
|
546d900454
|
libc+apps: Start implementing POSIX-compliant termios.h wrappers around tty ioctls
continuous-integration/drone/push Build is passing
|
2023-07-12 19:23:06 +02:00 |
|
|
81e1fdf81e
|
kernel+libc+login+sh+su: Implement foreground and background process groups in the default console
continuous-integration/drone/push Build is passing
Also, the console sends SIGINT to the foreground process group when ^C is pressed!
|
2023-07-12 13:49:37 +02:00 |
|
|
69f9701097
|
kernel+libc: Implement isatty()
continuous-integration/drone/push Build is failing
|
2023-07-11 12:05:09 +02:00 |
|
|
56f3d26969
|
kernel+libluna: Fix the CRC32 algorithm and use it to verify the GPT header
continuous-integration/drone/push Build is passing
|
2023-07-10 14:54:55 +02:00 |
|
|
a1b92fcc3f
|
kernel: Add the MOUNT_DEBUG flag
|
2023-07-10 13:04:34 +02:00 |
|
|
3b1219ecf2
|
kernel/ext2: Make the inner extended superblock struct packed as well
continuous-integration/drone/push Build is passing
|
2023-07-02 19:50:27 +02:00 |
|
|
d363d5e915
|
kernel/ext2: Make sure we don't crash when accessing the last inode
continuous-integration/drone/push Build is passing
|
2023-07-02 17:30:14 +02:00 |
|
|
da689dd1a7
|
kernel/ext2: Allow reading up to 4 MB of data from files
This is done by scanning the singly indirect pointer of the inode.
|
2023-06-25 20:35:39 +02:00 |
|
|
41f578aa18
|
kernel/ext2: Add support for symbolic links
|
2023-06-25 20:35:38 +02:00 |
|
|
34e1ef36b1
|
kernel: Make pivot_root() reset the parent entry of the new root directory
Otherwise it would just be pointing to the old parent fs, and we don't want that.
|
2023-06-25 20:35:38 +02:00 |
|
|
a62265b504
|
kernel/ext2: Implement directory traversal
|
2023-06-25 20:35:37 +02:00 |
|
|
4fe6c506ec
|
kernel/ext2: Implement Inode::read()
|
2023-06-25 20:35:37 +02:00 |
|
|
77686b26f8
|
kernel/Ext2: Read the root inode metadata from the disk
|
2023-06-25 20:35:36 +02:00 |
|
|
a9460469d9
|
kernel+libc+apps: Add a source parameter to the mount() system call
|
2023-06-25 20:35:35 +02:00 |
|
|
707f64acb5
|
kernel: Add an Ext2 filesystem skeleton
|
2023-06-25 20:35:35 +02:00 |
|
|
3b6f5b28fc
|
kernel: Make the configurable filename restrictions actually compile
continuous-integration/drone/push Build is passing
|
2023-06-22 20:24:33 +02:00 |
|
|
fdf2bb2501
|
kernel: Make the filename restrictions configurable
continuous-integration/drone/push Build is passing
|
2023-06-22 20:22:43 +02:00 |
|
|
b4a6e4d56d
|
libluna/PathParser: Make dirname() and basename() static functions
continuous-integration/drone/push Build is passing
This avoids creating a PathParser to use them, which allocates memory that won't be used.
|
2023-06-19 11:21:58 +02:00 |
|
|
b7bdec9ece
|
kernel: Add a bunch more config definitions and hide debug messages behind them
|
2023-06-18 20:18:00 +02:00 |
|
|
27d9cd0e87
|
kernel: Move TmpFS::*Inode into a separate file
continuous-integration/drone/push Build is passing
|
2023-06-18 11:33:40 +02:00 |
|
|
266fa4a0d4
|
kernel: Start counting partition numbers at 1
continuous-integration/drone/push Build is passing
This makes more sense for the end user.
|
2023-06-17 19:50:58 +02:00 |
|
|
7cace9a0d7
|
kernel: Provide more meaningful panic messages for critical failures
|
2023-06-17 19:43:25 +02:00 |
|
|
e79d4297ea
|
kernel: Make the root inode be a mountpoint as well + add pivot_root()
continuous-integration/drone/push Build is passing
|
2023-06-17 17:27:22 +02:00 |
|
|
592558d7ad
|
kernel: Add GUID partition table support
|
2023-06-17 12:03:37 +02:00 |
|
|
32d2e0e6b7
|
kernel: Remove register_special_device()'s name parameter
continuous-integration/drone/push Build is passing
This is now duplicate information that can be queried using device->device_path().
|
2023-06-16 21:46:51 +02:00 |
|
|
738b218a49
|
kernel/ATA+MBR: Dynamically generate device names + create devices for MBR partitions
continuous-integration/drone/pr Build is passing
|
2023-06-16 21:30:50 +02:00 |
|
|
72b8ebe02c
|
kernel: Make the MBR code read from a device instead of an inode
continuous-integration/drone/pr Build is failing
|
2023-06-16 21:10:33 +02:00 |
|
|
93922932fa
|
kernel: Start reading the MBR partition table from the ATAPI drive
|
2023-06-16 21:10:33 +02:00 |
|