Commit Graph

112 Commits

Author SHA1 Message Date
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 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 6f4d3b57f9 libc: fix waitpid not detecting process termination
Since 452aa40770 and the change to
properly return processes exit codes in the status argument, the
status will never be EXIT_ZOMBIE(16) except a process was terminated by
signal(16).

Return from waitpid if either an error occurred (__res < 0) or
we got the status of a child process (__res == cpid).

Additionally fix the weird alignment of the closing braces.
2024-01-13 14:31:00 +01: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) 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) 45f75bd00d Add readme to the list of compiled files. 2023-08-30 15:39:23 -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) ecf5907f83 Transform readline into a globally accessible function. 2023-08-30 15:38:24 -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) dde6e6bc9e First rough implementation of shared memory. 2023-08-16 11:49:52 -04:00
Enrico Fraccaroli (Galfurian) 20091b196f Start working on shared memory 2023-08-11 13:39:18 -04:00
Enrico Fraccaroli (Galfurian) 55b5eb8cee Fix format, and dela with type casting. 2023-08-11 13:04:34 -04:00
Enrico Fraccaroli (Galfurian) 24ebe9647c Minor format changes. 2023-08-11 11:37:30 -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) 28276bf565 Add macro to compute number of elements inside an array. 2023-07-01 16:06:34 -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) 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) ef6ef96576 Standardize the way we generate random numbers. 2023-06-22 15:42:00 -04:00
Enrico Fraccaroli (Galfurian) a872442aa3 Finish reworking the heap. 2023-06-19 17:44:27 -04:00
Enrico Fraccaroli (Galfurian) eb74fae1fd Add round_up math function. Add toggle_bit function. Minor clean up of the kheap code. 2023-06-16 10:18:22 -04:00
Enrico Fraccaroli (Galfurian) e23c434cc6 Add new defines to the mman.h file. 2023-06-14 12:52:07 -04:00
Enrico Fraccaroli (Galfurian) 16c416cbea Add new functions to the list_head system. 2023-06-14 12:51:41 -04:00
Enrico Fraccaroli (Galfurian) fb0323c8ce Create a temporary solution to call a 6-arguments system call (specifically, mmap). 2023-06-09 15:36:03 -04:00
Enrico Fraccaroli (Galfurian) d90e7ff02b Move list_head in libc 2023-06-09 10:45:51 -04:00
Enrico Fraccaroli (Galfurian) c17153318c Finish the implementation for message send, and receive. Implement their IPC_NOWAIT behaviour. 2023-06-08 17:06:42 -04:00
Enrico Fraccaroli (Galfurian) f515c44eb3 Implement message send and receive functions. 2023-06-08 16:38:42 -04:00
Enrico Fraccaroli (Galfurian) 8f6ff5a59a Add the core for creating a message queue. Write the code for sending messages. 2023-06-08 15:46:50 -04:00
Enrico Fraccaroli (Galfurian) e5370dff36 Prepare main structure for managing message queues. 2023-06-08 10:51:33 -04:00
Enrico Fraccaroli (Galfurian) 2fcce9360c Merge branch 'develop' into feature/ipc_msg 2023-06-08 10:45:35 -04:00
Enrico Fraccaroli (Galfurian) 63d36004b3 Move the pointer to the semaphores back into the kernel-only data structure sem_info_t. 2023-06-08 10:45:26 -04:00
Enrico Fraccaroli (Galfurian) ca3c769467 Initialize the message queue data structures. 2023-06-08 10:37:45 -04:00
Enrico Fraccaroli (Galfurian) dbbdb907aa Change asm compilation command. 2023-06-02 14:41:00 -04:00
Enrico Fraccaroli (Galfurian) 8891ed7d7a Fix semop return type. Do some minor style-based fixes. 2023-06-02 13:49:10 -04:00
Enrico Fraccaroli (Galfurian) db050db01c Move list of semaphores inside semid_ds structure. 2023-05-24 13:31:44 -04:00
Enrico Fraccaroli (Galfurian) 1acec3e7b3 Fix third test program. Fix EAGAIN message. 2023-05-23 14:05:41 -04:00
Enrico Fraccaroli (Galfurian) 3ae9258347 Fix permission management for IPC and also for EXT2. 2023-05-23 13:40:02 -04:00
Enrico Fraccaroli e7c0334ac0 Hide semaphore info from user-space (WIP). 2023-05-23 10:43:52 -04:00