Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to verify the behavior of AMT? #8

Open
OscarShiang opened this issue Nov 16, 2020 · 3 comments
Open

How to verify the behavior of AMT? #8

OscarShiang opened this issue Nov 16, 2020 · 3 comments
Labels
enhancement New feature or request

Comments

@OscarShiang
Copy link
Contributor

It is very clear and easy to understand what happens in each of the demos.

But I am wondering if the system becomes more complex, maybe it is hard to use the log to ensure the system works properly. (eg: the executing order of each process or the time quantum each process can use)

Is that any tool in AMT that can verify the behaviour of the system? (such as the order of executing, the time quantum each process gets, ...)

@DavidSpickett
Copy link
Owner

DavidSpickett commented Nov 16, 2020

I've thought about this a bit, without preemptive multi tasking the logfile method works pretty well. But with demos like timer, that took ages to get to run in the same order.

So no there is no tool, but such a tool would be a requirement for new features that are not strictly ordered.
And I think I'd prefer that order. Some new feature that isn't strictly ordered, and here's a tool to test it.
(one thing that comes to mind is new kinds of scheduler)

Did you have a use case beyond general testing in mind?
(I must admit "making cool graphs" appeals to me)

@DavidSpickett DavidSpickett added the enhancement New feature or request label Nov 16, 2020
@jserv
Copy link
Contributor

jserv commented Nov 16, 2020

I was thinking of the chance to integrate Grasp, which is a tool for tracing, visualizing and measuring the behavior of OS kernels. AMT can be instrumented by adding the traces for critical events. Will it help?

@DavidSpickett
Copy link
Owner

DavidSpickett commented Nov 16, 2020

I don't have specific goals for it but it sounds fun. I expected something much more involved.

Looks quite simple to add in, I assume you could just write this trace file over semihosting. I'd put it behind a macro so we can disable it, then add a demo that triggers all the relevant events.

I don't think testing all the existing demos using it is warranted, but adding a single test to test that trace is outputted correctly is fine.
(and I would like to see what the existing demo's graphs look like)

So yeah go for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants