Hi
I am currently thinking to come with some solution related to Processor Obsolescence. To start with, it's always wise to come with a document which should have abundant information and queries to solve it related to Processor Obsolescence. I think the embedded community members will appreciate in sharing some knowledge of theirs and guide me to some extents, so that I can at least move in right direction with having mamooth queries to solve it and also improve the document contents.
To solve Processor Obsolescence problem, the easy solution which comes in my mind is building a new construct called Meta Language. Here, I don't mean re-writing C or C++ HLL, but simply defining constructs which can serve the purpose in parallel to C/C++ HLL. Also, the focus is currently a single processor (probably, one from the series of m68k family) to start with. To solve this problem I don't wish to think preferably with HAL concepts.
I have also listed some queries below to brain-storm myself -
(1) Since processor obsolescence goes at processor level or architectural level, is coming of New language called Meta Language sufficient to support or choosing a operating system in parallel which can be modified at both processor and application level. Which operating system can support above things, is MINIX or Linux or any other operating systems a right answer? Note: Normally, the application software relies on the services of Operating System, the set of operating system service calls or system calls maybe considered as defining the boundary betweenthe application software and operating-system. Also, an operating-system interacts with the processor, the processor instruction set may be considered as defining the boundary between theapplication software and operating- system.
(2) When the question of Language comes, grammar is mandatory. Is grammar written for new language (ML) should have manual lexer or the lexer as available for C/C++? Should attempting to write parser for New Language Semantics would be a prudent approach?
(3) Is coming with New Language only solution for resolving Processor obsolescence? Re-writing or coming with New Language isn't a time- consuming as language-to-language translation will happen?
(4) The New language which I am thinking to write for the processor specific which has become obsolete, is considerable study required with original design of processor and recent technology update. Are the factors required to be noted - how to fill the gap?
(5) Do I need to think that the obsolete processor hardware is to be tested rigorously so that New Language implementation software could be partitioned into number of components in having well-defined interactions between them?
(6) Does New Language should take care of all instructions as defined with obsolete processor? Also, is the modified Compiler of New Language going to taken care of memory consumption and memory management for obsolete processor?
(7) Do I need to think that the New Language should have some abstract concept of having Hardware Abstraction Layer(HAL) for the obsolete processor? Or can earlier HAL if defined for the processor be used with New Language?
(8) Since applications exhibit high degree of dependency on hardware, and graphical displays fall in this category. Do the New Language be capable of manipulating graphics memory and execute graphics primitives (i.e., points, lines, circles, etc.).
(9) Is the obsolete processor working on 8-bit or 16-bit data and is the New Language taking care of indexing the data structures or locating data structures within processor memory?
(10) Do the concept of SMP on Processor Obsolescence can make to worry?
The above queries though many won't be required but thought to put in, wish to have more queries from the embedded community members, so that finally the document and it's implementation becomes more worth.
Looking forward for some help & guidance. Having reference of persons or companies or links who are already working in these areas will really be of great help too.
BR Mukesh K Srivastava