Commit Graph

265 Commits

Author SHA1 Message Date
François Autin
8126a9ac2e
Added files for machine unit testing 2023-03-12 00:23:55 +01:00
François Autin
c75e2995e7
Reworked unit tests for machine and renamed test_programs directory 2023-03-12 00:22:16 +01:00
François Autin
177abfe846
Renamed Machine::init_machine and fixed stack overflow by allocating main_memory to the heap 2023-03-11 23:49:20 +01:00
Quentin Legot
1f54ed35db Implement thread#t_yield() 2023-03-11 14:48:56 +01:00
François Autin
e1283c9c42
Fixed missing crate import 2023-03-10 19:17:41 +01:00
François Autin
61c9300c6a
Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-10 19:14:03 +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
ec07158633
Added partialeq trait to Node 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
Quentin Legot
bf4be44676
Add list.remove(T) 2023-03-10 19:04:22 +01:00
François Autin
6b95969c4b
Added partialeq trait to List struct 2023-03-10 19:04:22 +01:00
François Autin
b59fb83e60
Main now initializes System object 2023-03-10 19:04:21 +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
e4db7ec96b
Implement interrupt 2023-03-10 19:02:37 +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
Quentin Legot
958407ab77
Improve list by adding iterator trait 2023-03-10 19:01:21 +01:00
Quentin Legot
407480bcd4
Add double linked list 2023-03-10 19:01:21 +01:00
Quentin Legot
a38251c111
Add kernel mod 2023-03-10 19:01:20 +01:00
François Autin
b44b9d2b67 Merge branch 'decode_print' into 'main'
Simulator done

See merge request simpleos/burritos!6
2023-03-10 15:25:20 +00:00
François Autin
a61f4bcc1d
Repo clean-up 2023-03-10 16:22:44 +01:00
François Autin
1081c910ee
Updated CI 2023-03-10 11:12:49 +01:00
François Autin
6ee74ba126
Fixed more clippy complaining 2023-03-10 11:03:54 +01:00
François Autin
be8435cf83
Cleaned clippy lint warnings from machine.rs 2023-03-10 10:59:14 +01:00
François Autin
44e3f586e2
Fixed some clippy complaining 2023-03-10 10:38:58 +01:00
François Autin
6db52669b4
Removed useless variable 2023-03-10 10:34:13 +01:00