26 Jan 2021 |
korken89 | What we had in 0.5 was multiple RTICs with message passing between cores right? | 18:58:08 |
korken89 | One RTIC pre core | 18:58:16 |
per.lindgren | Exactly. | 18:58:18 |
korken89 | I mean, does not sound bad IMO | 18:58:33 |
per.lindgren | But there is more to it (unfortunately). | 18:58:35 |
per.lindgren | Lots of practical aspects that seem very implementation dependent. | 18:58:53 |
korken89 | I see | 18:59:11 |
per.lindgren | E.g., how are interrupts partitioned | 18:59:13 |
per.lindgren | Which core is starting the other core. | 18:59:27 |
korken89 | All the fun impl details :P | 18:59:43 |
per.lindgren | Abstracting over multi cores is very hard. | 18:59:43 |
per.lindgren | As synchronization may be target dependent. | 19:00:03 |
korken89 | I should reread japaric's thesis | 19:00:07 |
per.lindgren | He was scratching the surface. | 19:00:23 |
per.lindgren | In a normal OS, this is less of a problem. | 19:00:36 |
per.lindgren | You implement startup code and services. | 19:00:59 |
per.lindgren | In RTIC everything is compiled together. | 19:01:11 |
per.lindgren | So the application an OS is one. | 19:01:20 |
korken89 | Yeah | 19:01:26 |
korken89 | Are different models we could pursue? | 19:01:48 |
korken89 | I mean SRP in all glory, but does it work well for multicore? | 19:02:03 |
per.lindgren | So answering your question:
Model wise, we have a good idea where we stand,
Implementation wise, we don't. | 19:02:10 |
korken89 | Or is it just impl details that are the problems? | 19:02:24 |
per.lindgren | RTIC is both an SRP scheduler and an Actor framework. | 19:02:48 |
per.lindgren | Actors are great for multi-cores. | 19:03:03 |
korken89 | I have not heard about this actor framework? | 19:03:10 |
per.lindgren | Or distributed systems in general. | 19:03:20 |
korken89 | * I have not heard about this actor framework? | 19:03:24 |
per.lindgren | https://en.wikipedia.org/wiki/Actor_model | 19:04:19 |
korken89 | Was reading that :) | 19:04:46 |