Commit Graph
151 Commits
Author SHA1 Message Date
François Autin b379305631 🎨 Exported get_new_thread macro out of thread mod 2023-03-15 11:05:01 +01:00
François Autin bed763cf54 📝 Updated mod doc for list and system 2023-03-15 11:01:25 +01:00
François Autin 2a3d8f3550 Exported macro init_system 2023-03-15 10:10:53 +01:00
Quentin Legot 88a0b31300 Add thread_finish 2023-03-14 22:01:52 +01:00
Samy Solhi aef8b18966 Added tests for semaphore and lock 2023-03-14 20:28:57 +01:00
Rémi Rativel cc6ec2f94c Corrected a line added by the IDE 2023-03-14 16:46:48 +01:00
Rémi Rativel ba895e3587 Small fix with not matching types 2023-03-14 16:44:10 +01:00
Rémi Rativel 5b8abd2a07 Merge remote-tracking branch 'origin/thread_scheduler' into thread_scheduler 2023-03-14 16:34:53 +01:00
Rémi Rativel 287a608adf Implemented constructors for synch structs 2023-03-14 16:34:44 +01:00
François Autin 4ee0c11c56 A few documentation updates 2023-03-14 15:16:40 +01:00
Rémi Rativel d70de26f02 Structure documentation 2023-03-14 14:45:19 +01:00
Rémi Rativel d4333a672a fixed some issues made in last merge 2023-03-14 00:09:45 +01:00
Rémi Rativel 65ac9c6f06 merging 2023-03-13 23:45:09 +01:00
Rémi Rativel dc6c454250 Merge remote-tracking branch 'origin/thread_scheduler' into thread_scheduler
# Conflicts:
#	src/kernel/synch.rs
2023-03-13 23:41:20 +01:00
Rémi Rativel 5b7a12ab0f Documentation for different functions of synch.rs 2023-03-13 23:38:45 +01:00
Quentin Legot 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
Quentin Legot 39e26e61bb Add thread_sleep 2023-03-13 20:55:46 +01:00
François Autin 5b4683c736 Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-13 15:09:50 +01:00
François Autin 0e57576b6a Added single unit test necessary for system 2023-03-13 15:09:46 +01:00
Quentin Legot 5a6a70f1b7 Force the compiler and clippy to return a warning when a function isn't documented 2023-03-13 14:51:32 +01:00
Quentin Legot 1f54ed35db Implement thread#t_yield() 2023-03-11 14:48:56 +01:00
Quentin Legot 45fea708fc Changed all reference to thread with an RefCell to enforce mutability 2023-03-10 19:11:16 +01:00
François Autin a1713e0373 added comments to macros 2023-03-10 19:11:16 +01:00
François Autin 9a86520a77 Put default thread name in a const 2023-03-10 19:11:15 +01:00
François Autin 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
François Autin 71ccd0c16e Added macro to get new thread easily and started writing test 2023-03-10 19:11:15 +01:00
François Autin eeac26aba6 Changed constructor to allow any string slice as parameter + started writing unit tests 2023-03-10 19:11:15 +01:00
Quentin Legot 26b75ffe8d Add thread save and restore processor context 2023-03-10 19:11:13 +01:00
Quentin Legot 0c3af96b78 Fix start_thread 2023-03-10 19:04:23 +01:00
Quentin Legot 6820086579 Added thread manager 2023-03-10 19:04:23 +01:00
Samy Solhi 1ac2e322cf synch.rs implemented 2023-03-10 19:04:23 +01:00
Quentin Legot 3406544e3b Remove old static vars in scheduler, doesn't work 2023-03-10 19:04:23 +01:00
Quentin Legot 75e5c17f28 Fix thread 2023-03-10 19:04:23 +01:00
François Autin 95e0ac4499 Added partialeq trait where relevant 2023-03-10 19:04:22 +01:00
Rémi Rativel aad2ecbd4c small fix 2023-03-10 19:04:22 +01:00
Rémi Rativel 5465267f3c Sarting synch.rs implementation 2023-03-10 19:04:22 +01:00
François Autin a459a31210 Added System initializer method 2023-03-10 19:03:51 +01:00
Moysan Gabriel 6e6fbb5e1d dataTypes definition 2023-03-10 19:03:51 +01:00
François Autin e763712880 New system structure 2023-03-10 19:03:51 +01:00
François Autin 69e1a3e444 Fixed ucontext & libc 2023-03-10 19:03:51 +01:00
Quentin Legot dc49951bab Implemente finish (not finished yet), fix ucontext for windows 2023-03-10 19:03:49 +01:00
Quentin Legot 3457f67a7c Add ucontext_t 2023-03-10 19:02:38 +01:00
Quentin Legot 621b0568b0 Move system to the right location 2023-03-10 19:01:22 +01:00
Quentin Legot 83df053dc6 Implement Thread::start and join 2023-03-10 19:01:22 +01:00
Quentin Legot c140830faa Adding some content to thread 2023-03-10 19:01:22 +01:00
Quentin Legot 99fc514720 Change var name to fit with rust conventions 2023-03-10 19:01:22 +01:00
Quentin Legot cf1c7aad5a Fix global var 2023-03-10 19:01:22 +01:00
Quentin Legot e3e217c57f scheduler done 2023-03-10 19:01:22 +01:00
Quentin Legot adce79aaa8 Add scheduler structure 2023-03-10 19:01:21 +01:00
Quentin Legot 336ccd1425 Add thread structure 2023-03-10 19:01:21 +01:00