Bananymous
|
50b0413483
|
AOC2023: Implement day9
|
2023-12-09 16:22:43 +02:00 |
Bananymous
|
1e929ffc9d
|
BAN: Restructure sort functions and namespaces
|
2023-12-08 18:58:47 +02:00 |
Bananymous
|
33b3c8bed0
|
AOC2023: Implement day8
Second part was kinda weird. You are supposted to assume something
of the input, which necessarily is not true.
|
2023-12-08 17:13:20 +02:00 |
Bananymous
|
6ebe698218
|
AOC2023: Use the default sort algorithm
|
2023-12-08 00:10:59 +02:00 |
Bananymous
|
1aef0f5f0e
|
sudo: fix some typos
|
2023-12-07 14:05:17 +02:00 |
Bananymous
|
918657b658
|
Shell: do path resolution only if command doesn't contain '/'
|
2023-12-07 13:34:46 +02:00 |
Bananymous
|
d824449ddb
|
AOC2023: Use quick sort in solution
|
2023-12-07 11:55:28 +02:00 |
Bananymous
|
8aa137bdfe
|
BAN: implement quick sort and test for it
|
2023-12-07 11:55:28 +02:00 |
Bananymous
|
412aa05feb
|
BAN: implement exchange sort and test for it
|
2023-12-07 11:55:28 +02:00 |
Bananymous
|
8516f04467
|
AOC2023: optimize hand score calculation
|
2023-12-07 09:26:17 +02:00 |
Bananymous
|
d79703063f
|
AOC2023: implement day7
|
2023-12-07 07:56:56 +02:00 |
Bananymous
|
e811fc0be5
|
Userspace: Implement barebones sudo
This doesn't do any password checking or anything. Just sets uid and
gid before execvp()
|
2023-12-06 18:15:42 +02:00 |
Bananymous
|
56b6b1685d
|
Userspace: implement basic sleep command
|
2023-12-06 13:05:53 +02:00 |
Bananymous
|
e3d15ca905
|
Shell: Handle keyboard input that was interrupted by signal
|
2023-12-06 13:04:33 +02:00 |
Bananymous
|
acee6af98d
|
AOC2023: implement day6
|
2023-12-06 07:27:25 +02:00 |
Bananymous
|
80cbb56878
|
AOC2023: implement day5
|
2023-12-05 09:13:13 +02:00 |
Bananymous
|
52309413af
|
Shell: Verify that command exists before executing it
This prevents page fault somewhere when executing non-existing
commands.
|
2023-12-04 22:57:27 +02:00 |
Bananymous
|
657debc8c0
|
AOC2023: remove unnecessary loop
|
2023-12-04 17:54:10 +02:00 |
Bananymous
|
35999a5ecc
|
AOC2023: implement day4
|
2023-12-04 17:51:27 +02:00 |
Bananymous
|
b0ac571abe
|
AOC2023: implement day3
Solution to second puzzle is not optimal, it definately should be
O(1) space, but I didn't want to think about it.
|
2023-12-03 17:07:09 +02:00 |
Bananymous
|
ba0981c0e3
|
AOC2023: implement day2
|
2023-12-02 16:10:37 +02:00 |
Bananymous
|
24c79d72cd
|
AOC2023: Cleanup day1 code
|
2023-12-01 13:31:55 +02:00 |
Bananymous
|
6dcab1491e
|
AOC2023: implement day1
|
2023-12-01 12:38:01 +02:00 |
Bananymous
|
8f3659dcb9
|
AOC2023: update buildsystem
|
2023-12-01 12:38:01 +02:00 |
Bananymous
|
2188dc2e1c
|
Userspace: Prepare aoc2023 environment :)
|
2023-12-01 01:22:53 +02:00 |
Bananymous
|
ff83c52c89
|
init: set default termios on every username prompt
Before if e.g. Shell crashed init would have broken termios
|
2023-12-01 01:22:53 +02:00 |
Bananymous
|
547aeb0170
|
image: Remove inheritance from Netbpm
This inheritance made no sense
|
2023-11-29 20:56:05 +02:00 |
Bananymous
|
c10dffd719
|
Kernel: Make internal framebuffer bpp constexpr defined in libc
|
2023-11-29 20:07:33 +02:00 |
Bananymous
|
21392e34cb
|
cp: allow copying all files except directories
The old condition seemed odd. This allows taking screen shots by
copying the /dev/fb0.
|
2023-11-29 16:13:40 +02:00 |
Bananymous
|
ea4a45aef2
|
Userspace: Implement basic image rendering for Netbpm
You can now render Netbpm (P6) format image to framebuffer using
`image` command. I added basic test image to
/usr/share/images/sample.ppm
|
2023-11-29 16:11:35 +02:00 |
Bananymous
|
e3890fa7c4
|
Shell: make clear use \e[2J instead of \e[J
This makes kernel to actually clear the full screen. If framebuffer
did not fit font exactly last row would be left partially uncleared
|
2023-11-28 23:55:37 +02:00 |
Bananymous
|
eeadf5fff1
|
Userspace: Implement basic test for framebuffer mmap
|
2023-11-28 23:52:22 +02:00 |
Bananymous
|
816f8091a9
|
mmap-shared-test: Add test case for msync
|
2023-11-22 22:45:16 +02:00 |
Bananymous
|
6e3f176457
|
ls: print link targets when listing files
|
2023-11-11 23:17:18 +02:00 |
Bananymous
|
a0fbf18d3b
|
meminfo: better format for files without permissions
|
2023-11-07 02:41:01 +02:00 |
Bananymous
|
6d899aa6ce
|
BuildSystem: using sysroot doesn't need root privileges anymore!
Sysroot is now created with fakeroot. This allows root access to be
only needed for disk image creation, since it uses loopback devices.
|
2023-11-04 17:50:43 +02:00 |
Bananymous
|
382f9d9bb3
|
Userspace: Add quick test for global ctors and dtors
|
2023-10-30 11:11:10 +02:00 |
Bananymous
|
1ec341e2dd
|
rm: add option to remove recursively
|
2023-10-26 02:32:49 +03:00 |
Bananymous
|
126edea119
|
Userspace: implement basic rm command
|
2023-10-25 21:45:27 +03:00 |
Bananymous
|
8bb47aee02
|
Kernel/LibC/Userspace: Implement mkdir and creat
Touch now uses creat insteadd of open with O_CREAT flag
|
2023-10-25 21:07:26 +03:00 |
Bananymous
|
9e4adc1264
|
cp: abort copy if write fails
|
2023-10-25 02:43:02 +03:00 |
Bananymous
|
7a54a088b4
|
Userspace: Add basic chmod command
|
2023-10-25 02:37:19 +03:00 |
Bananymous
|
e8890062d6
|
Userspace: Implement basic cp
This does not support any meaningful command line arguments but
is a good start.
|
2023-10-25 00:07:25 +03:00 |
Bananymous
|
1e2c2fb973
|
Shell: Set get old termios earlier
I sourced the config file before getting old termios. Sourcing
updated the termios so old_termios was always in non canonical, non
echoing mode.
|
2023-10-24 19:10:53 +03:00 |
Bananymous
|
adbbdf73c4
|
meminfo: fix g++ warning for oob write
g++ doesn't realize that read can only return -1
|
2023-10-24 16:50:21 +03:00 |
Bananymous
|
f0820e6f24
|
Shell: Fix parsing $ with unknown character
|
2023-10-12 22:24:27 +03:00 |
Bananymous
|
7ce8e2d57b
|
cat: Use write() instead of puts to print file contents
This allows printing files that contain null bytes behave more like
you would expect
|
2023-10-04 22:16:19 +03:00 |
Bananymous
|
e780eaa45f
|
meminfo: Print allocated physical memory percentage
|
2023-10-03 10:39:27 +03:00 |
Bananymous
|
44cb0af64f
|
Shell: source $HOME/.shellrc if found on Shell startup
|
2023-10-03 10:39:27 +03:00 |
Bananymous
|
bb0989fdef
|
Shell: Implement sourcing scripts
|
2023-10-03 10:24:10 +03:00 |