News for hackers. Stuff that matters.

triplefault

Re:GERT: Run Go on Bare Metal ARMv7 on Tuesday June 20, 2017 @11:02AM (#14595141)
That's correct. My thesis (https://github.com/ycoroneos/G.E.R.T/blob/master/thesis/main...) also has detailed info in chapter 3. The github documentation is still a work in progress :P
Re:GERT: Run Go on Bare Metal ARMv7 on Monday June 19, 2017 @09:05PM (#14591539)
GERT can't deterministically service interrupts, but it's technically because of the armv7a architecture and its non-deterministic generic interrupt controller. Also, unless your Go program is constantly creating and destroying objects, the garbage collector won't really run. I wouldn't put GERT on my ABS brakes just yet, but I think you can engineer around a GC.

I wish there was an armv7R or armv8R dev board around (that doesn't cost thousands) because those are actually meant for realtime applications and I would really like to try GERT on one.

Re:GERT: Run Go on Bare Metal ARMv7 on Monday June 19, 2017 @08:49PM (#14591490)
It's planned. If ARMv8 had market penetration ~1.5 years ago, then I probably would have started that way. One big issue with most SOCs is the lack of publicly available data sheets for writing good drivers. That's also why I picked the imx6Q; its data sheet is very detailed.
Re:GERT: Run Go on Bare Metal ARMv7 on Monday June 19, 2017 @08:46PM (#14591483)
Hi I'm the author of GERT. The size of the ELF for the laser projector program is 2.1M so it probably will not fit on a cortex-m :(. Additionally, I don't think GERT will be as useful on a single-core SOC as it is on a multicore chip because blocking operations (like reading a UART) may literally take forever. The memory safety can certainly be useful though! I'd say just start tinkering and try it out. You can probably gut enough of the elf to get it to a few hundred kilobytes.