|
ed0727332b
|
x86_64/CPU: Assign a proper IRQ number to the keyboard interrupt
continuous-integration/drone/push Build is passing
Ah, the dangers of copy-and-paste...
|
2023-04-04 12:13:34 +00:00 |
|
|
64bca780a7
|
kernel: Add /dev/zero
continuous-integration/drone/push Build is passing
|
2023-03-30 21:19:16 +02:00 |
|
|
2fbc6105d7
|
kernel+libc: Add O_DIRECTORY and use it in opendir()
continuous-integration/drone/push Build is passing
|
2023-03-29 22:23:52 +02:00 |
|
|
01813ff0dd
|
String: Rename from_string_literal to from_cstring
|
2023-03-29 17:34:30 +02:00 |
|
|
b6c35124d6
|
libluna: OwnedStringView -> String
Also with inline storage!
|
2023-03-29 17:28:22 +02:00 |
|
|
5623f3c699
|
tmpfs: Set the mode of the root directory on creation
|
2023-03-29 01:06:26 +02:00 |
|
|
0847cfcb65
|
kernel: Add a getdents() syscall
continuous-integration/drone/push Build is passing
|
2023-03-28 21:28:56 +02:00 |
|
|
8eb4d693ac
|
VFS: Add virtual method get() for getdents() and make existence checking occur in add_entry()
|
2023-03-28 21:15:26 +02:00 |
|
|
6239ed83c7
|
kernel+libc: Add F_GETFD, F_SETFD, F_GETFL and F_SETFL to fcntl
|
2023-03-28 20:55:38 +02:00 |
|
|
1635eaf992
|
kernel: Eliminate the splash screen
Userspace is free to show a splash if it wants, but the kernel shouldn't force it upon us.
|
2023-03-24 21:48:32 +01:00 |
|
|
770286a19d
|
kernel+libc: Implement fcntl() for F_DUPFD and F_DUPFD_CLOEXEC
continuous-integration/drone/push Build is passing
|
2023-03-24 21:33:20 +01:00 |
|
|
0de41410c6
|
kernel: Use path as the new process name instead of argv[0]
|
2023-03-24 21:26:45 +01:00 |
|
|
36e48b2ad2
|
kernel: Do not attempt to close non-existent FDs on exec()
|
2023-03-24 21:21:13 +01:00 |
|
|
374a9ff7b8
|
kernel+libc: Implement O_CLOEXEC
|
2023-03-24 21:19:24 +01:00 |
|
|
d48d0efb07
|
kernel: Add names to threads
continuous-integration/drone/push Build is passing
|
2023-03-24 21:05:38 +01:00 |
|
|
4d3050eaab
|
kernel: Retrieve all thread information before marking it as dead in waitpid()
continuous-integration/drone/push Build is passing
In case we get interrupted by the reaper thread.
|
2023-03-24 20:59:07 +01:00 |
|
|
e76ccd6c4c
|
kernel+libc+init: Add getppid() and wait()
continuous-integration/drone/push Build is passing
|
2023-03-24 17:39:55 +01:00 |
|
|
7efcc06090
|
kernel+init+sh: Implement parent processes and waitpid(-1, ...)
continuous-integration/drone/push Build is passing
|
2023-03-24 17:37:04 +01:00 |
|
|
f084b57f39
|
kernel+sh: Allow using Ctrl+D to send EOF
continuous-integration/drone/push Build is failing
|
2023-03-24 17:21:21 +01:00 |
|
|
d63c8abbfd
|
kernel/x86_64: Terminate page faults in a waitpid-friendly way
|
2023-03-24 00:52:17 +01:00 |
|
|
b6fb5f3dfe
|
kernel+libc: Implement waitpid()
continuous-integration/drone/push Build is passing
|
2023-03-23 22:42:24 +01:00 |
|
|
41c7e3780d
|
kernel: Add support for exit codes and start preparing for waitpid()
|
2023-03-23 22:25:56 +01:00 |
|
|
937802964c
|
kernel: Invert O_NONBLOCK to check whether a thread should block
|
2023-03-23 21:34:38 +01:00 |
|
|
95e884db97
|
kernel: Fix compilation
|
2023-03-23 21:34:09 +01:00 |
|
|
03adaa356c
|
kernel: Avoid printing keypresses twice
|
2023-03-23 21:33:50 +01:00 |
|
|
cda036ce70
|
ConsoleDevice: Use a temporary buffer for backspace handling
continuous-integration/drone/push Build is failing
|
2023-03-23 21:22:12 +01:00 |
|
|
d33fccc66f
|
kernel: Implement reading from /dev/console
|
2023-03-19 19:15:19 +01:00 |
|
|
51f0bdff0e
|
kernel+libc: Add O_NONBLOCK
continuous-integration/drone/push Build is passing
|
2023-03-19 11:25:14 +01:00 |
|
|
41514d9ad2
|
kernel: Add support for blocking reads
|
2023-03-19 11:21:50 +01:00 |
|
|
cd00e41f59
|
arch/x86_64: Decode keyboard scancodes
continuous-integration/drone/push Build is passing
|
2023-03-19 11:17:43 +01:00 |
|
|
54f2d35416
|
kernel: Add the fork() system call
|
2023-03-18 23:45:48 +01:00 |
|
|
a4ac3c85ed
|
kernel+libc: Copy argv to userspace
continuous-integration/drone/push Build is passing
|
2023-03-18 22:25:19 +01:00 |
|
|
0b00dc3fe4
|
kernel/exec: Rename item to string_addr
continuous-integration/drone/push Build is passing
|
2023-03-18 21:56:34 +01:00 |
|
|
7f50893786
|
kernel/exec: Copy argv from userspace
continuous-integration/drone/push Build is passing
|
2023-03-18 21:55:16 +01:00 |
|
|
49952320d6
|
kernel+libluna: Remove console_write entirely
continuous-integration/drone/push Build is passing
|
2023-03-18 20:12:59 +01:00 |
|
|
6a6a56a8b4
|
kernel: Make /dev/console actually respect the length parameter instead of trusting userspace's null terminators
|
2023-03-18 20:10:00 +01:00 |
|
|
d01ba20749
|
kernel/TextConsole: Add a write() function that accepts a fixed-size buffer instead of relying on null terminators
|
2023-03-18 20:09:10 +01:00 |
|
|
629ed9e43b
|
libc: Start switching to /dev/console for console IO and add a proper init
|
2023-03-18 19:23:18 +01:00 |
|
|
7173c05a22
|
kernel: Add support for special device files and add a mknod() syscall
|
2023-03-18 09:10:33 +01:00 |
|
|
b9e8030aac
|
kernel: Free the initial ramdisk memory after copying everything into the VFS
continuous-integration/drone/push Build is passing
|
2023-03-16 23:02:53 +01:00 |
|
|
59838f1225
|
kernel: Replace some raw divisions with get_blocks_from_size()
|
2023-03-16 23:01:35 +01:00 |
|
|
8c72e9a49a
|
kernel: Add an exec() system call
continuous-integration/drone/push Build is passing
Doesn't support arguments or environment for now.
|
2023-03-16 22:44:58 +01:00 |
|
|
08c888eaae
|
kernel+libc: Remove (de)allocate_memory and replace it with POSIX mmap
continuous-integration/drone/push Build is passing
|
2023-03-14 20:43:15 +01:00 |
|
|
d66506256d
|
kernel/VFS+libc: Introduce modes
continuous-integration/drone/push Build is passing
|
2023-03-12 16:55:46 +01:00 |
|
|
02dbcbbfa1
|
kernel: Add strdup_from_user()
continuous-integration/drone/push Build is passing
|
2023-03-12 16:30:36 +01:00 |
|
|
682d3c753e
|
kernel+libc: Add mkdir()
continuous-integration/drone/push Build is passing
|
2023-03-12 15:32:09 +01:00 |
|
|
354ffd033c
|
VFS: Add a size() method to inodes to implement seeking to the end of a file
continuous-integration/drone/push Build is passing
|
2023-03-12 14:49:21 +01:00 |
|
|
b54a7f3a80
|
kernel+libc: Add O_* flags and parse them in open()
continuous-integration/drone/push Build is passing
O_RDONLY, O_WRONLY, O_RDWR, O_TRUNC, O_CREAT and O_EXCL are fully implemented.
O_APPEND is partially implemented.
Other flags are not here yet.
|
2023-03-12 14:43:58 +01:00 |
|
|
bd572473ad
|
kernel: Remove FileDescriptorTable and add a helper to resolve fds to FileDescriptors
|
2023-03-12 13:57:38 +01:00 |
|
|
7e655e320a
|
kernel+libc: Add the lseek() syscall, and fseek, ftell, rewind, fsetpos, and fgetpos
continuous-integration/drone/push Build is passing
|
2023-03-12 13:15:24 +01:00 |
|