-
46e1419e70
Kernel: O_APPEND is now supported
Bananymous
2023-07-10 15:11:27 +03:00
-
f7c4bc908e
Kernel: open() and openat() now take mode as parameter
Bananymous
2023-07-10 15:08:30 +03:00
-
a0ecbed726
Kernel: You can now read/write to RamInodes
Bananymous
2023-07-10 14:09:35 +03:00
-
74fc0aa308
Kernel: Inode::create_file() now takes uid and gid as parameters
Bananymous
2023-07-10 13:32:10 +03:00
-
d5f0448e48
Kernel: start work on ram file system
Bananymous
2023-07-10 13:26:14 +03:00
-
51e4b11890
LibC: add NAME_MAX to limits.h
Bananymous
2023-07-10 10:45:05 +03:00
-
d713f252aa
Kenrel: Fix inode comparison
Bananymous
2023-07-10 10:44:41 +03:00
-
5ec2d85081
Kernel: Inode rename directory functions
Bananymous
2023-07-10 09:51:13 +03:00
-
0d132ee518
Kernel: Mark Ext2 classes final
Bananymous
2023-07-10 09:42:13 +03:00
-
fabbb9f531
BAN: RefPtr can be constructed from other types
Bananymous
2023-07-10 09:41:39 +03:00
-
80c8d52dc5
Kernel: add more functionality to PCI
Bananymous
2023-07-09 23:04:11 +03:00
-
b6c4a2dbf1
Kernel: Edit lock scopes and make string copy able to fail
Bananymous
2023-07-07 23:12:19 +03:00
-
a2f5ad7bed
Kernel: Move open file descriptors to their own class
Bananymous
2023-07-07 23:11:37 +03:00
-
a337f414fc
LibC: limits.h now defined OPEN_MAX
Bananymous
2023-07-07 23:08:49 +03:00
-
404b3dd44c
Shell: $(...) expansion works now :)
Bananymous
2023-07-06 23:22:57 +03:00
-
d04b031e30
Shell: you can call Shell -c ... to invoke the shell as interpreter
Bananymous
2023-07-06 23:18:37 +03:00
-
07fec6e211
Kernel/LibC: add basic dup2
Bananymous
2023-07-06 23:17:54 +03:00
-
4cd72992c8
Kernel/LibC: Add basic pipe() syscall and command
Bananymous
2023-07-06 22:16:26 +03:00
-
cdcb395640
LibC: add read() and write() to unistd
Bananymous
2023-07-06 22:15:55 +03:00
-
5a8eb51968
Kernel: TTY now unblocks semaphore after read
Bananymous
2023-07-06 21:32:34 +03:00
-
a74422281f
Kernel: Add O_CLOEXEC
Bananymous
2023-07-06 20:00:33 +03:00
-
a45f9ee76b
Kernel: Remove spammy process/thread exit printing
Bananymous
2023-07-06 10:34:46 +03:00
-
f19dc114d6
Userspace: Shell now has 'env' for printing environment
Bananymous
2023-07-06 10:32:43 +03:00
-
d2aabb669b
Userspace: Shell imporove 'time' command
Bananymous
2023-07-06 09:14:14 +03:00
-
9c3f4039a5
Userspace: Shell now has time builtin
Bananymous
2023-07-06 00:39:04 +03:00
-
1fb305fa45
Kernel/LibC: add clock_gettime() for CLOCK_MONOTONIC
Bananymous
2023-07-06 00:38:29 +03:00
-
4086d7c3be
Kernel: rework the whole PageTable structure
Bananymous
2023-07-05 23:41:35 +03:00
-
60fe5a656c
LibC: Fix syscall SYS_READ and SYS_WRITE arguments
Bananymous
2023-06-19 10:38:29 +03:00
-
7d254c26bc
Kernel: Rewrite and optimize DiskCache
Bananymous
2023-06-19 10:31:47 +03:00
-
328d67f551
Userspace: u8sum fix error message
Bananymous
2023-06-19 10:31:23 +03:00
-
84ecf861cd
Userspace: Shell now processes $ arguments
Bananymous
2023-06-19 01:39:24 +03:00
-
46a6daccfe
Userspace: Shell argument parsing now appriciates quotes
Bananymous
2023-06-19 01:07:00 +03:00
-
3df3c37bad
Userspace: Shell argument parse now results in BAN::String
Bananymous
2023-06-19 00:34:44 +03:00
-
191a24110a
Userspace: Shell now sets SHELL environment variable
Bananymous
2023-06-18 23:35:51 +03:00
-
275a730485
LibELF: We use BAN::Vector<uint8_t> as elf storage
Bananymous
2023-06-18 23:29:23 +03:00
-
9a7b2587af
Kernel: kmalloc has now somewhat dynamic storage
Bananymous
2023-06-18 23:27:00 +03:00
-
09c824b90e
Kernel: Add GeneralAllocator::paddr_of
Bananymous
2023-06-18 23:25:51 +03:00
-
57e59d998f
Kernel: Add enum for ISR name to number
Bananymous
2023-06-18 23:24:27 +03:00
-
44fb3945df
Kernel: General allocator takes first valid vaddr as parameter
Bananymous
2023-06-17 22:23:34 +03:00
-
95c4e608de
Kernel: Move print during boot
Bananymous
2023-06-12 22:37:34 +03:00
-
b9603d9d23
BAN: Optional can be constructed inplace
Bananymous
2023-06-12 22:33:04 +03:00
-
16e5f96b1d
BAN: Add operator-> and operator* to Optional
Bananymous
2023-06-12 22:18:12 +03:00
-
d0a0e3bdef
Userspace: Add u8sum
Bananymous
2023-06-12 20:36:16 +03:00
-
5dcc53bcf2
Kernel: Make disk IO blocking thread safe
Bananymous
2023-06-12 18:57:47 +03:00
-
23543b15ca
Kernel: Rework syscall calling
Bananymous
2023-06-12 14:16:48 +03:00
-
2253c45feb
Kernel: Remove Shell from kernel
Bananymous
2023-06-12 02:04:52 +03:00
-
9f9a70713e
Base: add home directories for root and user
Bananymous
2023-06-12 02:02:09 +03:00
-
cd57adc856
BuildSystem: every file except /home/* is now owned by root
Bananymous
2023-06-12 02:00:05 +03:00
-
b4b892148c
Userspace: Shell processes PS1 '\~' as cwd and implement cd
Bananymous
2023-06-12 01:31:33 +03:00
-
048183ddb5
Userspace: init now sets HOME environment variable and cd's into HOME
Bananymous
2023-06-12 01:26:10 +03:00
-
f09b82c4b5
Kernel/LibC: add SYS_{SET,GET}_PWD and chdir, getpwd
Bananymous
2023-06-12 01:24:46 +03:00
-
7aeb8e4d36
Kernel: allocate thread stacks from 0x300000 onwards
Bananymous
2023-06-12 01:02:19 +03:00
-
58ec4d6a31
Kernel: Fix bug in elf loading
Bananymous
2023-06-12 00:59:19 +03:00
-
25f8343269
Userspace: init now default logins as user
Bananymous
2023-06-12 00:46:07 +03:00
-
e9cb844c28
Userspace: Shell now uses PS1 as prompt if set
Bananymous
2023-06-12 00:45:47 +03:00
-
30ac046232
Userspace: Add color to ls
Bananymous
2023-06-11 22:46:14 +03:00
-
f67f8ccbe0
Userspace: init now sets user and group ids before running their shell
Bananymous
2023-06-11 22:32:51 +03:00
-
e9217b3484
Userspace: Add basic id that prints {,e}{uid,gid} of the current proc
Bananymous
2023-06-11 22:32:14 +03:00
-
11b68f6a53
Kernel: Add SYS_GET_{,E}{UID,GID}
Bananymous
2023-06-11 22:27:53 +03:00
-
3fe67e4882
Kernel: Add syscalls for set{,e,re}{uid,gid}
Bananymous
2023-06-11 22:15:35 +03:00
-
9288537949
LibC: gid_t and id_t are now signed types
Bananymous
2023-06-11 22:14:43 +03:00
-
78536f9678
Kernel/Userspace: Add basic init process
Bananymous
2023-06-11 21:01:02 +03:00
-
cce2f3e19a
BAN: Add basic Optional
Bananymous
2023-06-11 21:00:25 +03:00
-
297141f321
LibC: add strchrnul()
Bananymous
2023-06-11 20:18:03 +03:00
-
c7ec19c25c
Kernel: Add basic Credentials for the system
Bananymous
2023-06-11 19:52:13 +03:00
-
3181ea7b4d
Kernel: GeneralAllocator and FixedWidth allocator invalidate TLB caches
Bananymous
2023-06-11 15:57:48 +03:00
-
1cf464d5c7
Userspace: add basic ls command
Bananymous
2023-06-11 03:29:41 +03:00
-
83a6e6f637
LibC: Reorder some syscalls
Bananymous
2023-06-11 03:28:43 +03:00
-
64890bb640
Kernel: Add SYS_OPENAT
Bananymous
2023-06-11 03:27:56 +03:00
-
caca6dc701
Kernel: Exceptions will now enable interrupts before calling exit()
Bananymous
2023-06-11 01:36:21 +03:00
-
68ec443e07
LibC: implement close
Bananymous
2023-06-11 01:10:28 +03:00
-
aa86125f2b
Kernel: Implement SYS_FSTAT
Bananymous
2023-06-11 00:54:04 +03:00
-
c423164066
LibC: Implement basic dirent functionality
Bananymous
2023-06-11 00:19:20 +03:00
-
14aeb8de10
Kernel: we don't panic anymore on unrecognized syscall
Bananymous
2023-06-11 00:18:48 +03:00
-
691b17e0cc
Kernel: allow open() call with O_SEARCH
Bananymous
2023-06-11 00:18:34 +03:00
-
eae6119039
Kernel: Add syscall for reading directory entries
Bananymous
2023-06-11 00:18:08 +03:00
-
30f81e1696
LibC: add missing O_EXEC and O_SEARCH
Bananymous
2023-06-10 23:21:43 +03:00
-
01311b470f
Kernel: Rewrite directory listing so it can be integrated to libc
Bananymous
2023-06-10 23:13:41 +03:00
-
223d2ac3a6
Userspace: fix return values of cat and echo
Bananymous
2023-06-10 17:34:10 +03:00
-
4cdeb98897
Kernel: We now store the processes exit code
Bananymous
2023-06-10 17:31:56 +03:00
-
47c69e9def
Userspace: add exit to shell
Bananymous
2023-06-09 01:51:23 +03:00
-
9728947d5d
Userspace: add echo
Bananymous
2023-06-09 01:50:18 +03:00
-
66fe48e94b
Userspace: add ^L support for shell
Bananymous
2023-06-09 01:24:08 +03:00
-
c0fe4756cb
Kernel: SpinLocks now reschedule if they cannot aquire the lock
Bananymous
2023-06-09 00:53:32 +03:00
-
5032e79be3
Kernel: Process::exit() now uses the new Scheduler::reschedule()
Bananymous
2023-06-09 00:49:19 +03:00
-
1aec3fcedd
Kernel: Scheduler now has reschedule()
Bananymous
2023-06-09 00:47:17 +03:00
-
aec63081e2
Kenrel: Rename Scheduler::reschedule -> Scheduler::timer_reschedule
Bananymous
2023-06-09 00:41:43 +03:00
-
801025ad7b
Kernel: Big commit. Rewrite ELF loading code
Bananymous
2023-06-09 00:37:43 +03:00
-
59b10c4d25
Kernel: PageTableScope locks the PageTable before disabling interrupts
Bananymous
2023-06-09 00:34:41 +03:00
-
841584ccbd
Kernel: get_free_contiguous_pages works with non-page aligned addresses
Bananymous
2023-06-06 02:03:23 +03:00
-
24993f6020
LibC: implement setenv, unsetenv, putenv
Bananymous
2023-06-05 22:43:26 +03:00
-
55ea5c5488
Kernel: add basic support for environment variables
Bananymous
2023-06-05 21:53:37 +03:00
-
290b81dedc
BAN: add StringView::contains(char)
Bananymous
2023-06-05 22:46:37 +03:00
-
c6b5cc1e07
Kernel: exec now has better posix errors
Bananymous
2023-06-05 21:08:34 +03:00
-
357081346e
Shell: load old termios for process execution
Bananymous
2023-06-05 20:34:31 +03:00
-
896b919c9d
Kernel/LibC: pass environ pointer to process
Bananymous
2023-06-05 20:34:08 +03:00
-
6b73f4d187
Kernel: TTY now actually flushes on ^D
Bananymous
2023-06-05 20:21:46 +03:00
-
08a806e75d
Kernel: verify that loaded elfs are executable
Bananymous
2023-06-05 19:15:32 +03:00
-
73c11c3d29
Shell: add bareboness utf8 support
Bananymous
2023-06-05 18:53:52 +03:00
-
5af77dcfb9
Shell: we now support left/right arrows
Bananymous
2023-06-05 18:24:41 +03:00