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)
|
90487afffc
|
Use that beautiful list_head to implement the heap.
|
2023-06-19 19:32:10 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
96ee8198f8
|
Keep track of the tail of the heap, and of previous free blocks.
|
2023-06-19 19:06:12 -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)
|
bb8bb799f9
|
Map the start of the brk to an helper structure.
|
2023-06-15 16:39:35 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
537c3a70bb
|
Make find_vm_area public, so that kheap can use it too.
|
2023-06-15 14:42:36 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
8266274e84
|
Minor cleanup of the memory management code.
|
2023-06-15 14:37:39 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
3f2756ccf4
|
Implement a first version of mmap and munmap.
|
2023-06-14 12:57:11 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
af77072301
|
Keep VM areas sorted, and add function to destroy VM areas.
|
2023-06-14 12:54:16 -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)
|
7c9e0fea03
|
Add functions to find a VM area, check if an address range is valid, and find a suitable spot of a given size for a new VM area.
|
2023-06-14 12:50:40 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
4275002414
|
Fix wrong type.
|
2023-06-14 12:49:16 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
c5a62dda05
|
Disable logging.
|
2023-06-14 12:48:53 -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)
|
a007e4e4c7
|
Merge branch 'feature/ipc_msg' into develop
|
2023-06-09 14:32:08 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
b0f7ceec1b
|
Remove unused includes
|
2023-06-09 14:31:40 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
d90e7ff02b
|
Move list_head in libc
|
2023-06-09 10:45:51 -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)
|
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)
|
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)
|
935b36d24b
|
Try using linux-based section access.
|
2023-06-02 15:12:49 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
5dd4418ffd
|
Remove include in boot section.
|
2023-06-02 15:04:07 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
dbbdb907aa
|
Change asm compilation command.
|
2023-06-02 14:41:00 -04:00 |
|
Enrico Fraccaroli
|
0576463aea
|
Update macos.yml
|
2023-06-02 14:29:27 -04:00 |
|
Enrico Fraccaroli
|
681238c7c3
|
Update macos.yml
|
2023-06-02 14:23:03 -04:00 |
|
Enrico Fraccaroli
|
8bdc44bb10
|
Update macos.yml
|
2023-06-02 14:18:20 -04:00 |
|
Enrico Fraccaroli
|
046761c1b6
|
Update macos.yml
|
2023-06-02 14:14:31 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
b0b1ae50e5
|
Update readme.
|
2023-06-02 14:01:48 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
a9cd9db8c6
|
Enable and disable scheduling feedback from cmake.
|
2023-06-02 13:58:57 -04:00 |
|
Enrico Fraccaroli (Galfurian)
|
523cf39b5a
|
Merge branch 'feature/Feature-Semaphores' into develop
|
2023-06-02 13:50:20 -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)
|
116f4a50f7
|
Reorganize includes
|
2023-05-31 08:56:52 -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 |
|
Enrico Fraccaroli (Galfurian)
|
a9d84f3a5d
|
Add functions to copy semaphore structures.
|
2023-05-23 09:43:19 -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
|
97eedf450d
|
Create ipc code for managing all ipcs and their keys
|
2023-05-10 14:21:54 -04:00 |
|
Enrico Fraccaroli
|
19e8ad309f
|
Move IPC stuff from the libc side, inside the sys folder.
|
2023-05-08 12:53:17 +02:00 |
|