Block a user
a18e50ff34
apps: Add cat and edit
d63c8abbfd
kernel/x86_64: Terminate page faults in a waitpid-friendly way
e2eb9a92cb
sh: Don't do anything if Enter is pressed with no command
b6fb5f3dfe
kernel+libc: Implement waitpid()
41c7e3780d
kernel: Add support for exit codes and start preparing for waitpid()
355dd6c32b
apps: Add sh
767dbf521c
Vector: Fix crash when trying to use vector after a call to clear()
00672c4b22
apps/hello: Demo fgets
0e9890901f
libc: Add (f)getc, getchar, and fgets
937802964c
kernel: Invert O_NONBLOCK to check whether a thread should block
95e884db97
kernel: Fix compilation
03adaa356c
kernel: Avoid printing keypresses twice
cda036ce70
ConsoleDevice: Use a temporary buffer for backspace handling
83492339ec
Buffer: Add an append_data() method
89ad6869a4
Vector: Add a clear() method
bab9600be5
libc: Add creat()
31ef96ebfc
libc: Add stdin
d33fccc66f
kernel: Implement reading from /dev/console
51f0bdff0e
kernel+libc: Add O_NONBLOCK
41514d9ad2
kernel: Add support for blocking reads
cb1ef3e404
libc: Add (v)fprintf and make (v)printf use that
6a6a56a8b4
kernel: Make /dev/console actually respect the length parameter instead of trusting userspace's null terminators
d01ba20749
kernel/TextConsole: Add a write() function that accepts a fixed-size buffer instead of relying on null terminators
629ed9e43b
libc: Start switching to /dev/console for console IO and add a proper init