I need to run a low level code (thread protected circular buffer written in rust without using environment provided tools like mutexes nor semaphores...) on ARM based processors. The teacher was running his code on his own Raspberry Pi, but since I don't have one I want to ask : Is there any Raspberry Pi open to use on the internet to which I can connect via ssh for example...

Thank you,

2 Answers 2


Amazon Web Services (AWS) now has ARM based EC2 instances (virtual machines) based on their Graviton ARM processors. If you create a new AWS account you can get 1 year of usage of the AWS free tier of services.

It's unclear if the t4g.micro instance is included in the 1 year free tier, however, AWS has a promotion until March 31st 2021 allowing you can use 750 hours of a t4g.micro instance which is ARM based with 2 vCPUs and 1 GB of RAM.

See this for all the details. enter image description here


Basically what you're asking is, if there's any way you can run code on an ARM processor without actually owning one? There definitely are options, including for instance hosted development servers or emulation.

One could google "raspberry pi vps" for instance, and find some results there. If your requirements are more loose (and you can use pretty much any ARM processor of a certain version), there's also ARM based development boxes you can rent online.

However, none of these are going to be free. If you're going to spend money on this, and you are studying (low level) code related to the raspberry pi board, I do highly recommend you to just get a raspberry pi.

Now for something else: I cannot extract from you question, to what degree of low-level your code is, and what your limits/requirements are, but you could consider using QEMU to emulate an ARM processor. QEMU docs

There's plenty of tutorials, one google query away that show how to do this. e.g. "QEMU raspberry pi"


  • 1
    I will be using fences and Ordering::release/relaxed/Acquire routines to prevent instructions reordering and to force the cores to wait for the cache lines to be up-to-date for shared variables... I was thinking of using my Android phone to do that... Jan 13, 2021 at 13:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.