Enrico Fraccaroli (Galfurian)
30e01ba560
Update version
2024-01-17 13:49:48 +01:00
Enrico Fraccaroli (Galfurian)
eca55dfed8
Clean up cmake files (Part 2)
...
I've kept just one cmake project, in the root directory. The
subdirectories just set up the targets.
The asm compiler is serached just one time, from the root
directory cmake file.
Global compilation flags are set in the root cmake file, and
each subdirectory cmake file sets specific flags if necessary
(e.g., programs need the -u_start specified)
2024-01-17 13:34:32 +01:00
Enrico Fraccaroli (Galfurian)
0b75cd9c2a
Clean up cmake files (Part 1)
...
I've been cleaning up the way compilation flags are passed to the targets
and there are still some changes that must be made, in the next commit.
I've also done some renaming, all_programs into programs and the same for
tests.
The gdb initialization file now is just one, populated using the find command
and using realpath to get the absolute path to the files. I've tested if the
generated gdb.run file works and it does.
2024-01-17 13:16:50 +01:00
Enrico Fraccaroli
34eeedcbcf
Improve the generation of programs and tests.
2024-01-15 11:26:20 +01:00
Enrico Fraccaroli
5ce583fdd8
Rollback patch for archive creation that broke clang compilation
2024-01-15 11:14:34 +01:00
Florian Fischer
ef92ba670b
exit: properly set the process' exit code when calling exit()
...
In order to detect the exit status using
WSTATUSCODE ((status & 0xff00) >> 8) the exit code must
be shifted by 8 to the left.
Separate the kernel process exit logic from the actual system call.
2024-01-13 14:31:00 +01:00
Enrico Fraccaroli (Galfurian)
290ed59d0b
Try to fix compilation under MacOS
2023-11-30 13:28:09 -05:00
Enrico Fraccaroli (Galfurian)
3e51197ae4
Try to fix compilation under MacOS
2023-11-30 13:16:09 -05:00
Enrico Fraccaroli (Galfurian)
327e29791e
Use gcc@11 under MacOS
2023-11-30 11:47:15 -05:00
Enrico Fraccaroli (Galfurian)
4292149567
Use x86_64-elf-gcc under MacOS
2023-11-29 10:45:27 -05:00
Enrico Fraccaroli (Galfurian)
030c16d29e
Use x86_64-elf-gcc under MacOS
2023-11-29 10:40:27 -05:00
Enrico Fraccaroli (Galfurian)
29e9d2ff11
Use x86_64-elf-gcc under MacOS
2023-11-29 10:38:44 -05:00
Enrico Fraccaroli (Galfurian)
24b2182bec
Use x86_64-elf-gcc under MacOS
2023-11-29 10:37:47 -05:00
Enrico Fraccaroli (Galfurian)
654a3165c0
Use x86_64-elf-gcc under MacOS
2023-11-29 10:34:42 -05:00
Enrico Fraccaroli (Galfurian)
7ce609fddc
Fix compilation with clang 15.0.7
2023-11-28 10:10:28 -05:00
Enrico Fraccaroli (Galfurian)
75abb84f25
Fix procfs inability to set st_mode properly
2023-11-24 15:50:20 -05:00
Enrico Fraccaroli (Galfurian)
f066dd2ad9
Add support for reading symlinks
2023-11-21 14:20:41 -05:00
Enrico Fraccaroli (Galfurian)
1197797ee1
Add symlink function (not yet implemented in ext2)
2023-09-01 11:17:40 -04:00
Enrico Fraccaroli (Galfurian)
163e83009d
Make tokenize work with a const char pointer.
2023-08-30 15:38:52 -04:00
Enrico Fraccaroli (Galfurian)
78c1ff4bd4
Minor improvements to the string-related functions.
2023-08-30 11:51:25 -04:00
Enrico Fraccaroli (Galfurian)
d50d997d6e
Wrap single line statements inside braces.
2023-08-24 12:17:16 -04:00
Enrico Fraccaroli (Galfurian)
6b077ccfac
Improve comments and code formatting.
2023-08-23 09:55:05 -04:00
Enrico Fraccaroli (Galfurian)
452aa40770
Properly set exit code for killed processed.
2023-08-22 16:32:43 -04:00
Enrico Fraccaroli (Galfurian)
c82779f1af
After queuing a SEGV for the process that caused a page fault, we call the scheduler to properly handle it.
2023-08-22 15:40:05 -04:00
Enrico Fraccaroli (Galfurian)
aafa26ea38
Send a SIGSEGV whenever a page is not copy-on-write, and the user is trying to write on a readonly address.
2023-08-22 09:26:39 -04:00
Enrico Fraccaroli (Galfurian)
3fc0ba78ca
Send a SIGSEGV whenever a page is not present and the user is involved.
2023-08-22 09:25:34 -04:00
Enrico Fraccaroli (Galfurian)
a50c1a892f
Return an integer from __page_handle_cow, allowing the caller to react to an error.
2023-08-22 09:24:55 -04:00
Enrico Fraccaroli (Galfurian)
08d87ea439
Add code that allows to create READONLY shared memory.
2023-08-22 09:24:01 -04:00
Enrico Fraccaroli (Galfurian)
34319442aa
Implement shmat and shmdt
2023-08-16 14:45:04 -04:00
Enrico Fraccaroli (Galfurian)
dde6e6bc9e
First rough implementation of shared memory.
2023-08-16 11:49:52 -04:00
Enrico Fraccaroli (Galfurian)
07d603f47a
Fix wrong error check
2023-08-11 13:40:46 -04:00
Enrico Fraccaroli (Galfurian)
df0a3701aa
Improve format
2023-08-11 13:40:22 -04:00
Enrico Fraccaroli (Galfurian)
8578f078c6
Improve formatting and enable FLOATING_POINT_ERR
2023-08-11 13:39:45 -04:00
Enrico Fraccaroli (Galfurian)
20091b196f
Start working on shared memory
2023-08-11 13:39:18 -04:00
Enrico Fraccaroli (Galfurian)
b7f85b9500
Improve format
2023-08-11 13:38:57 -04:00
Enrico Fraccaroli (Galfurian)
83d4beb33d
Clean up boot sequence code.
2023-08-11 13:31:32 -04:00
Enrico Fraccaroli (Galfurian)
954f6342ec
Increase wait time.
2023-08-11 13:12:08 -04:00
Enrico Fraccaroli (Galfurian)
ee2c0ebd88
Fix how ATA driver determines the type of a device.
2023-07-12 14:28:36 -04:00
Enrico Fraccaroli (Galfurian)
1cbc7519c9
Add missing pragma once
2023-07-12 14:27:21 -04:00
Enrico Fraccaroli (Galfurian)
16b905625d
Turn port-io into header-only.
2023-07-12 14:26:52 -04:00
Enrico Fraccaroli (Galfurian)
707c0e408b
Improve dec_to_binary function
2023-07-12 14:26:14 -04:00
Enrico Fraccaroli (Galfurian)
dc5a30573c
Reorganize PCI functionalities, and ATA drivers.
2023-07-01 16:07:00 -04:00
Enrico Fraccaroli (Galfurian)
3ed59b6f55
Add function to count element in arrays.
2023-06-29 15:48:56 -04:00
Enrico Fraccaroli (Galfurian)
86e046d080
Minor naming changes inside port_io
2023-06-29 13:00:15 -04:00
Enrico Fraccaroli (Galfurian)
f7fee4ca9b
Refactor pmmngr_init function.
2023-06-27 11:14:51 -04:00
Enrico Fraccaroli (Galfurian)
4e35a1682f
Clean up some comments in slab, and use round_up function instead of a custom one.
2023-06-27 11:13:54 -04:00
Enrico Fraccaroli (Galfurian)
b7c82d7333
Rewrite realpath without memory allocation.
2023-06-23 15:02:17 -04:00
Enrico Fraccaroli (Galfurian)
7972ddeac7
- Add missing comments;
...
- Reimplement a more safer dirname;
- Implement a simple and safe tokenize function;
2023-06-23 14:37:24 -04:00
Enrico Fraccaroli (Galfurian)
8b6a72af3e
Set logging to INFO for kheap.
2023-06-23 11:25:52 -04:00
Enrico Fraccaroli (Galfurian)
ef6ef96576
Standardize the way we generate random numbers.
2023-06-22 15:42:00 -04:00