Peter Hansen wrote:

Paul Rubin wrote:

When Unix was first written, people thought implementing an OS in C
was ludicrous.  Everyone knew OS's had to be written in assembler.


Actually, when Unix was first written that belief was entirely
correct, and OSes *did* have to be written in assembler.

*nods*


That is, pure C did not have the capability to handle all that was required. I recall it taking a good decade before it became *common* to find C compilers with, for example, @interrupt support to let the compiler generate code that properly saved all registers and used RTI instead of RTS (or whatever it might have been called one one's particular flavour of CPU).

If my memory serves me, you are entirely correct.


Now, once you added a few tiny interrupt handlers, and some context switching (stack manipulation) routines, pretty much everything else *could* be done in C, but that doesn't invalidate the point.

*nods*


I think it's safe to say that none of pure C, pure Lisp, or pure Python are really capable of being used as the *sole* language to build an operating system.

*nods*


It's also safe to say that this is a largely irrelevant point. It would probably only be of academic interest to try to do something like that. Any practical attempt would not think more than twice of resorting to a little "glue" in assembler or in the form of "canned" byte sequences built by hand and stuck into the appropriate places in memory...

-Peter

Indeed indeed. Once must remain focused and ask oneself what he/she is attempting to achieve. In all likelihood, a little asm/c/python glue work won't hurt the objective, especially given that doing otherwise would entail a very _low level_ reworking of Python that would take as much and likely more effort and skill than to resort to asm/c when Python falls incapable. One could do a Python-Lisp OS w/ Lisp used for the Python incapable areas, but you would near entirely loose the benefits of Lisp in that respect--- it would have to be so low-level, could you call it Lisp? (A question someone else here posed in this thread.)


- Arich
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to