And this little idea you've described? It's exactly the kind of thing where both the fundamental issues and the specific implementation details would conspire to fuck you over hard at every single turn.
If you actually tried to implement that idea of yours, you'd fail a lot, and maybe you'd learn something, and then it would be worth writing a post about that. About what you tried, what didn't work, what worked a little bit but not really.
As is? You picked a domain where ideas are easy but implementation is hilariously hard, and then you had an idea but implemented nothing. You never tried anything and you never learned anything. The value is nil.
Would advise to first read the reverse engineering related work. Genetic programming is just a technique best used when everything else has failed :-)
If we could create a program doing all this, automatically or semi-automatically, it will be great-great because then not releasing the kernel code doesn't matter. I believe if enough effort and time is put into it, there is a good chance we could see such a thing in like 5-7 years.
After that, we might be able to target the binary blobs, the propriety firmwares. Those might have some legal issue, of course. But as long as it is used only to write a FOSS alternative, that probably won't be an issue, I think.
I think it is probably a safe assumption that the kernel binary found on Android devices is not obfuscated. Tho I probably need more research to confirm this.
Already deciding whether two finite automata decide the same (regular) language is PSPACE-complete; it's undecidable for anything that can decide arbitrary context-free languages (which C programs can clearly do).
temp0826•4mo ago
https://www.fsfla.org/ikiwiki/selibre/linux-libre/