Commit Graph

280 Commits

Author SHA1 Message Date
65ac9c6f06 merging 2023-03-13 23:45:09 +01:00
dc6c454250 Merge remote-tracking branch 'origin/thread_scheduler' into thread_scheduler
# Conflicts:
#	src/kernel/synch.rs
2023-03-13 23:41:20 +01:00
5b7a12ab0f Documentation for different functions of synch.rs 2023-03-13 23:38:45 +01:00
3391d3cb65 impl translation table + debut impl mmu 2023-03-13 22:52:27 +01:00
7de7f2e007 Fix scheduler switch_to by making a lot of change(use smart pointers in place of lifetime reference) 2023-03-13 21:47:06 +01:00
39e26e61bb Add thread_sleep 2023-03-13 20:55:46 +01:00
c0765270d7 ajout de fichiers mémoire et des registre en cours d'execution 2023-03-13 19:00:54 +01:00
edf52a7b63 Merge branch 'thread_scheduler' of https://gitlab.istic.univ-rennes1.fr/simpleos/burritos into thread_scheduler 2023-03-13 18:48:32 +01:00
3e48f3ce2e added memory dump and reg_tace files for every testfile 2023-03-13 18:30:05 +01:00
be19031c32 enum visibility 2023-03-13 18:01:02 +01:00
5f798edb94 enum d'erreurs dans machine, du code pour gerer les erreurs dans le futur 2023-03-13 17:49:48 +01:00
172dad6598 mmu & translation table def 2023-03-13 17:42:03 +01:00
5b4683c736 Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-13 15:09:50 +01:00
0e57576b6a Added single unit test necessary for system 2023-03-13 15:09:46 +01:00
5a6a70f1b7 Force the compiler and clippy to return a warning when a function isn't documented 2023-03-13 14:51:32 +01:00
8126a9ac2e Added files for machine unit testing 2023-03-12 00:23:55 +01:00
c75e2995e7 Reworked unit tests for machine and renamed test_programs directory 2023-03-12 00:22:16 +01:00
177abfe846 Renamed Machine::init_machine and fixed stack overflow by allocating main_memory to the heap 2023-03-11 23:49:20 +01:00
1f54ed35db Implement thread#t_yield() 2023-03-11 14:48:56 +01:00
e1283c9c42 Fixed missing crate import 2023-03-10 19:17:41 +01:00
61c9300c6a Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-10 19:14:03 +01:00
45fea708fc Changed all reference to thread with an RefCell to enforce mutability 2023-03-10 19:11:16 +01:00
a1713e0373 added comments to macros 2023-03-10 19:11:16 +01:00
9a86520a77 Put default thread name in a const 2023-03-10 19:11:15 +01:00
6e6b97911a Added debug attributes to structs pertaining to thread in order to allow for applying assertions upon Thread 2023-03-10 19:11:15 +01:00
71ccd0c16e Added macro to get new thread easily and started writing test 2023-03-10 19:11:15 +01:00
eeac26aba6 Changed constructor to allow any string slice as parameter + started writing unit tests 2023-03-10 19:11:15 +01:00
26b75ffe8d Add thread save and restore processor context 2023-03-10 19:11:13 +01:00
0c3af96b78 Fix start_thread 2023-03-10 19:04:23 +01:00
6820086579 Added thread manager 2023-03-10 19:04:23 +01:00
1ac2e322cf synch.rs implemented 2023-03-10 19:04:23 +01:00
3406544e3b Remove old static vars in scheduler, doesn't work 2023-03-10 19:04:23 +01:00
75e5c17f28 Fix thread 2023-03-10 19:04:23 +01:00
ec07158633 Added partialeq trait to Node 2023-03-10 19:04:23 +01:00
95e0ac4499 Added partialeq trait where relevant 2023-03-10 19:04:22 +01:00
aad2ecbd4c small fix 2023-03-10 19:04:22 +01:00
5465267f3c Sarting synch.rs implementation 2023-03-10 19:04:22 +01:00
bf4be44676 Add list.remove(T) 2023-03-10 19:04:22 +01:00
6b95969c4b Added partialeq trait to List struct 2023-03-10 19:04:22 +01:00
b59fb83e60 Main now initializes System object 2023-03-10 19:04:21 +01:00
a459a31210 Added System initializer method 2023-03-10 19:03:51 +01:00
6e6fbb5e1d dataTypes definition 2023-03-10 19:03:51 +01:00
e763712880 New system structure 2023-03-10 19:03:51 +01:00
69e1a3e444 Fixed ucontext & libc 2023-03-10 19:03:51 +01:00
dc49951bab Implemente finish (not finished yet), fix ucontext for windows 2023-03-10 19:03:49 +01:00
3457f67a7c Add ucontext_t 2023-03-10 19:02:38 +01:00
e4db7ec96b Implement interrupt 2023-03-10 19:02:37 +01:00
621b0568b0 Move system to the right location 2023-03-10 19:01:22 +01:00
83df053dc6 Implement Thread::start and join 2023-03-10 19:01:22 +01:00
c140830faa Adding some content to thread 2023-03-10 19:01:22 +01:00