Monday 10 October 2016

Computer Science : Laws of Computing : Imitation & Emulation

"in principle any computer can be programmed to imitate the operation of any other"
 - John Von Neumann


This is an important quote, taken in context of the universal computing machine, it tells us something very fundamental, something important for the operation of a computer, for the security of computer systems and the future of computing as we move forward.

I bring this up as I had a brief chat with my boss today, in passing I was looking for something new to do in the office, it's going to be a tumultuous time in the business, and one of our which I want to be equipped, both equipped with work to do and the knowledge that I'm contributing.

My reasoning?... Well I actually quite like my employer!  As rare as that is.

However, one of the major product lines is based on quite old technology, quite an old processor.  The company is quite heavily invest in this in terms of the code base, but it also seems ideologically it is also very dependent.

Which is why the above statement came to mind, I first learned that phrase in the mid-90s when I was studying computing, and Von Neumann was still kept very much in the forefront of teaching along with others like Turing and Backus, figures who have cast long shadows over computing, but whom seem to be ignored until a documentary is released, or an anniversary comes along.

However, us true geeks, we read and learned about them thirty years ago, long before it was fashionable to do so.

And this phrase then relates directly back into my conversation today, as I pointed out we could easily; very easily; emulate the main processor in the main board of our main product, to start to port ourselves out of the evolutionary dead-end designed into the boards however many decades ago.

It would leave the current chaps with their roles, in fact with more to do, but would also bring those of us with newer ideas, ideas and knowledge about the machines which could perform this emulation into the mainstream.

My bosses reaction was to essentially say there was no way a PC could emulate the processor in our product.

Sadly, he's wrong, not only could a PC do it, easily, but there are already tools and libraries to do it!

The lesson, the basic principles of computing apply everywhere, whether you want them to, or not.

No comments:

Post a Comment