Hi All, I am on learning curve towards coming up with a design for creating OS abstraction Layer for one of our legacy product.Heres what I proposed my team:
Create a posix interface compliant API and inside the API have #defines to differentiate between multiple OS.
Is this approach right one?
I have a query regarding this: Every OS will have its own booting requirements in startup phase.How can OS abstraction layer handle this in a neat way?
What are the guidelines interms of design one should have in mind while creating an OS abstraction layer?
Can anyone provide me links ,tips or tutorials on creating OS Abstraction Layer?
Looking farward for your replies and Advanced thanks for the same,
Regards, s.subbarayan _________________________________________________
Modules loaded or compiled after the image is running , is poison . Make files and includes and etc etc are poison ..
They do not work . They cause flood and bloat and doc's of 100's of pages . Forth has no docs nor manuals .
You cant port s/w by flipping a s/w switch ... You must integrate everything , test it , and flash it for each CPU . No Exceptions ., no later additions ...
Linux has problems because they try to "build" a kernel using "make" files , after its compiled ! It does NOT work . Compiling does NOT work .
What does work , is to write a thin layer at the bottom of Host Forth , called Meta Forth . Thus 90% of the host Forth will be ported to target , unaltered Only the thin layer will be targets opcodes Use Forths Prims to create target assembler , and you are 90% done And it goes into the same dictionary ! When your ready , Forth builds the binary , ready to boot on target cpu .
There is no easier nor faster method to port OpSys . And its so simple to show a programmer !
Everything is simpler in Forth .