Commit Graph

127 Commits

Author SHA1 Message Date
7be0c0accc Add user_stack_size to Machine and use it for threads sp 2023-05-09 17:01:52 +02:00
5000c28b97 Fix endianness issues particulary with strings 2023-05-07 15:51:38 +02:00
a211e93905 try to implement join 2023-04-23 15:42:33 +02:00
73ac8d3083 BurritOS now read configuration file 2023-04-19 18:09:08 +02:00
232617c32e Add debug field to thread_manager and tried to fix sc_join (not worked :-( ) 2023-04-13 02:05:21 +02:00
9cc57e7f03 Add launch argument parser, add debug parameter to machine
burritos now launch binary
2023-04-06 13:27:03 +02:00
cfb58fd6b3 Fixed machine tests not passing 2023-04-05 16:44:41 +02:00
f246e84f91 Use Default trait instead of init_machine() 2023-04-05 16:12:57 +02:00
44cfb828fb Remove useless libc, elf and ucontext, add comments to exceptions
improve propagation of errors in raise_exception
2023-04-05 16:02:54 +02:00
2756477e67 Project now builds 2023-04-05 13:49:32 +02:00
3685bb6590 Added general failure case in raise exception and removed break in main loop for system exceptions 2023-04-05 13:41:56 +02:00
24be35547e Add Exit Exception 2023-04-05 12:01:31 +02:00
0fd2815a59 Improve test in thread_manager, increase memory size to make it fit 2023-04-04 22:01:49 +02:00
0c3a254296 Merge branch 'bin-loader' into 'thread_scheduler'
Binary loader

See merge request simpleos/burritos!12
2023-04-04 13:35:10 +00:00
4480212ab0 Merge branch 'thread_scheduler' into bin-loader 2023-04-04 15:28:24 +02:00
655bf9eab7 added tests for SC_SHUTDOWN and SC_WRITE (print) 2023-04-03 23:08:13 +02:00
8239079130 Add section flag support, loader now ready to run binary files 2023-04-01 00:14:09 +02:00
2981925401 Added shutdown system call 2023-03-29 17:21:34 +02:00
e117ec2132 Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-29 17:01:44 +02:00
06f6137852 Added MachineOk to one_instruction 2023-03-29 17:01:28 +02:00
8629d859e4 ♻️ Documentation updates and fn renaming 2023-03-29 16:42:08 +02:00
45a2ee952c Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-29 16:26:35 +02:00
2d241e4dd5 ♻️ Started refactoring instruction.rs 2023-03-29 16:26:27 +02:00
ac1f2287a2 Merge branch 'thread_scheduler' of gitlab.istic.univ-rennes1.fr:simpleos/burritos into thread_scheduler 2023-03-29 16:15:53 +02:00
15f3608b63 Start syscall 2023-03-29 16:13:57 +02:00
3fa3ce0e99 ♻️ Consolidated instruction definition and manipulation in instruction.rs 2023-03-29 16:08:06 +02:00
72f560f3ec ♻️ Simplified fp_instruction 2023-03-29 15:25:58 +02:00
703c8e5448 Loader seem to work, be seem we have a problem with jalr 2023-03-28 21:26:58 +02:00
7dff3bcdd9 Merge branch 'thread_scheduler' into bin-loader 2023-03-28 21:08:00 +02:00
08ba0154f7 Add a bin loader 2023-03-27 18:10:11 +02:00
7f37965ed4 ♻️ Implement From<&str> and From<String> traits to MachineError, and simplified opiw_instruction 2023-03-27 15:56:23 +02:00
2162232199 ♻️ Simplified branch_instruction 2023-03-27 15:37:30 +02:00
ff93fab832 ♻️ Amend of previous commit 2023-03-27 15:01:34 +02:00
288703321e ♻️ OPI instruction done 2023-03-27 14:59:22 +02:00
ba8e36ea90 :rotating_lights: Small lint fixes 2023-03-27 11:35:04 +02:00
939e23883e ♻️ Simplified OPI 2023-03-27 11:22:53 +02:00
a8bbc13142 🐛 Readded check for system instructions in order to pass tests 2023-03-27 10:34:10 +02:00
8ba63d38a3 ♻️ Main loop now panics on error 2023-03-27 10:21:18 +02:00
e77e125f96 ♻️ Error management and simplification
Modified methods
 - load_instruction
  - store_instruction
2023-03-25 15:57:28 +01:00
3dfeca4c42 ♻️ simplified store_instruction using closure 2023-03-25 15:43:33 +01:00
651e03a446 📝 :refactor: Form and documentation updates 2023-03-25 15:37:14 +01:00
7ed53261a0 📝 Documentation updates 2023-03-24 19:02:50 +01:00
4e90d9fef7 ♻️ Now all machine methods are called through self 2023-03-24 18:48:07 +01:00
a2d5b22774 ♻️ Machine::write_memory is now indeed a self method 2023-03-24 18:36:02 +01:00
b33c31ef38 ♻️ Machine::read_memory is now indeed a self method 2023-03-24 18:34:06 +01:00
88e1921b3c ♻️ Further simplified tests 2023-03-24 18:27:28 +01:00
7bdde70989 ♻️ Removed tons of casts to usize 2023-03-24 18:20:59 +01:00
928628c305 📝 Documentation updates 2023-03-24 18:11:37 +01:00
03cc8e17c6 ♻️ Simplified imports and moved Register struct to own file 2023-03-24 17:44:24 +01:00
c74c99499e ♻️ Removed loads of casts to usize 2023-03-24 17:32:04 +01:00