117 Commits

Author SHA1 Message Date
Enrico Fraccaroli b617fccee4 Merge pull request #25 from fischerling/improve-text-printing
Improve text printing
2024-02-26 10:02:01 -05:00
Florian Fischer beacbde52e man: use cat as pager to print man pages
This reduces the required code in man and additionally,
replaces the old broken read/puts implementation.

Puts expects a null-terminated string, but write does not return
a null-terminted string.
2024-02-13 13:15:58 +01:00
Florian Fischer cad4804a95 cat: improve exist status
Exit with status 1 if one or more arguments could not be printed.
2024-02-13 13:15:36 +01:00
Florian Fischer e2e608b073 cat: properly output the read data
Using puts to output data retrieved through write is broken.
Puts expects a null-terminated string, which is not returned by read.
Use write to exactly output the data previously read.
2024-02-13 13:15:29 +01:00
Florian Fischer bb1bca458e ls: improve --long output format
Add padding using zeros instead of whitespace to the date values.
2024-02-13 13:11:03 +01:00
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
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) c82c13417d Move the list of programs at the beginning. 2023-08-30 10:57:01 -04:00
Enrico Fraccaroli (Galfurian) 122551ab45 Revert init process changes. 2023-08-23 09:59:34 -04:00
Enrico Fraccaroli (Galfurian) 452aa40770 Properly set exit code for killed processed. 2023-08-22 16:32:43 -04:00
Enrico Fraccaroli (Galfurian) c37fbf6f40 Add shared memory tests. 2023-08-22 09:23:31 -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) 8578f078c6 Improve formatting and enable FLOATING_POINT_ERR 2023-08-11 13:39:45 -04:00
Enrico Fraccaroli (Galfurian) 63314a8363 Improve cd command output. 2023-08-11 13:29:01 -04:00
Enrico Fraccaroli (Galfurian) 23f2a036e7 Clean ps command code. 2023-08-11 13:28:36 -04:00
Enrico Fraccaroli (Galfurian) cd6f876fa8 Improve mkdir output 2023-08-11 13:28:19 -04:00
Enrico Fraccaroli (Galfurian) 760667e00f Show total size in human format in ls command. 2023-06-27 11:15:21 -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) 2cd03ccfe0 Check correctness of the kheap split and merge. Update memory test. 2023-06-22 11:08:39 -04:00
Enrico Fraccaroli (Galfurian) a872442aa3 Finish reworking the heap. 2023-06-19 17:44:27 -04:00
Enrico Fraccaroli (Galfurian) 8266274e84 Minor cleanup of the memory management code. 2023-06-15 14:37:39 -04:00
Enrico Fraccaroli (Galfurian) fb559d6f1b Finish testing message queues. 2023-06-09 10:03:40 -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) 6c36106666 Simplify program compilation. 2023-06-02 16:14:17 -04:00
Enrico Fraccaroli (Galfurian) 974d37a25d Try setting text section address differently in macos. 2023-06-02 15:22:37 -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 (Galfurian) 3e03f1e6fd Clean up the semget example. Clean up the return values of semop function. 2023-05-19 14:24:04 -04:00
Enrico Fraccaroli (Galfurian) 9f63a93d63 Properly handle ipc and sem permissions. Fix return error codes. Fix private key generation. 2023-05-17 15:23:42 -04:00
Enrico Fraccaroli 19e8ad309f Move IPC stuff from the libc side, inside the sys folder. 2023-05-08 12:53:17 +02:00
Enrico Fraccaroli e19354a9ee Implement ipcs mechanisms. 2023-04-27 10:10:34 +02:00
Aldegheri Alessandro 09f0d145d0 IPCS, IPCRM, IPC_NOWAIT currently working 2023-04-22 16:14:40 +02:00